lxc-create bleibt hängen und schlägt schließlich fehl

lxc-create bleibt hängen und schlägt schließlich fehl

Ich habe versucht, einige Juju-Charms auf Linux-Containern zu platzieren, aber die Container konnten nicht gestartet werden. Um das Problem zu beheben, habe ich mich per SSH mit dem Knoten verbunden, auf dem dies passiert ist, und versucht, manuell einen LXC-Container zu erstellen, wie

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

Es macht überhaupt keine Fortschritte. Es bleibt hier schon sehr lange hängen. Nach einer wirklich langen Zeit sagt es:

ERROR: Unable to fetch GPG key from keyserver

und bleibt hängen. Schließlich gibt es nach 20-30 Minuten auf wie

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

Wo sind die Protokolldateien zum lxc-createBefehl? Wie kann ich dieses Problem beheben?

BEARBEITEN: Ich habe herausgefunden, wie man die Debug-Protokolle sieht und habe daher den folgenden Befehl ein paar Mal ausgeführt

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

test.txtenthält nur dieses

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

Aber es hängt immer noch und die Debug-Protokolle helfen nicht viel weiter.

Antwort1

Bitte fügen Sie --no-validateein Flag an, um die GPG-Validierung zu überspringen:

lxc-create -t ubuntu -n pavan -- --no-validate

Verweisenhttps://github.com/lxc/lxc/blob/master/templates/lxc-download.in#L240

Antwort2

Befinden Sie sich hinter einem Proxy? Wenn ja, können Sie Ihren Proxy in Bash einrichten. Problem folgt,

export http_proxy="http://<proxy_host>:<port>"

Antwort3

Tatsächlich verwendet Juju die Vorlage „Ubuntu-Cloud“, um ein Image zu erfassen. Der zum Erstellen der Vorlage in meinem System mit Trusty ausgeführte Befehl lautet:

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

Ich schlage vor, dass Sie so etwas ausführen und sehen, welcher Fehler auftritt.

Antwort4

Problem

Wenn Sie sich hinter einer Firewall befinden, die den Internetzugriff einschränkt, kann folgende Fehlermeldung auftreten:

$ 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

Stellen Sie über Port 80 eine Verbindung zum Schlüsselserver her:

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

Einzelheiten

Der Schlüsselserver, hkp://p80.pool.sks-keyservers.net:80, stammt aus dem lxcQuellcode:

apt source lxc
grep -ri hkp: .

Verweise

verwandte Informationen