ansible被阻止等待使用服务模块的无响应服务

时间:2015-06-26 22:08:59

标签: asynchronous service state ansible ansible-playbook

我有以下剧本, 我测试了所有任务都正常工作,除非ansible试图阻止主机中的无响应服务。它长时间不停地晕厥,从来没有得到服务器的响应(没有超时,没有失败,没有任何东西)。

在这种情况下对我的async和poll或“fire and forget”方法没有用,我先尝试先做Stop,然后再做kill -9。

- hosts: '{{ hostname }}'

  become: yes

  vars_prompt:
       hostname: "Enter hostname"


  tasks:
  - name: Stop 
    service: name=some_service state=stopped pattern=some_pattern 
    register: stop_disabled_services
    ignore_errors: yes

  - name: Stop output
    debug: msg="{{ stop_disabled_services }}"

  - name: Killing process
    shell: kill -9 $(cat /opt/day/cq5/publish/crx-quickstart/conf/cq.pid) 
    register: output
    when: "stop_disabled_services | failed"

  - name: Killing output
    debug: msg="{{ output.stdout }}"
    when: "output | failed"

  - name: start
    service: name=some_service state=started
    register: start_disabled_services

  - name: Result
    debug: msg="WARNING Escalated this incident "
    when: "start_disabled_services | failed"

  - name: Result
    debug: msg="Start up complete successfully"
    when: "start_disabled_services | success"

你知道我怎么能捣蛋呢? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

我解决了。 我使用了异步方法和命令:在下一个任务中睡眠300。所以剧本等待300秒,如果没有停止,那么剧本继续并使用kill -9。 Teporal解决方案,但正在发挥作用。