本篇文章更新時間:2019/02/16
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知。
一介資男的 LINE 社群開站囉!歡迎入群聊聊~
如果本站內容對你有幫助,歡迎使用 BFX Pay 加密貨幣 或 新台幣 贊助支持。
Ansible 是一套自動化管理部署工具,可以像按鍵精靈定義好腳本就會自動幫你操作遠端的伺服器。
而且關鍵是: 不用先在遠端伺服器上面安裝其他套件
純粹只需要讓 Ansible 透過 SSH 連線過去管理就可以了!
如下圖,其實安裝 Ansible 的只有控制端電腦,也可以說是開發者安裝就好,伺服器主機就是回歸收到指令單純作業的功能。
安裝
Mac OS 上要安裝 Ansible 很容易,兩行指令搞定。
curl https://bootstrap.pypa.io/get-pip.py | sudo python
先更新 pip
,不然有可能會碰到過舊的版本導致安裝失敗。(這個操作會需要管理員的權限)
再來就是使用 pip 安裝 Ansible
pip install ansible
完成!
測試
預設會從 /etc/ansible/hosts
讀取一個 hosts 清單,為求彈性可以使用任意專案目錄來撰寫這個檔案(ansible_hosts.txt),範例內容如下:
xxx.xxx.xxx.xxx ansible_ssh_private_key_file=/path/to/key ansible_ssh_user=mxp_tw ansible_shell_type=bash
參數介紹可以參考:Inventory文件
一行一組 IP,後面的參數就是描述使用 SSH 連線的資訊。
撰寫好後就可以使用下方指令測試主機:
ansible all -m ping --inventory-file=ansible_hosts.txt
正確會回傳如下:
xxx.xxx.xxx.xxx | SUCCESS => {
"changed": false,
"ping": "pong"
}
結語
從 GitHub 上看這個 repo,那星星數可真是夯!不難看出是一個很棒的專案~ 中文教學也不少可以參考:「現代 IT 人一定要知道的 Ansible 自動化組態技巧」和「Ansible中文权威指南」兩個線上中文資源學習。
另外就是要記得保持 Ansible 的更新,想必使用上一定是越新越符合使用環境的。