Ansible提供一個forks的屬性,能夠設置運行並行進程數。這個值默認比較保守,只有5個並行進程。咱們能夠根據本身的機器性能以及網絡狀況來設定,不少人使用50,也有用500以上的。若是有不少機器要管理的話,能夠嘗試先增長這個值,看看效果。有三個地方能夠設置forks的數量:html
export ANSIBLE_FORKS=100
forks=100
-f 100
當機器數量比較大的時候,不免會有幾臺機器不能正常執行。這時候ansible會有提示to retry, use: --limit @/xxx/xxx.retry
,把它增長到上個命令的後面就行了。網絡
有時候執行某個任務可能須要很長的時間,在集羣規模較大的狀況下慢得讓人沒法忍受。這時能夠考慮使用異步模式。在tasks
裏增長async
的屬性,設成某個數字,好比60,意思就是這個任務最大運行時間不能超過60秒。也能夠設成0,意思是無論任務運行多久,一直等待便可。若是沒有指定async
,則默認爲同步模式。還能夠設定poll
,默認值爲10,意思就是每隔10秒輪詢查看結果。若是不須要查看結果,設爲0就行了。還能夠經過register
和async_status
設定暫時不查看結果,等須要的時候再查看。具體作法能夠參考上面的異步模式官網文檔,也能夠看翻譯的中文文檔。異步