Stworzyłem trzy węzłowe, błędne środowisko wielu maszyn i mam problemy z ssh'ingiem od jednego błędnego vm do drugiego.
Oto plik 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
Plik hosts (taki sam w każdym węźle):
$ cat /etc/hosts
172.28.128.3 master.local master
172.28.128.4 node1.local node1
172.28.128.5 node2.local node2
Mogę pingować tam iz powrotem przez cały dzień z dowolnej maszyny na drugą, ale nie mogę ssh z jednej włóczęgi vm na drugą. Typowy komunikat o błędzie to (od węzła 1 do wzorca):
[vagrant@node1.local] $ ssh vagrant@172.28.128.3
Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
SSH działa, a port jest otwarty.
Zapora nie działa.
Jestem pewien, że ma to związek z kluczami ssh. Przyznaję, że nie jestem ekspertem.
Co robię źle tutaj, ludzie?
ssh vagrant@host
i użyć równieżvagrant
jako hasła.ip a
wszystkich pól do pytania i sprawdź, czy adresy IP (172.28.128.3-5) są dostępne, gdy pola są wyłączone.Odpowiedzi:
Po Vagrant pliku rozwiązać ten problem.
Możesz uzyskać wszystkie obsługiwane pliki kluczowe wraz z tym błędnym plikiem na https://github.com/malyabee/IaaC/tree/master/ansible_lab
źródło
Zgodnie z dokumentami należy użyć:
Jeśli istnieje jeden węzeł, użyj,
vagrant ssh
aw przypadku wielu węzłów zdefiniuj nazwę lub identyfikator maszyny wirtualnej, npvagrant ssh box1
Jeśli ktoś chciałby ssh między skrzynkami, mógłby utworzyć klucz ssh i przypisać klucz prywatny do każdego ze skrzynek i dodać klucz publiczny do pliku autoryzowanych kluczy.
https://www.vagrantup.com/docs/provisioning/file.html
źródło
vagrant ssh name
w pudełku? Pytanie dotyczy połączenia przez ssh z node1.local do master.local, którzy są komputerami rozpędzonymi przez włóczęgę.Wypróbuj ten link . Musisz wykonać jedną z następujących czynności:
ssh -i <pathto/private_key> <vagrant>@<ip>
ssh -o PreferredAuthentications=password user@server-ip
(jeśli nie wyłączyłeś uwierzytelniania opartego na hasłach)źródło