Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh

Pessoal,

Estava dando este erro, o mesmo apontado pela Naiara no mês passado, e eu percebi que rodando o comando com super usuário (sudo) ele funciona corretamente. No vídeo 1 da aula 2, aos 3min43s o Alexander executa o comando sem o sudo e funciona normalmente. Tem alguma configuração ou permissão específica para que seja possivel executar o comando sem o sudo?

2 respostas
solução!

Pessoal,

No meu caso especifico, achei a resposta no seguinte link Pelo que entendi, o linux guarda as informações de chaves para hosts conhecidos. Como estou destruindo a maquina frequentemente (vagrant destroy), ele gera uma nova chave e da este conflito em uma nova conexão. O erro completo informa isto (WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!):

claudio@ubuntu-desktop:~/alura/vagrant $ ansible-playbook provisioning.yml -i hosts

PLAY [all] *********************************************************************

TASK [Gathering Facts] *********************************************************
fatal: [192.168.50.10]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\r\n@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @\r\n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\r\nIT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!\r\nSomeone could be eavesdropping on you right now (man-in-the-middle attack)!\r\nIt is also possible that a host key has just been changed.\r\nThe fingerprint for the ECDSA key sent by the remote host is\nSHA256:YuHsa4RqD1iYJbkIq5PnOThjJEe47xK43vTOOSGYsuo.\r\nPlease contact your system administrator.\r\nAdd correct host key in /home/claudio/.ssh/known_hosts to get rid of this message.\r\nOffending ECDSA key in /home/claudio/.ssh/known_hosts:1\r\n  remove with:\r\n  ssh-keygen -f \"/home/claudio/.ssh/known_hosts\" -R 192.168.50.10\r\nECDSA host key for 192.168.50.10 has changed and you have requested strict checking.\r\nHost key verification failed.\r\n", "unreachable": true}
    to retry, use: --limit @/home/claudio/alura/vagrant/provisioning.retry

PLAY RECAP *********************************************************************
192.168.50.10              : ok=0    changed=0    unreachable=1    failed=0

Para excluir esta chave conhecida, usei o comando:

claudio@ubuntu-desktop:~/alura/vagrant $ ssh-keygen -R 192.168.50.10
# Host 192.168.50.10 found: line 1
/home/claudio/.ssh/known_hosts updated.
Original contents retained as /home/claudio/.ssh/known_hosts.old

Após este comando, consegui executar a linha do Ansible sem o sudo.

Outro ponto que pode dar erro é se a virtualização não estiver habilitada na BIOS, tem uma opção que se chama normalmente "Inter-Virtualization" (no caso de bios para processadores intel), se ele não estiver habilitado vai dar o mesmo erro.