Ansible 模擬考考題 + 考題詳解 – 安裝套件 – part 2
環境配置請參考第0章環境配置喔 ~~
Ansible 模擬考第三題,安裝套件
請寫一個 PlayBook -> install_package.yml,內容要求如下:
* 請在dev、prod、balancer群組中安裝php及mariadb套件
* 請在 dev 群組安裝 Development Tools 的 Package Group
* 請將balancer群組内的主機套件更新到最新
* 請在所有受控機器安裝及啟動firewalld 並維持開機啟動該服務
- 小技巧,考試時可以多開啟另一個終端機,準備的 ansible-doc ,隨時查閱相關參數
考題解答
- 模組使用計有: yum、 service
- 透過 ansible-doc yum 可以顯示相關 example範例(如下圖)
- 依題目撰寫Playbook ,配合 ansible-doc,即可很寫出下方手稿,相關步驟請參考註解內容
---
- name: install_package01
# 在dev、prod、balancer群組中安裝php及mariadb套件
hosts:
- dev
- prod
- balancer
tasks:
- name: install php & mariadb
yum:
name:
- php
- mariadb
state: present
- name: install_package02
# 請在 dev 群組安裝 Development Tools 的 Package Group
hosts: dev
tasks:
- name: install tools
yum:
name: '@Development Tools'
state: present
- name: install_package03
# 將balancer群組内的主機套件更新到最新
hosts: balancer
tasks:
- name: upgrader all package
yum:
name: '*'
state: latest
- name: install_package04
# 在所有受控機器安裝及啟動firewalld 並維持開機啟動該服務
hosts: all
tasks:
- name: install firewalld
yum:
name: firewalld
state: present
- name: enable firewalld
service:
name: firewalld
enabled: yes
state: started
- 執行
ansible-playbook install_package.yml -C
檢查測試playbook有沒有問題,如無出錯(如下圖),另可以執行playbook並至受控節點端驗證。