新聞中心
詳解ZStack高級功能--裸金屬服務(wù)部署實踐
作者:秦偉 2019-02-21 15:42:22
云計算 今天我們來了解一下ZStack的裸金屬,提到裸金屬服務(wù),很多人從字面上可能對其不是很了解,其實早在之前的私有云OpenStack平臺,就已經(jīng)推行了Ironic裸金屬服務(wù),而且在去年的新Rocky版本中,更是對裸金屬服務(wù)進行了加強。

一、前言
今天我們來了解一下ZStack的裸金屬,提到裸金屬服務(wù),很多人從字面上可能對其不是很了解,其實早在之前的私有云OpenStack平臺,就已經(jīng)推行了Ironic裸金屬服務(wù),而且在去年的新Rocky版本中,更是對裸金屬服務(wù)進行了加強。于此同時的ZStack在2.6.0版本,也推出裸金屬納管服務(wù)。那么這令人注目的裸金屬服務(wù)究竟是什么呢?
首先讓我們來了解一下裸金屬服務(wù)的由來,近年來由于國內(nèi)外云計算市場的快速發(fā)展,許多企業(yè)紛紛將自身業(yè)務(wù)遷至云端。不再將業(yè)務(wù)部署在自己自身的機房環(huán)境中,這樣帶來的好處就是省去了一部分的人工維護成本,轉(zhuǎn)而由第三方云供應(yīng)商來提供基礎(chǔ)環(huán)境。
而且一般來說硬件資源在很多情況下是沒有被充分利用的,比如我們?nèi)粘T谑褂米约旱碾娔X時,實質(zhì)上就是在使用它的CPU、內(nèi)存、以及在硬盤上運行的操作系統(tǒng)等。當我們查看這些資源的使用率時,通常會發(fā)現(xiàn),CPU和內(nèi)存大部分是閑置的。特別是CPU,其利用率通常不到10%。那么,有沒有可能不讓一個操作系統(tǒng)單獨控制一臺機器,而是在一臺機器上安裝多個操作系統(tǒng),并且讓它們同時地運行,把被閑置的資源利用起來呢?答案是有,相信很多人都曾經(jīng)在自己的Windows電腦上安裝VMware workstation,并且安裝了多個虛擬機,每個虛擬機都擁有自己的操作系統(tǒng),它們可以同時運行,并且不互相干擾,就實現(xiàn)了自己硬件電腦的虛擬化,可以把一臺物理服務(wù)器虛擬化為多臺虛擬服務(wù)器。所以說,這種通過管理程序(VMware workstation等)把硬件的機器、同操作系統(tǒng)分開的過程,就是虛擬化。當我們將業(yè)務(wù)運行在云端時,可以做到按需求選取最合適的規(guī)模,將資源的利用率使用到更大。這些資源不僅僅包括CPU、內(nèi)存、操作系統(tǒng),還包括網(wǎng)絡(luò),ip,安全組等。
但是,并不是所有業(yè)務(wù)都適合在云端虛擬機上運行的,比如一些高性能的計算任務(wù),如果運行在虛擬機上,就達不到在物理機上的效果。于是就需要裸金屬服務(wù),簡單來說,裸金屬服務(wù)就是為應(yīng)用提供專屬的物理服務(wù)器,保障核心應(yīng)用的高性能和穩(wěn)定性。ZStack早在2.6.0版本,在高級功能中以單獨的功能模塊形式,推出了裸金屬服務(wù)。支持自定義安裝操作系統(tǒng),并提供裸金屬主機的全生命周期管理。裸金屬服務(wù)在以下幾個方面擁有巨大優(yōu)勢:
1,高性能計算;
2,無法使用虛擬化的計算任務(wù);
3,數(shù)據(jù)庫主機;
4,單租戶、專用硬件、安全性、可靠性以及其它需求;
二、ZStack裸金屬服務(wù)概述
ZStack作為一套產(chǎn)品化創(chuàng)新開源云計算IaaS平臺,它可以為企業(yè)用戶提供私有云和混合云服務(wù),當我們在ZStack中部署裸機,用到的就是ZStack的高級功能-裸金屬服務(wù),即直接控制物理機進行硬件部署操作,我們一般熟知的虛擬機(宿主型)是通過Hypervisor來部署的。如下圖,Hypervisor是一種運行在物理服務(wù)器和操作系統(tǒng)之間的中間軟件層,可允許多個操作系統(tǒng)和應(yīng)用共享一套基礎(chǔ)物理硬件,因此也可以看作是虛擬環(huán)境中的"元"操作系統(tǒng),它可以協(xié)調(diào)訪問服務(wù)器上的所有物理設(shè)備和虛擬機,也叫虛擬機監(jiān)視器VMM(Virtual Machine Monitor)。當服務(wù)器啟動并執(zhí)行Hypervisor時,它會給每一臺虛擬機分配適量的內(nèi)存、CPU、網(wǎng)絡(luò)和磁盤,并加載所有虛擬機的客戶操作系統(tǒng)。
相比之下,裸金屬服務(wù)就是傳統(tǒng)形式,直接將OS部署在Hardware上,沒有VMM這一層的損耗,性能更加優(yōu)秀。
裸金屬服務(wù)的優(yōu)勢不言而喻,現(xiàn)在的各大公有云廠商也紛紛推出了自己的裸金屬服務(wù),作為私有云的ZStack也不甘示弱。現(xiàn)在我們暫時不考慮之后裸金屬部署后的性能優(yōu)勢,單從部署方面來說,如何像部署虛擬機一樣去部署物理機呢?
ZStack可為應(yīng)用提供專屬的物理服務(wù)器,保障核心應(yīng)用的高性能和穩(wěn)定性。它可以直接對物理機執(zhí)行節(jié)點級別管理,進行物理機節(jié)點的添加、刪除,進行電源管理,部署系統(tǒng)等操作。在完成基本的服務(wù)器上架以及相關(guān)準備工作后,(注意這里的相關(guān)準備工作,是我們是否能順利控制裸金屬設(shè)備的關(guān)鍵前提,后面會詳細介紹),管理員可在UI界面批量部署裸金屬設(shè)備,部署完成后可使用裸金屬設(shè)備創(chuàng)建裸金屬主機,支持自定義安裝操作系統(tǒng),并對裸金屬主機進行全生命周期管理。
簡單來說,我們在這里可以認為裸金屬服務(wù),就是為服務(wù)器裸機安裝相應(yīng)的操作系統(tǒng),并且獲取其配置信息,實現(xiàn)對裸金屬主機的生命周期控制,比如:開關(guān)機重啟等操作。而且對于整個操作過程而言,前提只需要服務(wù)器主機有網(wǎng)絡(luò)并且通電就可以。
三、ZStack裸金屬服務(wù)基本原理
裸金屬管理服務(wù)的基本原理是:PXE服務(wù)器提供DHCP服務(wù)和TFTP服務(wù),指示多臺裸金屬設(shè)備由PXE網(wǎng)卡啟動并分配動態(tài)IP,裸金屬設(shè)備從PXE服務(wù)器中下載相關(guān)軟件包,用于裸金屬主機的系統(tǒng)安裝。
裸金屬管理網(wǎng)絡(luò)拓撲所示:(官方)
1. 管理節(jié)點與管理網(wǎng)絡(luò)(Management Node):需提前規(guī)劃管理網(wǎng)絡(luò),要求鏡像倉庫、PXE服務(wù)器均與管理節(jié)點連通。管理節(jié)點作為安裝系統(tǒng)的物理主機,提供ZStack的UI管理、云平臺部署功能。一般是安裝ZStackiso鏡像的主機,通過前端的dashboard界面,進行圖形化管理。
2. 鏡像倉庫:也位于管理網(wǎng)絡(luò)網(wǎng)段之下,為裸機(可認為沒有安裝操作系統(tǒng)的新機器)提供多種操作系統(tǒng)鏡像文件。在ZStack中,鏡像支持本地與URL導入。
3. PXE(preboot execute environment,預(yù)啟動執(zhí)行環(huán)境),支持通過網(wǎng)絡(luò)從遠端服務(wù)器下載映像,并由此支持通過網(wǎng)絡(luò)啟動操作系統(tǒng),在啟動過程中,終端要求服務(wù)器分配IP地址,再用TFTP服務(wù)協(xié)議下載一個啟動軟件包到本機內(nèi)存中執(zhí)行,由這個啟動軟件包完成終端(客戶端)基本軟件設(shè)置,從而引導預(yù)先安裝在服務(wù)器中的終端操作系統(tǒng)。PXE可以引導多種操作系統(tǒng)。
可以概括認為ZStack的PXE服務(wù)器包含二大功能:其一就是DHCP服務(wù)(指示多臺裸金屬設(shè)備由PXE網(wǎng)卡啟動并分配動態(tài)IP),其二就是TFTP服務(wù)(裸金屬設(shè)備從PXE服務(wù)器中下載相關(guān)軟件包,用于裸金屬主機的系統(tǒng)安裝)。
4.部署網(wǎng)絡(luò),確保裸金屬設(shè)備的PXE網(wǎng)卡與PXE服務(wù)器的DHCP監(jiān)聽網(wǎng)卡通過部署網(wǎng)絡(luò)連通。可以說就是安裝操作系統(tǒng)用的,它的獨立性適用于生產(chǎn)環(huán)境(優(yōu)先獨立配置),也可以以管理網(wǎng)絡(luò)作為部署網(wǎng)絡(luò)。
5.IPMI網(wǎng)絡(luò),確保管理節(jié)點與裸金屬設(shè)備的BMC接口通過IPMI網(wǎng)絡(luò)連通。IPMI的核心是BMC,即基板管理控制器,其并不依賴于服務(wù)器的處理器、BIOS或操作系統(tǒng)來工作,是一個單獨運行的無代理管理子系統(tǒng),只要有BMC與IPMI固件(運行在ROM里的只讀程序)其便可開始工作,BMC通常是一個安裝在服務(wù)器主板上的獨立板卡。在工作時,所有的IPMI功能都是向BMC發(fā)送命令來完成的。
所以需要配置裸金屬設(shè)備IPMI并規(guī)劃IPMI網(wǎng)絡(luò):
實現(xiàn)裸金屬設(shè)備的帶外控制(通過不同的物理通道傳送管理控制信息和數(shù)據(jù)信息,兩者完全獨立,互不影響。),要求裸金屬設(shè)備配備BMC接口(現(xiàn)在一般都有),并提前為每臺裸金屬設(shè)備配置好IPMI地址、端口、用戶名和密碼。
正因為IPMI的獨立性,我們在進行裸機操作時,可以對其進行控制。當裸機安裝完成,操作系統(tǒng)正常使用時才進行數(shù)據(jù)信息處理。正如上面所說的,通過不同的物理通道傳送管理控制信息和數(shù)據(jù)信息。如下圖(來自網(wǎng)絡(luò)):IPMI接口與服務(wù)器一般網(wǎng)絡(luò)接口在不同位置。
規(guī)劃IPMI網(wǎng)絡(luò)后,管理節(jié)點與裸金屬設(shè)備的BMC接口可以通過IPMI網(wǎng)絡(luò)連通,
并且admin用戶可在之后的UI界面完成所有裸金屬設(shè)備的批量部署。
6. 其它網(wǎng)絡(luò)。
支持扁平網(wǎng)絡(luò)場景,同一個二層網(wǎng)絡(luò)上的裸金屬主機和云主機之間可互相訪問,無需通過網(wǎng)關(guān)進行路由,需提前將裸金屬設(shè)備所在的裸金屬集群掛載到相應(yīng)的二層網(wǎng)絡(luò)。
四、ZStack裸金屬服務(wù)操作流程詳解
此次操作流程,將管理節(jié)控制節(jié)點與PXE服務(wù)器部署在同一個節(jié)點,并且管理網(wǎng)絡(luò)與部署網(wǎng)絡(luò)為同一個網(wǎng)絡(luò)。如果有條件,建議在生產(chǎn)環(huán)境中依照官方拓撲圖部署。
4.1 準備工作
為保證批量部署裸金屬設(shè)備的順利進行,需提前做好以下準備工作:
1. 手動安裝管理節(jié)點,并安裝相應(yīng)許可證;即需要先安裝好ZStack環(huán)境,并保證在ZStack環(huán)境中可以使用裸金屬服務(wù)。
2. 在鏡像倉庫中準備若干ISO鏡像,用于裸金屬主機的系統(tǒng)安裝。
(此處的鏡像服務(wù)器單獨部署,鏡像BIOS模式為legacy)
3. 進入裸金屬設(shè)備BIOS啟用PXE(可以自己進入裸金屬設(shè)備BIOS開啟)
提前進入每臺裸金屬設(shè)備的BIOS,確認其連接部署網(wǎng)絡(luò)的網(wǎng)卡開啟PXE功能。對于部分機型,還需確保該PXE網(wǎng)卡為首張啟動網(wǎng)卡,或確保(啟動順位)在PXE網(wǎng)卡之前的所有網(wǎng)卡均關(guān)閉PXE功能,同時需確保裸金屬設(shè)備的啟動模式為Legacy。
4. 規(guī)劃部署網(wǎng)絡(luò);
要求PXE服務(wù)器的DHCP監(jiān)聽網(wǎng)卡是一個獨立的、有IP地址的網(wǎng)卡,對外提供穩(wěn)定的DHCP服務(wù)。
5. 配置裸金屬設(shè)備IPMI并規(guī)劃IPMI網(wǎng)絡(luò);
提前規(guī)劃IPMI網(wǎng)絡(luò),確保管理節(jié)點與裸金屬設(shè)備的BMC接口通過IPMI網(wǎng)絡(luò)連通。
這樣通過IPMI網(wǎng)絡(luò),admin就可在UI界面完成所有裸金屬設(shè)備的批量部署;并且管理節(jié)點可遠程控制裸金屬設(shè)備的開關(guān)機、網(wǎng)絡(luò)啟動、磁盤啟動等行為。
6. 其它網(wǎng)絡(luò)(可選)。
如果裸金屬主機需要與云虛擬主機進行交互的話??梢栽谝粋€扁平網(wǎng)絡(luò)下,設(shè)置二類主機互通。
準備工作完成后,admin可登錄管理節(jié)點界面(ZStack的dashboard界面),進行接下來的操作。
4.2 創(chuàng)建裸金屬集群,為裸金屬設(shè)備提供單獨的集群管理(和云主機區(qū)分開來)。
裸金屬集群可以為裸金屬設(shè)備提供單獨的集群管理。注意:一個裸金屬集群只允許掛載一個部署服務(wù)器。
創(chuàng)建界面如下圖:創(chuàng)建完成后,默認啟動。
創(chuàng)建完成如下圖:
4.3 創(chuàng)建部署服務(wù)器,為裸金屬設(shè)備提供PXE服務(wù)和控制臺代理服務(wù)。
本次與管理節(jié)點合并,但獨立部署PXE服務(wù)器,可以滿足多管理節(jié)點物理機高可用場景需求,且避免單點故障,大幅提升部署效率。然后將部署服務(wù)器掛載到裸金屬集群中。
如下圖所示:DHCP服務(wù)(為裸金屬設(shè)備由PXE網(wǎng)卡啟動并分配動態(tài)IP),TFTP服務(wù)(裸金屬設(shè)備從PXE服務(wù)器中下載相關(guān)軟件包,用于裸金屬主機的操作系統(tǒng)安裝)。
創(chuàng)建完成后如下圖所示:
同時,點擊部署服務(wù)器可看到屬性信息:
4.4 添加裸金屬設(shè)備
裸金屬設(shè)備:就是待安裝操作系統(tǒng)的裸金屬服務(wù)器,通過BMC接口以及IPMI配置進行識別。
需要填寫IPMI網(wǎng)絡(luò),這樣管理節(jié)點可遠程控制裸金屬設(shè)備的開關(guān)機、網(wǎng)絡(luò)啟動、磁盤啟動等行為。創(chuàng)建如下圖:
創(chuàng)建完成后,如下圖所示,可以看到已經(jīng)獲取到了硬件信息。
此時這里可以打開控制臺,直接跳轉(zhuǎn)至該裸金屬設(shè)備的IPMI管理界面(登錄界面),輸入之前已配置好的IPMI用戶名和IPMI密碼,即可從ZStack界面跳轉(zhuǎn)登錄。
4.5 創(chuàng)建裸金屬主機,進行自定義安裝操作系統(tǒng)。
裸金屬主機:即已安裝操作系統(tǒng)的裸金屬服務(wù)器,裸金屬設(shè)備部署完成后可用于創(chuàng)建裸金屬主機。創(chuàng)建界面如下,需要注意的是裸金屬主機創(chuàng)建完成后會自動重啟,然后根據(jù)所選鏡像開始安裝操作系統(tǒng);
創(chuàng)建過程中,裸金屬主機的狀態(tài)會暫時顯示為部署中。
這時我們需要打開控制臺,進入系統(tǒng)安裝界面,手動進行相關(guān)配置。如下圖:
部署完成后,裸金屬主機自動重啟,就緒狀態(tài)顯示為已部署。
需要注意的是,自動重啟時,主機已經(jīng)安裝好操作系統(tǒng),此時的啟動應(yīng)該從硬盤啟動,而不是之前的網(wǎng)卡啟動,可以登錄裸金屬設(shè)備的控制臺,設(shè)置一個引導設(shè)備為磁盤驅(qū)動器,確保主機從正確的地方啟動,否則有可能導致主機反復(fù)重啟。
重啟完成后,如下圖所示,主機處于正常運行狀態(tài)。
在部署服務(wù)器上,可以看到鏡像的緩存位置以及此過程中DHCP服務(wù)與TFTP服務(wù)。這里的部署服務(wù)器就相當于一個PxeServer。裸金屬主機會發(fā)送DHCP廣播請求,然后DHCP服務(wù)器向主機提供可用的IP地址并告知主機TFTP服務(wù)器的地址,之后TFTP向客戶機提供內(nèi)核,驅(qū)動及引導文件,通過TFTP獲得安裝文件,而安裝時的參數(shù)由cfg文件來提供。
安裝完成時,登錄裸金屬主機,可以看到cfg配置參數(shù)文件:
4.6 對裸金屬主機進行全生命周期管理。
總結(jié):
由上分析,ZStack裸金屬管理服務(wù)具有以下功能優(yōu)勢:首先可以為應(yīng)用提供專屬的物理服務(wù)器,保障核心應(yīng)用的高性能和穩(wěn)定性;其次在操作過程中的各個服務(wù)可以進行獨立部署,比如:PXE服務(wù)器,可滿足多管理節(jié)點物理機高可用場景需求,徹底避免DHCP沖突,由于每個裸金屬集群均可掛載獨立 的PXE服務(wù)器,避免單點故障,大幅提升部署效率,以及鏡像倉庫的獨立部署。同時管理員可在UI界面上批量添加裸金屬設(shè)備,包括:手動添加和模板文件導入兩種方式,支持批量添加IPMI地址,高效部署裸金屬集群,提升運維效率,而且支持自定義安裝操作系統(tǒng)。裸金屬主機并不是獨立的,它還支持扁平網(wǎng)絡(luò)場景,同一個二層網(wǎng)絡(luò)上的裸金屬主機和云主機之間可互相訪問,不需要通過網(wǎng)關(guān)進行路由,可以與企業(yè)自身業(yè)務(wù)緊密聯(lián)合,發(fā)揮裸金屬主機的優(yōu)勢。
借用ZStack官網(wǎng)上看到的一句話來說一下私有云裸金屬的未來:隨著虛擬機技術(shù)的日趨成熟,虛擬機所帶來的性能損耗會越來越少,一些基于性能考慮而選擇裸金屬的需要未來可能會越來越少。但在一些特殊場合,針對一些特殊設(shè)備如龍芯或其他不能虛擬化的設(shè)備中,云平臺以裸金屬形式納管這些設(shè)備一定時間內(nèi)還會長期存在。針對這種形式的裸金屬設(shè)備,提供通用的管控接口,智能調(diào)度和狀態(tài)監(jiān)控也許是未來私有云裸金屬管理方面發(fā)展的重點。
文章標題:詳解ZStack高級功能--裸金屬服務(wù)部署實踐
文章位置:http://www.5511xx.com/article/ccspsph.html


咨詢
建站咨詢
