vagrant up échoue quand il arrive à la partie ssh:
myterminal$ vagrant up
[default] VM already created. Booting if its not already running...
[default] Running any VM customizations...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- ssh: 22 => 2222 (adapter 1)
[default] -- db2: 30003 => 30003 (adapter 1)
[default] Cleaning previously set shared folders...
[default] Creating shared folders metadata...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] Failed to connect to VM!
Failed to connect to VM via SSH. Please verify the VM successfully booted
by looking at the VirtualBox GUI.
Puis, lorsque j'essaie par la suite d'utiliser une connexion ssh ou vagabale vagabale, ou autre, je reçois ceci:
myterminal$ vagrant reload
[default] Attempting graceful shutdown of linux...
SSH connection was refused! This usually happens if the VM failed to
boot properly. Some steps to try to fix this: First, try reloading your
VM with `vagrant reload`, since a simple restart sometimes fixes things.
If that doesn't work, destroy your VM and recreate it with a `vagrant destroy`
followed by a `vagrant up`. If that doesn't work, contact a Vagrant
maintainer (support channels listed on the website) for more assistance.
S'il vous plaît aider! Je suis vraiment perplexe.
Sincères amitiés,
Luke
J'ai vu ce problème avec ma configuration et je l'ai finalement réduit au fait que j'avais ajouté un nom au fichier hôtes locaux. Alors j'ai eu:
127.0.0.1 localhost myname myalias
Suppression de la myalias
que j'avais ajoutée et démarrage correct. Merci à @saphirlazuli pour l’indication que c’était lié au réseautage.
J'ai eu le même problème avec la boîte donnée dans le site "Mise en route" de Vagrant. Ma solution ci-dessous est pour la boîte de ce tutoriel.
Je trouve une solution ici: https://github.com/mitchellh/vagrant/issues/391
config.vm.boot_mode = :gui
vagrant up
Sudo /etc/init.d/networking restart
, dans le fichier /etc/network/interfaces
, vous devez maintenant avoir une section avec #VAGRANT-BEGIN [...]#VAGRANT-END
vagrant reload
sur la machine physiquePour moi, il s’agit d’un problème intermittent qui semble clairement lié au réseautage. J'ai trouvé des informations plus utiles dans les numéros de Vagrant GitHub # 391 et # 455 . J'ai essayé de supprimer mon réseau réservé aux hôtes uniquement dans les paramètres de VirtualBox (recommandé comme solution potentielle à l'un des problèmes de GitHub), ce qui n'a pas semblé aider.
Démarrer en mode graphique (comme décrit dans une réponse précédente) est un excellent moyen de déboguer/résoudre les problèmes. J'ai découvert que c'est parce que, pour une raison quelconque, le VM ne peut pas obtenir d'adresse IP au démarrage. Démarrer en mode graphique puis se connecter (vagabond/vagabond) et exécuter Sudo dhclient
dans le système d'exploitation invité extrairait l'adresse IP et le processus de configuration de Vagrant se terminerait avec succès.
Toujours à la recherche d'une solution permanente cependant.
J'espère que cela t'aides!
[MODIFIÉ POUR AJOUTER]: Une suggestion utile a été ajoutée à Le problème GitHub # 455 qui implique l’ajout de la configuration suivante à votre Vagrantfile
:
config.ssh.max_tries = 150
Cela fonctionne actuellement pour moi, et semble logique puisque le problème semble être lié au timeout - augmenter le nombre d'essais devrait augmenter la probabilité que le processus SSH aboutisse dans le temps. C'est un problème intermittent en premier lieu donc je vais réserver mon jugement pour un moment, mais les doigts croisés ça va marcher! Merci à karel1980 pour avoir suggéré le correctif.
Si vagrant up
échoue, je recommande ce qui suit:
config.vm.boot_mode = :gui
dans votre Vagrantfile
chef.log_level = :debug
vagrant box repackage foo
, puis vagrant import foo
et ensuite ajouter foo
dans votre Vagrantfile
)Remarque: le mode d'interface graphique peut avoir d'autres problèmes, par exemple pour moi, aucun provisioning ne fonctionne avec le vagabond 0.7.5
lorsque l'interface graphique est activée. C'est quand même bien de déboguer la boîte réelle.
Mon type de carte réseau a été défini à l'origine sur 82540EM
. Je l'ai changé en Am79C973
et maintenant Vagrant up fonctionne à chaque fois. J'ai démarré plusieurs ordinateurs virtuels, j'ai même redémarré l'hôte et cela fonctionne toujours.
La commande est:
VBoxManage modifyvm yourmachinename --nictype1 Am79C973
N'oubliez pas de reconditionner et de remettre votre boîte à Vagrant.
J'utilise Debian Squeeze 64 bits en tant qu'hôte et invités, à l'aide de VirtualBox 4.1.16 sur un ordinateur Core i7-2600.
Ma boîte d’invités ne pourrait pas démarrer correctement en raison d’un problème de disque.
J'ai forcé le VM à fermer via
VBoxManage controlvm poweroff
Ensuite, j'ai modifié ma Vagrantfile
pour inclure cette ligne:
config.vm.boot_mode =: gui
Ensuite, j'ai re-couru
vagabond
Dans l'interface graphique qui est apparue, je devais exécuter l'utilitaire de "réparation de disque".
Après avoir exécuté l'utilitaire de disque, mon VM a été démarré avec succès, puis j'ai pu exécuter vagrant ssh
.
J'ai décommenté la partie dans Vagrantfile comme ceci:
config.vm.provider :virtualbox do |vb|
# Don't boot with headless mode
vb.gui = true
# Use VBoxManage to customize the VM. For example to change memory:
# vb.customize ["modifyvm", :id, "--memory", "1024"]
end
Je l'ai sauvé et puis j'ai fait
vagrant reload
et puis les choses ont bien fonctionné. Je ne sais pas pourquoi cela a résolu le problème.
J'ai eu le même problème. Dans mon cas, l'émulation 64 bits n'était pas activée. L'activation de cette fonctionnalité dans mon bios a résolu le problème.
Si le module de noyau est déjà installé, essayez de démarrer le VM directement avec VirtualBox. Cela vous montrera toutes les erreurs de démarrage rencontrées lors du démarrage de VM. Des problèmes tels que des erreurs de système de fichiers empêchent le démon de serveur SSH de fonctionner correctement.
J'ai eu le même problème sur osx (VirtualBox 4.1.0 et Vagrant 0.8.6), et pour moi la seule aide était de:
J'ai trouvé ceci à: https://github.com/mitchellh/vagrant/issues/391 thx mikhailov.
Mon problème était que vagrant ssh
ne ferait rien du tout.
J'ai enlevé ~/.ssh/config
et le problème a été résolu. Copiez le fichier quelque part ou renommez-le si vous souhaitez le conserver.
Comme avec d’autres, j’ai utilisé l’interface graphique (je l’ai toujours pour éviter de tels problèmes)
config.vm.boot_mode = :gui
J'ai ensuite utilisé le menu VirtualBox, car les commandes ici ne fonctionnaient pas. Machine> Réinitialiser dans le menu, ssh était alors possible.
Voici une autre raison possible pour l'erreur:
[default] Waiting for VM to boot. This can take a few minutes.
[default] Failed to connect to VM!
Failed to connect to VM via SSH. Please verify the VM successfully booted
by looking at the VirtualBox GUI.
Un nom d'utilisateur peut être spécifié dans le fichier de configuration comme ceci:
config.ssh.username = "badusername"
Si ce nom d'utilisateur n'existe pas ou ne peut pas être connecté pour une raison quelconque, ni vous ni Vagrant ne pourrez SSH dans la VM. Ainsi, Vagrant "ne se connectera pas", même si le VM est en fait en cours d'exécution et fonctionne correctement.
Sous Windows 7, lancez
vagrant ssh
si vous obtenez quelque chose comme ça ...
`vagrant ssh` isn't available on the Windows platform. You are still able
to SSH into the virtual machine if you get a Windows SSH client (such as
PuTTY). The authentication information is shown below:
Host: 127.0.0.1
Port: 2222
Username: vagrant
Private key: U:/.vagrant.d/insecure_private_key
Ensuite, vous devriez utiliser quelque chose comme ça ...
ssh [email protected] -p 2222 -i /cygdrive/u/.vagrant.d/insecure_private_key
Notez que j'utilise cygwin sur ma fenêtre Windows plutôt que PuTTY.
Tapez Sudo /etc/init.d/vboxdrv setup
. Cela devrait maintenant fonctionner.
Mon problème était que dans
/etc/hosts
J'ai eu l'entrée
127.0.1.1 lucid32
alors que mon nom de boîte était lucidtest
, j'ai changé la ligne ci-dessus en
127.0.1.1 lucidtest
et cela a fonctionné.
Ce message suggère que le serveur ssh n'est pas en cours d'exécution sur la machine virtuelle. assurez-vous qu'il est installé
Sudo apt-get install openssh-server
et courir
ssh localhost
ne devrait pas donner une erreur.
Pour exclure les erreurs dans vagrant, vous devriez essayer ssh directement dans la machine virtuelle en:
ssh vagrant @ localhost -p2222
(en supposant que l'utilisateur et le transfert de port par défaut)
J'ai arrêté la machine virtuelle en cours d'exécution et créé une nouvelle basebox:
vagrant package --base "salt-master basebox" --vagrantfile ./Vagrantfile