有可能在乙個任務中,可能要做很多事情,例如建立多個使用者,安裝很多個包等,那麼就有可能用到迴圈。
重複的任務可以用下面的方式:
- name: add several users
user: name=} state=present groups=wheel
with_items:
- testuser1
- testuser2
如果你定義了乙個變數檔案建立了乙個yaml的列表,或者是在var節中,那麼可以使用以下的方式:
with_items: "}"
上面的和下面的表示為相同的含義,如下:
- name: add user testuser1
user: name=testuser1 state=present groups=wheel
- name: add user testuser2
user: name=testuser2 state=present groups=wheel
yum和apt模組在使用with_items的時候,可以減少包管理事務。
在遍歷的各項中,可以不是簡單的列表,如果是hash列表的時候,你可以使用子健,如下:
- name: add several users
user: name=} state=present groups=}
with_items:
- -
巢狀迴圈如下所示:
name: give users access to multiple databases
with_nested:
- ['alice','bob']
- ['clientdb','employeedb','providerdb']
在上面的with_items中,也可以使用以前定義的變數,如下所示:
- name:here, 'users' contains the above list of employees
with_nested:
- "}"
- ['clientdb','employeedb','providerdb']
假設存在以下變數:
---
users:
alice:
telephone:123-456-7890
bob:
name:bob bananarama
telephone:987-654-3210
**: 運維 ansible 使用
配置host檔案 etc ansible hosts test 192.168.56.11配置ssh免密登陸 ssh keygen t dsa p f ssh id dsa cat ssh id dsa.pub ssh authorized keys連通性測試 ansible all m ping ...
運維工具ansible 安裝篇
安裝ansible之後,不需要啟動或執行乙個後台程序,或是新增乙個資料庫.只要在一台電腦 可以是一台筆記本 上安裝好,就可以通過這台電腦管理一組遠端的機器.在遠端被管理的機器上,不需要安裝執行任何軟體,因此公升級ansible版本不會有太多問題 如果你已經基於ansible開發大量模組,你最好一直使...
自動化運維ansible
sever1 172.25.60.1 server2 172.25.60.2 server3 172.25.60.3 etc ansible ansible.cfg 主配置檔案,配置ansible工作特性 etc ansible hosts 主機清單 etc ansible roles 存放角色的目...