[DevOps] Mac 上安裝 Ansible 部署工具

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 的更新,想必使用上一定是越新越符合使用環境的。

Facebook 外掛整合


Share: