lxc-create зависает и, наконец, не работает

Я пытался разместить некоторые чаевые на юанях в контейнерах linux, и контейнеры не запускались. Чтобы отладить проблему, я проскользнул в узел, где это произошло, и попытался создать контейнер LXC вручную, как

ubuntu@slot13:~$ sudo lxc-create -t ubuntu -n pavan
Checking cache download in /var/cache/lxc/trusty/rootfs-amd64 ...
Installing packages in template: ssh,vim,language-pack-en
Downloading ubuntu trusty minimal ...
I: Retrieving Release

. Это не делает никакого прогресса вообще. Он застрял здесь долгое время. По прошествии очень долгого времени он говорит:

ERROR: Unable to fetch GPG key from keyserver

и продолжает висеть. Наконец, через 20-30 минут он отбрасывается, как

E: Failed getting release file http://archive.ubuntu.com/ubuntu/dists/trusty/Release

. Где файлы журнала, соответствующие команде lxc-create? Как я могу отладить эту проблему?

EDIT: я выяснил, как просматривать журналы отладки и, следовательно, несколько раз запускал следующую команду

sudo lxc-create -t ubuntu -n pavan --logfile=test.txt --logpriority=DEBUG

test.txt, содержит только это

lxc-create 1414897265.204 ERROR    lxc_container - Error: pavan creation was not completed
lxc-create 1414897407.757 ERROR    lxc_container - Error: pavan creation was not completed
lxc-create 1414897407.759 WARN     lxc_log - lxc_log_init called with log already initialized

Но все же он зависает, и журналы отладки не предлагают большой помощи.

1
задан 2 November 2014 в 11:08

6 ответов

На самом деле, juju использует шаблон «ubuntu-cloud» для захвата изображения, команда, выполняемая для создания шаблона в моей системе с надежным режимом:

lxc-create -n juju-trusty-lxc-template \
  -t ubuntu-cloud \
  -f /var/lib/juju/containers/juju-trusty-lxc-template/lxc.conf \
  -- --debug \
  --userdata /var/lib/juju/containers/juju-trusty-lxc-template/cloud-init \
  --hostid juju-trusty-lxc-template
  -r trusty

Я предлагаю вам запустить что-то вроде этого и посмотрите, какая ошибка дает вам.

2
ответ дан 24 May 2018 в 02:15

Спасибо Felipe за обходной путь - для полного исправления, требуемого и для выполнения:

mkdir /var/lib/lxc/juju-trusty-lxc-template/rootfs/var/log/juju

Подробности:

выполнил lxc-create, как указано выше, элемент updateList Felipe, развертывающий любую службу был последовательно неудачным, статус juju показывает:
agent-state-info: 'container failed to start and was destroyed: jjo-local-machine-1'
найден в /var/lib/juju/containers/jjo-local-machine-5/container.log:
lxc-start 1427066682.951 ERROR    lxc_conf - conf.c:mount_entry:1711 - No such file or directory - failed to mount '/var/log/juju-jjo-local' on '/usr/lib/x86_64-linux-gnu/lxc/var/log/juju'
Создание каталога исправлено, дальнейшее развертывание ok:
 mkdir /var/lib/lxc/juju-trusty-lxc-template/rootfs/var/log/juju
2
ответ дан 24 May 2018 в 02:15

Пожалуйста, добавьте флаг --no-validate, чтобы пропустить проверку gpg. См. Https://github.com/lxc/lxc/blob/master/templates/lxc-download.in#L240

2
ответ дан 24 May 2018 в 02:15

Проблема

Если вы находитесь за брандмауэром, который ограничивает доступ в Интернет, вы можете получить эту ошибку:

$ lxc-create -t download -n my-container
Setting up the GPG keyring
ERROR: Unable to fetch GPG key from keyserver.
lxc-create: lxccontainer.c: create_run_template: 1297 container
  creation template for my-container failed
lxc-create: tools/lxc_create.c: main: 318 Error creating
  container my-container

Fix

Подключиться к клавише сервер через порт 80:

$ lxc-create -t download -n my-container \
  -- --keyserver hkp://p80.pool.sks-keyservers.net:80

Подробности

Ключевой сервер hkp://p80.pool.sks-keyservers.net:80 находится в исходном коде lxc:

apt source lxc
grep -ri hkp: .

Ссылки

Ошибка запуска Launchpad 1331920 Ошибка пусковой установки 1609479
2
ответ дан 24 May 2018 в 02:15

У меня была та же проблема. У нас есть proxyserver с неправильной реализацией http / 1.0, создающей проблемы с gpg keyserver fetch. В качестве обходного ключа ключ можно добавить вручную, выполнив следующие действия:

Получите доступ к http://keyserver.ubuntu.com и выполните поиск следующего ключа: 0xBAEFF88C22F6E216 (найдено в / usr / share / lxc / templates / lxc-download искать DOWNLOAD_KEYID). Загрузите его и сохраните в файл с именем keyfile

Теперь сохраненный файл можно добавить в системный ключ, например. используя

sudo apt-key add keyfile

Есть много способов добавить его, но с помощью ubuntu это работает. Возможно, вы также можете использовать gpg напрямую. После добавления больше нет необходимости связывать lxc с сервером ключей, и проблема была исправлена ​​для меня.

1
ответ дан 24 May 2018 в 02:15

На основании ответа здесь я узнал, что отключение IPV6 должно работать. И это сработало для меня.

answer ответ переполнения стека показывает, как это сделать.

0
ответ дан 24 May 2018 в 02:15

Другие вопросы по тегам:

Похожие вопросы: