OpenStack是一個(gè)開(kāi)源平臺(tái),可讓你構(gòu)建在商用硬件上運(yùn)行的基礎(chǔ)架構(gòu)即服務(wù)(IaaS)云。OpenStack背后的技術(shù)由一系列項(xiàng)目組成,這些項(xiàng)目為云基礎(chǔ)架構(gòu)解決方案提供了各種組件。它可以處理數(shù)據(jù)中心內(nèi)的大量存儲(chǔ)和網(wǎng)絡(luò)資源,既可以作為單獨(dú)的云,也可以作為外部的公有云。
要管理OpenStack云基礎(chǔ)架構(gòu),需要管理各個(gè)云服務(wù)的配置。OpenStack的主要優(yōu)勢(shì)在于它的水平可伸縮性,因此添加網(wǎng)絡(luò)和存儲(chǔ)可隨著時(shí)間的推移來(lái)擴(kuò)展云更加方便。
云可伸縮性的關(guān)鍵部分是建立和運(yùn)行云,并因此進(jìn)行擴(kuò)展所需的時(shí)間價(jià)值,以及降低運(yùn)營(yíng)成本。為此,需要一個(gè)集成了配置管理系統(tǒng)的自動(dòng)化部署和配置基礎(chǔ)結(jié)構(gòu)。許多開(kāi)源工具可用于安裝,管理和運(yùn)行OpenStack云。
Chef
Chef是一個(gè)自動(dòng)化框架,無(wú)論基礎(chǔ)結(jié)構(gòu)如何,它都可以輕松地將服務(wù)器和應(yīng)用程序設(shè)置到任何實(shí)際,虛擬或云中。Chef是僅專(zhuān)注于其開(kāi)發(fā)者用戶群的產(chǎn)品。
它使用Ruby作為一種編程語(yǔ)言,并包含一個(gè)可搜索的門(mén)戶,可以在其中獲取社區(qū)貢獻(xiàn)的技術(shù)。Chef自動(dòng)執(zhí)行管理配置,以確保正確且一致地配置系統(tǒng)。
Chef具有基于代理的架構(gòu),該架構(gòu)在由中央主代理領(lǐng)導(dǎo)的情況下涉及每個(gè)VM或服務(wù)器實(shí)例上的客戶端。Chef還以大量cookbook和文檔形式獲得廣泛支持。它的一些功能包括:
- 對(duì)簡(jiǎn)單的管理任務(wù)使用簡(jiǎn)單的聲明性定義。
- 配置各種基于云的SaaS服務(wù),并集成云配置API
- 它提供了一個(gè)管理本地和云資產(chǎn)的單一過(guò)程。
- 使基礎(chǔ)架構(gòu)高度靈活,可版本化和可精確測(cè)試
- 確保整個(gè)開(kāi)發(fā)生命周期中的配置一致
- 自動(dòng)糾正配置偏差
- 它由Chef開(kāi)發(fā)套件組成,該套件具有用于驗(yàn)證基礎(chǔ)架構(gòu)變更的強(qiáng)大測(cè)試工具。
Ansible
Ansible是基礎(chǔ)結(jié)構(gòu)自動(dòng)化工具,它支持配置系統(tǒng),部署軟件以及設(shè)置更高級(jí)的IT密集型任務(wù),例如在安裝更新時(shí)保持一致的部署和零停機(jī)時(shí)間。Ansible OpenStack模塊可用于管理各種云操作。
Ansible不僅僅是簡(jiǎn)單的部署。Ansible的主要目標(biāo)是簡(jiǎn)單和易用。它進(jìn)一步著重于安全性和可靠性。Ansible提供了用于設(shè)置和管理OpenStack的強(qiáng)大工具-可以配置,配置和部署應(yīng)用程序,并且可以在云之上運(yùn)行。
它基于簡(jiǎn)單的無(wú)代理架構(gòu),因此無(wú)需在安裝前配置VM或工作站。Ansible通常可以通過(guò)命令行與他們合作。它的一些功能包括:
- 它為所有配置管理問(wèn)題提供了簡(jiǎn)單的解決方案。
- 允許可靠且可重復(fù)的IT基礎(chǔ)架構(gòu)配置
- 它旨在使管理員和開(kāi)發(fā)人員易于學(xué)習(xí)。
- 為系統(tǒng)管理員提供一種控制語(yǔ)言,該語(yǔ)言使用模塊或例程在節(jié)點(diǎn)上生成各種任務(wù)最安全的遠(yuǎn)程配置管理系統(tǒng)
- 它由1300多個(gè)模塊組成,并有一個(gè)活躍的社區(qū)來(lái)支持和開(kāi)發(fā)。
Fuel
Fuel是系統(tǒng)管理員基于GUI的工具,用于設(shè)置和管理OpenStack云。Fuel是OpenStack的上游項(xiàng)目,專(zhuān)注于自動(dòng)化OpenStack和一系列第三方選項(xiàng)的部署和測(cè)試。
Fuel自動(dòng)檢測(cè)從網(wǎng)格連接的所有虛擬節(jié)點(diǎn)。它由幾個(gè)單獨(dú)的組件組成。某些組件也可以與Fuel分開(kāi)單獨(dú)使用,而無(wú)需進(jìn)行任何修改,而某些組件的調(diào)整很少。以下是其一些功能。
- 它執(zhí)行部署后檢查,還執(zhí)行測(cè)試以驗(yàn)證所部署的OpenStack云。
- 它可以啟動(dòng)和管理多個(gè)OpenStack集群
- 它包括對(duì)centos和Ubuntu的支持
- 它可以幫助系統(tǒng)管理員通過(guò)OpenStack云的GUI跟蹤實(shí)時(shí)日志。
Puppet
Puppet是一種聲明式語(yǔ)言,用于“按需編寫(xiě)多次部署”包,用于按需Openstack配置和版本管理。在客戶端/服務(wù)器設(shè)置或無(wú)服務(wù)器模式下部署Puppet,在這種模式下,客戶端會(huì)定期輪詢服務(wù)器以獲取所需的狀態(tài),并將狀態(tài)記錄傳送回服務(wù)器。
Puppet可以在整個(gè)生命周期內(nèi)計(jì)劃,升級(jí)和管理節(jié)點(diǎn)。所有模塊和配置均使用基于Ruby或Ruby本身的特定于Puppet的語(yǔ)言來(lái)制作,因此,將需要編程專(zhuān)家來(lái)擴(kuò)展系統(tǒng)管理技能。它涉及Web UI和報(bào)告工具。
Puppet Enterprise允許使用主服務(wù)器上存在的預(yù)構(gòu)建模塊對(duì)節(jié)點(diǎn)進(jìn)行實(shí)時(shí)管理。報(bào)告工具得到了全面的開(kāi)發(fā),提供了有關(guān)代理如何執(zhí)行以及進(jìn)行了哪些更改的深入詳細(xì)信息。它的一些功能包括:
- 它支持具有特定報(bào)告和合規(guī)性因素的全面自動(dòng)化。
- 它具有來(lái)自Forge的集成和模塊
- 使修補(bǔ)和更新變得輕松無(wú)憂。
- 創(chuàng)建強(qiáng)化的基準(zhǔn)配置以滿足法規(guī)標(biāo)準(zhǔn)
- 自動(dòng)化并執(zhí)行補(bǔ)丁程序管理并減少潛在的漏洞。
Compass
Compass用于OpenStack的自動(dòng)化部署和管理。它降低了復(fù)雜性,并控制了數(shù)據(jù)中心服務(wù)器管理中的各種錯(cuò)誤。它支持從裸機(jī)金屬節(jié)點(diǎn)引導(dǎo)與任何云平臺(tái)相關(guān)的服務(wù)器池。
Compass可協(xié)助系統(tǒng)管理員確定硬件,部署操作系統(tǒng)和管理程序,并提供全面的配置管理。其他一些功能如下。
- 允許通過(guò)元數(shù)據(jù)實(shí)現(xiàn)不同的配置風(fēng)格。
- 協(xié)助基礎(chǔ)架構(gòu)進(jìn)行引導(dǎo)準(zhǔn)備,并為操作員提供可編程性。
- 通過(guò)同化多個(gè)工具OpenStack集群配置來(lái)實(shí)現(xiàn)可擴(kuò)展性。
- Compass核心與其他許多工具融合在一起,用于資源發(fā)現(xiàn),操作系統(tǒng)規(guī)劃和程序包部署。