Ansible タスクの実行と管理対象ノードのサンプル
環境
RHEL8.6
概要
ansible.builtin.fail:
when: inventory_hostname == “ホスト名"
必ず 1 つのタスクをすべての管理対象ノードが実行した後に、
次のタスクの実行に移動します。タスクの実行に失敗した管理対象ノードは、
そのタスクで実行対象から除外します。
操作例
ファイル ptest.yml
サンプルコード
---
- name: Task execution and managed nodes
hosts: all
gather_facts: no
tasks:
- name: このタスクはすべての管理対象ノードによって実行されるs.
ansible.builtin.debug:
- name: Task execution fails on managed node testa.
ansible.builtin.fail:
when: inventory_hostname == "testa"
- name: This task will be performed by all remaining managed nodes.
ansible.builtin.debug:
- name: Task execution fails on managed node testb.
ansible.builtin.fail:
when: inventory_hostname == "testb"
- name: This task will be further performed by all remaining managed nodes.
ansible.builtin.debug:
実行結果
$ ansible-playbook -i hosts.yml ptest.yml