![lxc-create bleibt hängen und schlägt schließlich fehl](https://rvso.com/image/1048298/lxc-create%20bleibt%20h%C3%A4ngen%20und%20schl%C3%A4gt%20schlie%C3%9Flich%20fehl.png)
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-create
Befehl? 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.txt
enthä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-validate
ein 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 lxc
Quellcode:
apt source lxc
grep -ri hkp: .