2016-03-12 6 views
1

Я пытаюсь использовать возможность настройки среды, которую я должен использовать. В частности, мне нужно написать задачу, которая перезагружает серверы, так что я написал эту задачу:Ansible wait_for rebooting

- name: waiting for server to come back 
    local_action: wait_for 
    host={{ ansible_hostname }} 
    port=22 
    state=started 
    delay=50 
    timeout=300 
    sudo: false 

, но задача не достигает тайм-аут, даже если серверы правильно перезапуске.

Мне было интересно, не удалось ли это из-за моей конфигурации ssh. Соединение с этими серверами осуществляется через прокси (ProxyCommand в ~/.ssh/config).


FROM VERBOSE OUTPUT 

<servername> ESTABLISH SSH CONNECTION FOR USER: username 

<servername> SSH: EXEC ssh -C -vvv -o ControlMaster=False -o Port=22 -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=username -o ConnectTimeout=10 -tt hostname 

... 

fatal: [servername -> localhost]: FAILED! => {"changed": false, "elapsed": 300, "failed": true, "invocation": {"module_args": {"connect_timeout": 5, "delay": "10", "exclude_hosts": null, "host": "hostname", "path": null, "port": "22", "search_regex": null, "state": "started", "timeout": "300"}, "module_name": "wait_for"}, "msg": "Timeout when waiting for host:22"} 

Я не знаю, если это уместно, но на выходе:

hostname != servername: hostname = foo, servername = foo.bar.com 

Я думаю, hostname=ansible_hostname то время как servername=inventory_hostname


анзибль версия: 2.0.1.0 анзибль

+0

Что ошибка? –

+0

Не могли бы вы выполнить с '-vvvv'? Я только что пробовал этот код на сервере, к которому он также обращался с ProxyCommand, и он работал нормально. –

+0

У меня есть почти такая же задача, а также использовать ProxyCommand, и это работает. Я не совсем уверен, но я считаю, что это было причиной того, что мне пришлось отключать сеансы ssh (ControlMaster). Используете ли вы сеансы ssh? – udondan

ответ

0

Это была проблема подключения. Чтобы избавиться от этой проблемы, я увеличил тайм-аут ssh.

Один простой способ сделать это, это создает ansible.cfg файл в том же каталоге анзибль скрипт и поместить внутри этого содержания:

[defaults] 
timeout = xx 

где хх мне было 30.

 Смежные вопросы

  • Нет связанных вопросов^_^