Puppet生態(tài)系統(tǒng)既有優(yōu)點(diǎn)也有缺點(diǎn)
Puppet的社區(qū)龐大,網(wǎng)絡(luò)上也有很多相關(guān)的資源。Puppet有很多模塊,如果你的部署模塊不是那么特別,那么應(yīng)該已經(jīng)有現(xiàn)成的類(lèi)似模塊,可以在其基礎(chǔ)上稍加修改來(lái)滿(mǎn)足你的需求。
Puppet客戶(hù)端機(jī)器上需要一系列Puppet的依賴(lài)。有時(shí)候這會(huì)帶來(lái)問(wèn)題。有時(shí)候Puppet代理依賴(lài)的Ruby運(yùn)行時(shí)的版本比你操作系統(tǒng)發(fā)型版軟件倉(cāng)庫(kù)中的版本更新。企業(yè)級(jí)的操作系統(tǒng)版本通常比較滯后。
Puppet配置實(shí)現(xiàn)起來(lái)可能會(huì)很復(fù)雜,測(cè)試也比較困難。
Ansible
Ansible是一個(gè)簡(jiǎn)潔的部署解決方案。
Ansible的架構(gòu)中沒(méi)有代理,它不需要像Puppet -樣在客戶(hù)端運(yùn)行一個(gè)后臺(tái)程序。相反,
Ansible服務(wù)器登錄到Ansible節(jié)點(diǎn),并且通過(guò)SSH執(zhí)行命令去安裝所需的配置。
雖然Ansible的無(wú)代理架構(gòu)確實(shí)讓事情變得簡(jiǎn)單,Ansible的節(jié)點(diǎn)上還是需要有Python解釋器的。相比Puppet在運(yùn)行代碼時(shí)依賴(lài)的Ruby版本,Ansible對(duì)于代碼運(yùn)行時(shí)依賴(lài)的Python版本更加寬容些,所以對(duì)Python的依賴(lài)在實(shí)踐中沒(méi)有帶來(lái)很大的麻煩。
想了解更多IT資訊,請(qǐng)?jiān)L問(wèn)中培偉業(yè)官網(wǎng):中培偉業(yè)