ansible滚动重启Playbook

ansible滚动重启Playbook,ansible,Ansible,各位, 我希望在每台主机上分别重新启动一个服务,并等待用户输入,然后再继续运行到清单中的下一台主机 目前,如果您有以下情况: - name: Restart something command: service foo restart tags: - foo - name: wait pause: prompt="Make sure org.foo.FooOverload exception is not present" tags: - foo 它只会提示一次

各位, 我希望在每台主机上分别重新启动一个服务,并等待用户输入,然后再继续运行到清单中的下一台主机

目前,如果您有以下情况:

- name: Restart something
  command: service foo restart
  tags:
    - foo
- name: wait
  pause: prompt="Make sure org.foo.FooOverload exception is not present"
  tags:
    - foo
它只会提示一次,不会真正达到预期效果


在每台主机上运行重启任务之前,等待用户输入的正确ansible语法是什么?

使用playbook的
串行属性和
步骤
选项的组合

playbook.yml

- name: Do it
  hosts: myhosts
  serial: 1

  tasks:
  - shell: hostname 
使用
--step
选项调用剧本

ansible-playbook playbook.yml --step
系统将提示您输入每个主机

    Perform task: shell hostname (y/n/c): y

    Perform task: shell hostname (y/n/c):  **************************************** 
    changed: [y.y.y.y]
    Perform task: shell hostname (y/n/c): y

    Perform task: shell hostname (y/n/c):  **************************************** 
    changed: [z.z.z.z]

有关详细信息:

使用剧本的
serial
属性和
step
选项的组合

playbook.yml

- name: Do it
  hosts: myhosts
  serial: 1

  tasks:
  - shell: hostname 
使用
--step
选项调用剧本

ansible-playbook playbook.yml --step
系统将提示您输入每个主机

    Perform task: shell hostname (y/n/c): y

    Perform task: shell hostname (y/n/c):  **************************************** 
    changed: [y.y.y.y]
    Perform task: shell hostname (y/n/c): y

    Perform task: shell hostname (y/n/c):  **************************************** 
    changed: [z.z.z.z]

有关更多信息:

我接着说:

- name: Restart Datastax Agent
  tags:
    - agent
  hosts: cassandra
  sudo: yes
  serial: 1
  gather_facts: yes
  tasks:
    - name: Pause
      pause: prompt="Hit RETURN to restart datastax agent on {{ inventory_hostname }}"
    - name: Restarting Datastax Agent on {{ inventory_hostname }}
      service: name=datastax-agent state=restarted

我接着说:

- name: Restart Datastax Agent
  tags:
    - agent
  hosts: cassandra
  sudo: yes
  serial: 1
  gather_facts: yes
  tasks:
    - name: Pause
      pause: prompt="Hit RETURN to restart datastax agent on {{ inventory_hostname }}"
    - name: Restarting Datastax Agent on {{ inventory_hostname }}
      service: name=datastax-agent state=restarted

将来参考的链接:和将来参考的链接:以后如果您决定不在主机之间暂停,您必须编辑您的剧本。在我的解决方案中,不要指定
--step
选项。以后如果您决定不在主机之间暂停,您必须编辑您的剧本。在我的解决方案中,不要指定
--step
选项。