playbook 任務標籤

2022-02-14 21:04:24 字數 1756 閱讀 5013

預設情況下,ansible在執行乙個playbook時,會執行playbook中定義的所有任務,ansible的標籤(tag)功能可以給單獨任務甚至整個playbook打上標籤,然後利用這些標籤來指定要執行playbook中的個別任務,或不執行指定的任務。

1

.對乙個task下面的乙個name打乙個標籤

2.對乙個task下面的乙個name打多個標籤

3.對task下面的多個name打乙個標籤

.. ... ...

-name: config nginx server

copy:

src: /root/conf/linux.wp.com.conf

dest: /etc/nginx/conf.d/notify:

-restart_web_nginx

-get_nginx_status

when: ansible_fqdn

is match "

web*

"tags: config_web

... ... ...

-name: config nginx server

copy:

src: /root/conf/linux.wp.com.conf

dest: /etc/nginx/conf.d/notify:

-restart_web_nginx

-get_nginx_status

when: ansible_fqdn

is match "

web*

"tags:

-config_web

- config_nginx

-name: config slb server

copy:

src: /root/conf/proxy.conf

dest: /etc/nginx/conf.d

notify: restart_slb

when: ansible_fqdn == "

lb01

"tags: config_nginx

-name: config nginx server

copy:

src: /root/conf/linux.wp.com.conf

dest: /etc/nginx/conf.d/notify:

-restart_web_nginx

-get_nginx_status

when: ansible_fqdn

is match "

web*

"tags:

-config_web

- config_nginx

#檢視所有的標籤(也可以檢視該劇本有多少 hosts )

[root@m01 ~]# ansible-playbook lnmp6.yml --list-tags

#執行標籤指定的動作

[root@m01 ~]# ansible-playbook lnmp2.yml -t config_web

#執行指定多個標籤的動作

[root@m01 ~]# ansible-playbook lnmp2.yml -t config_nginx,config_web

#跳過指定的標籤動作

[root@m01 ~]# ansible-playbook lnmp2.yml --skip-tags config_nginx

Playbook環境安裝

乙個平台要想真正的發展是需要蕩平發展道路上的所有障礙,就算無法蕩平,也要給出繞過去的說明文件。這一點對playbook來說還有很長的路要走。2,技術支援太需要加強了,沒有太方便開發者提問題的地方,發郵件,到死估計都不會有人理你。不多說了,大概寫下環境搭建過程吧 1,安裝a1.vmware playe...

playbook語言結構

task 任務 使用各模組所執行的特性操作任務,比如 m user a name password variables 變數 templates 模板在定義模板後可以實現各節點對應的變數來取代,表示式自身會根據當前節點所賦值做運算,之後生成的值則賦予這個引數,用於生產不同配置的配置檔案,所以模板主要...

playbook語法基礎

呼叫playbook ansible playbook 命名.yml playbook由yaml語言編寫,遵循yaml標準 同一行中 後表示注釋 同一列表的元素表示相同距離縮排 playbook由乙個或多個play組成 play中hosts,variables,roles,tasks等物件的表示方法...