使用ARA分析Ansible運行
Ansible 運行分析工具(ARA)與 Ansible 無縫集成,可以簡單便捷的找到你所需數(shù)據(jù)的方法。
Ansible 是一個多功能平臺,它已經(jīng)成為管理服務(wù)器和服務(wù)器配置的流行平臺。如今,Ansible 大量用于通過持續(xù)集成 (CI) 進行部署和測試。
在自動化持續(xù)集成的世界中,每天都有數(shù)百個甚至數(shù)千個作業(yè)運行測試、構(gòu)建、編譯、部署等等,這并不罕見。
Ansible 運行分析 (ARA) 工具
Ansible 運行生成大量控制臺數(shù)據(jù),在 CI 的環(huán)境下跟上大量的 Ansible 輸出是具有挑戰(zhàn)性的。Ansible Run Analysis(ARA) 工具使此詳細輸出可讀并且使作業(yè)狀態(tài)和調(diào)試信息更有代表性。ARA 組織了記錄的劇本數(shù)據(jù),以便你盡可能快速和容易地搜索并找到你感興趣的內(nèi)容。
請注意,ARA 不會運行你的劇本。相反,無論在哪它都它作為回調(diào)插件與 Ansible 集成。回調(diào)插件可以在響應(yīng)事件時向 Ansible 添加新行為。它可以根據(jù) Ansible 事件執(zhí)行自定義操作,例如在主機開始執(zhí)行或任務(wù)完成時執(zhí)行。
與 AWX 和 Tower 相比,它們是控制整個工作流程的工具,具有倉庫管理、劇本執(zhí)行、編輯功能等功能,ARA 的范圍相對較窄:記錄數(shù)據(jù)并提供直觀的界面。這是一個相對簡單的程序,易于安裝和配置。
安裝
在系統(tǒng)上安裝 ARA 有兩種方法:
-
使用托管在 GitHub 帳戶 上的 Ansible 角色。克隆倉庫并:
ansible-playbook Playbook.yml
如果劇本執(zhí)行成功,你將看到:
TASK [ara : Display ara UI URL] ************************
ok: [localhost] => {}
"msg": "Access playbook records at http://YOUR_IP:9191"
注意:它從 Ansible 收集的
ansible_default_ipv4
fact 中選擇 IP 地址。如果沒有收集這些 fact,請用roles/ara/tasks/
文件夾中main.yml
文件中的 IP 替換它。 -
ARA 是一個在 GitHub 上以 Apache v2 許可證授權(quán)的開源項目。安裝說明在快速入門章節(jié)。文檔和 FAQ 可在 readthedocs.io 上找到。
ARA 能做些什么?
下圖顯示了從瀏覽器啟動 ARA 登錄頁面:
ARA 登錄頁面
它提供了每個主機或每個 playbook 的任務(wù)結(jié)果摘要:
ARA 顯示任務(wù)摘要
它允許你通過劇本,play,主機、任務(wù)或狀態(tài)來過濾任務(wù)結(jié)果:
通過主機過濾劇本運行
借助 ARA,你可以在摘要視圖中輕松查看你感興趣的結(jié)果,無論是特定的主機還是特定的任務(wù):
每項任務(wù)的詳細摘要
ARA 支持在同一數(shù)據(jù)庫中記錄和查看多個運行。
顯示收集的 fact
總結(jié)
ARA 是一個已經(jīng)幫助我從 Ansible 運行日志和輸出中了解更多的有用資源。我強烈推薦給所有的 Ansible 使用者。