您好,登錄后才能下訂單哦!
1. playbook參數(shù)詳解:
hosts:hosts 用于指定要執(zhí)行指定任務(wù)的主機(jī)其可以是一個或多個由冒號分隔主機(jī)組。 user:root 指定遠(yuǎn)程主機(jī)上執(zhí)行任務(wù)的用戶 remote_user:root vars:變量 tasks:任務(wù) - name:描述 module:options 如:serverice name=httpd state=running shell:/sbin/setenforce 0 handlers:觸發(fā)條件 files:文件賦權(quán) template:模板
tags 用于讓用戶選擇運行或略過playbook中的部分代碼。ansible具有冪等性因此會自動跳過沒有變化的部分即便如此有些代碼為測試其確實沒有發(fā)生變化的時間依然會非常地長。
此時如果確信其沒有變化就可以通過tags跳過此些代碼片斷。
循環(huán):
循環(huán)with_items: --- - hosts: testhost user: root tasks: - name: change mod for file file: path=/tmp/{{ item }} mode=600 owner=root group=root with_items: - 1.txt - 2.txt - 3.txt
條件判斷使用handlers模塊:
--- - hosts: testhost remote_user: root tasks: - name: test copy copy: src=/tmp/1.txt dest=/tmp/2.txt notify: test handlers handlers: - name: test handlers shell: echo "111111" >> /tmp/2.txt
如果要使用handlers模塊,則需要調(diào)用notify: test handlers是handlers模塊的name,要保持一致。
從ansible主上拷貝1.txt到遠(yuǎn)程服務(wù)器2.txt,只有到copy完成了,才會執(zhí)行handlers。
條件判斷條件when:
--- - hosts: testhost remote_user: root gather_facts: True tasks: - name: use when shell: touch /tmp/when.txt when: ansible_system_vendor == "IBM"
注意變量要寫對,不能寫數(shù)組,數(shù)組的要注意.
cat /tmp/when.yml :
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。