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