Ansible 插件 之 【統(tǒng)計(jì)任務(wù)處理時(shí)間】

在做性能優(yōu)化之前首先需要做的是收集一些統(tǒng)計(jì)數(shù)據(jù),這樣才能為后面做的性能優(yōu)化提供數(shù)據(jù)支持,對(duì)比優(yōu)化前后的結(jié)果。非常不錯(cuò)的是,在 github 發(fā)現(xiàn)一個(gè) Ansible 任務(wù)計(jì)時(shí)插件“ansible-profile”,安裝這個(gè)插件后會(huì)顯示 ansible-playbook 執(zhí)行每一個(gè)任務(wù)所花費(fèi)的時(shí)間。

** 在ansible2.2版本以上,ansible自帶了/usr/lib/python2.6/site-packages/ansible/plugins/callback/profile_tasks.py文件,所以,只需在callback_whitelist開啟這個(gè)插件,從而不需要下載這個(gè)文件,就可以實(shí)現(xiàn)統(tǒng)計(jì)任務(wù)處理時(shí)間的功能。**

Github 地址:https://github.com/jlafon/ansible-profile

這個(gè)插件安裝很簡(jiǎn)單,只需要簡(jiǎn)單的三個(gè)命令即可完成安裝。在你的 playbook 文件的目錄下創(chuàng)建一個(gè)目錄,目錄名 callback_plugins 然后將下載的 profile_tasks.py 文件放到該目錄下。

cd /etc/ansible 
mkdir callback_plugins 
cd callback_plugins 
wget https://raw.githubusercontent.com/jlafon/ansible-profile/master/callback_plugins/profile_tasks.py

ansible 2.0版本需要在ansible.cfg 中加入

callback_whitelist = profile_tasks

現(xiàn)在,執(zhí)行 ansible-playbook 命令就會(huì)看到 playbook 中每個(gè) tasks 的用時(shí)情況。

Paste_Image.png

在這里,我設(shè)置了 2 個(gè) task,1 個(gè) task sleep2 秒,另 1 個(gè) task sleep4秒,在 PLAY RECAP 處會(huì)匯總所有 task 執(zhí)行消耗的時(shí)間,并按照耗費(fèi)時(shí)間排序。


更多文章請(qǐng)看 Ansible 專題文章總覽

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容