python運維 ansible迴圈

2021-09-26 15:56:50 字數 1325 閱讀 3664

有可能在乙個任務中,可能要做很多事情,例如建立多個使用者,安裝很多個包等,那麼就有可能用到迴圈。

重複的任務可以用下面的方式:

- 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 存放角色的目...