Ansible vmware_guest не может подключиться по ssh к vmware vSphere vCenter

Я пытаюсь настроить виртуальную машину с ansible. Тем не менее, ansible продолжает застрять в гостях Deploy из шаблона.

Используя -vvv, я получил следующие журналы.

При попытке войти через ssh pubkey auth:

TASK [Deploy guest from template] 

task path: /home/wilb/Development/vcenter_demo/vcenter_demo.yml:12
Using module file /usr/lib/python2.7/site-packages/ansible/modules/cloud/vmware/vmware_guest.py
<vcenter.mycompany.com> ESTABLISH SSH CONNECTION FOR USER: root
<vcenter.mycompany.com> SSH: EXEC ssh -C -o ControlMaster=auto 
  -o ControlPersist=60s -o KbdInteractiveAuthentication=no 
  -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey 
  -o PasswordAuthentication=no -o User=root -o ConnectTimeout=10 
  -o ControlPath=/home/wilb/.ansible/cp/982c3c15ab 
  vcenter.mycompany.com '/bin/sh -c '"'"'echo ~ && sleep 0'"'"''

Когда я пытаюсь использовать --ask-pass, он застревает здесь:

TASK [Deploy guest from template] *******************************************************************************************************
task path: /home/wilb/Development/vcenter_demo/vcenter_demo.yml:14
Using module file /usr/lib/python2.7/site-packages/ansible/modules/cloud/vmware/vmware_guest.py
<vcenter.mycompany.com> ESTABLISH SSH CONNECTION FOR USER: root
<vcenter.mycompany.com> SSH: EXEC sshpass -d12 ssh -C 
  -o ControlMaster=auto -o ControlPersist=60s -o User=root 
  -o ConnectTimeout=10 
  -o ControlPath=/home/wilb/.ansible/cp/982c3c15ab 
  vcenter.mycompany.com '/bin/sh -c '"'"'echo ~ && sleep 0'"'"''

Я могу войти в vCenter вручную. Однако, чтобы получить доступ к оболочке, я сначала должен набрать: "shell" в vCenter; по умолчанию это какая-то странная настраиваемая подсказка.

Как я могу получить доступ к vcenter для автоматического развертывания виртуальной машины?

система

  • Контроллер ОС: Fedora 26
  • Ansible: 2.4.1
  • vCenter: 6.5.0.1000

1 ответ

Решение

Ansible vmware_guest не может подключиться по ssh к vmware vSphere vCenter

Не должно.

Вы должны вызывать большинство "облачных" модулей с локальной машины.
Посмотрите на примеры vmware_guest: есть delegate_to: localhost везде.

Другие вопросы по тегам