/ / Chefmesser Bootstrap Vagrant VM - Verbindungsfehler - Chef, Virtualbox, Bootstrapping, Messer

Kochmesser Bootstrap Vagrant VM - Verbindungsfehler - Koch, Virtualbox, Bootstrapping, Messer

Meine Umgebung: Virtualbox, CentOs VM 6.5 mit installiertem Chefclient Ubuntu 12.04 Vagrant Box

Problem: Ich versuche es $knife boostrap vagrant.vm -x vagrant -N "target1", aber ich bekomme verschiedene Fehlermeldungen:

"Connecting to vagrant.vm"
ERROR: Network Error: getaddrinfo: Name or service not known. Check your knife configuration and network settings.

Ich habe versucht, eine Verbindung zur Vagrant VM unter Verwendung der IP 127.0.0.1 herzustellen

Error: Network error: connection refused - connect(2) for 127.0.0.1 port 22. Check your knife configuration and network settings.

Ich kann ssh als vagrant@127.0.0.1 in die Vagrant Box ohne Probleme. Das /etc/hostname hat die richtige IP und den vollqualifizierten Domänennamen der VM.

Warum kann der Messer-Boot-Strap-Befehl keine Verbindung zu meiner Vagrant VM herstellen? Wie löse ich dieses Problem?

Antworten:

2 für die Antwort № 1

Wenn Vagrant eine Maschine startet, hört sie nicht zuan Port 22 direkt am localhost; Die Maschine überwacht Port 22, aber Vagrant richtet Port-Forwarding für SSH ein, und die genauen Einzelheiten sind vom Anbieter (Virtualbox vs. VMware usw.) und den Netzwerkoptionen (Bridged, nur Host usw.) abhängig in der Vagrantfile.

Nach dir vagrant upsehen Sie eine Ausgabe, die so aussieht:

default: Fixed port collision for 22 => 2222. Now on port 2201.
default: Starting the VMware VM...
default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 192.168.21.131:22
...
default: Forwarding ports...
default: -- 22 => 2201

Nachdem die Maschine hochgefahren ist, können wir SSH direkt ausführen:

% ssh -p2201 vagrant@localhost
Warning: Permanently added "[localhost]:2201" (RSA) to the list of known hosts.
vagrant@localhost"s password:
Last login: Mon Apr 20 04:18:44 2015 from 192.168.21.1
[vagrant@localhost ~]$

Dann knife bootstrap kann mit der Port-Option durchgeführt werden, -p 2201.

Ich frage mich jedoch, warum Sie es verwenden knife bootstrap gegen eine Landstreichermaschine. Vagrant unterstützt die Verwendung von Chef direkt als Provisioner, über Chef-Solo, Chef-Client mit einem regulären Chef-Server, Chef-Null (ein In-Memory-Chef-Server, der häufig zum Testen verwendet wird) oder die Anwendung eines Kochs. Einzelheiten finden Sie in der Provisioning-Dokumentation auf der Vagrant-Site.