J'ai créé un environnement vagabond multi-machine à trois nœuds et j'ai des problèmes à passer d'un vm vagabond à un autre.
Voici le Vagrantfile:
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.define "master" do |master|
master.vm.hostname = "master.local"
master.vm.network "private_network", type: "dhcp"
end
config.vm.define "node1" do |node1|
node1.vm.hostname = "node1.local"
node1.vm.network "private_network", type: "dhcp"
end
config.vm.define "node2" do |node2|
node2.vm.hostname = "node2.local"
node2.vm.network "private_network", type: "dhcp"
end
end
Le fichier hosts (identique sur chaque nœud):
$ cat /etc/hosts
172.28.128.3 master.local master
172.28.128.4 node1.local node1
172.28.128.5 node2.local node2
Je peux aller et venir toute la journée de ping de n'importe quelle machine à l'autre mais je ne peux pas ssh d'un vm vagabond à l'autre. Le message d'erreur typique est (du nœud1 au maître):
[vagrant@node1.local] $ ssh vagrant@172.28.128.3
Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
SSH est en cours d'exécution et le port est ouvert.
Le pare-feu ne fonctionne pas.
Je suis sûr que cela a à voir avec les clés ssh. J'admets volontiers que je ne suis pas un expert.
Qu'est-ce que je fais mal ici les gens?
ssh vagrant@host
et utiliservagrant
également un mot de passe.ip a
toutes les cases à la question et vérifier si les adresses IP (172.28.128.3-5) sont disponibles lorsque les cases sont fermées.Réponses:
Le fichier Vagrant suivant résout ce problème.
Vous pouvez obtenir tous les fichiers clés de prise en charge avec ce fichier vagabond à https://github.com/malyabee/IaaC/tree/master/ansible_lab
la source
Selon les documents, il faut utiliser:
S'il n'y a qu'un seul nœud, utilisez
vagrant ssh
et en cas de nœuds multiples définissez le nom ou l'id de la VM, par exemplevagrant ssh box1
Si l'on souhaite ssh entre les boîtes, alors on pourrait créer une clé ssh et approvisionner la clé privée à chaque boîte et ajouter la clé publique au fichier authorized_keys.
https://www.vagrantup.com/docs/provisioning/file.html
la source
vagrant ssh name
dans une boîte? La question porte sur la connexion par ssh de node1.local à master.local qui sont toutes deux des machines tournées par vagabond.Essayez ce lien . Vous devez soit exécuter l'une des opérations suivantes:
ssh -i <pathto/private_key> <vagrant>@<ip>
ssh -o PreferredAuthentications=password user@server-ip
(si vous n'avez pas désactivé l'authentification par mot de passe)la source