陳立秀
(重慶信息技術(shù)職業(yè)學(xué)院,重慶,404000)
在置備虛擬機(jī)時(shí),很多時(shí)候并不是隨意的選擇一個(gè)數(shù)據(jù)存儲(chǔ),把虛擬機(jī)存放在該數(shù)據(jù)存儲(chǔ)中就完畢,事實(shí)上沒(méi)那么簡(jiǎn)單!因?yàn)槟承┨摂M機(jī)上的應(yīng)用程序可能因?yàn)闃I(yè)務(wù)需求,它需求被存放到一些特定的數(shù)據(jù)存儲(chǔ)之中,這些特定的數(shù)據(jù)存儲(chǔ)可能要具備一些特定的屬性來(lái)滿足虛擬上伺服的業(yè)務(wù)和應(yīng)用程序,這些特定的特性包括了存儲(chǔ)設(shè)備的類型、功能、狀態(tài)、配置信息、容量、IOPS 速率等,暫時(shí)簡(jiǎn)稱這些特性叫存儲(chǔ)功能。由于不同物理存儲(chǔ)廠商所提供的存儲(chǔ)功能又是不同的,所以首先需要來(lái)理解虛擬化管理員如何去感知并獲得不同存儲(chǔ)廠商的存儲(chǔ)功能,以方便將存儲(chǔ)功能附加到存儲(chǔ)策略上。VMware 的VASA 則是感知并獲得存儲(chǔ)功能的一個(gè)API 接口。
VASA(vSphere APIs for Storage Awareness)叫 感知存儲(chǔ)API 接口,簡(jiǎn)單的講它就是一個(gè)通過(guò)API 注冊(cè)到時(shí)vCeneter 中的存儲(chǔ)供應(yīng)商程序,這是一個(gè)存儲(chǔ)廠商的第三方應(yīng)用程序,它主要為vSphere 提供當(dāng)前存儲(chǔ)的設(shè)備類型、狀態(tài)、配置信息、容量、置備信息、IOPS 等情況,當(dāng)然這些信息因存儲(chǔ)供應(yīng)商不同而有所差異。簡(jiǎn)而言之,它的最終目標(biāo)是讓用戶在vSphere Web Client 上查看到存儲(chǔ)的底層信息,并感知運(yùn)行狀況,從而方便用戶根據(jù)這些信息、運(yùn)行狀況及功能來(lái)部署虛擬機(jī)的存儲(chǔ)策略。注意:這個(gè)功能必須要存儲(chǔ)應(yīng)供商支持,很多情況下、VASA 以存儲(chǔ)供應(yīng)商提供的一個(gè)虛擬機(jī)的形式體現(xiàn),而且管理員需要注冊(cè)VASA 到vCenter,才能使用。
虛擬機(jī)存儲(chǔ)策略在以前被稱為虛擬機(jī)的存儲(chǔ)配置文件,它是一種由管理員制訂的用來(lái)描述虛擬機(jī)所需要的存儲(chǔ)屬性,包括了:存儲(chǔ)性能、存儲(chǔ)容量、可用性、冗余、甚至于可以是指定具體的數(shù)據(jù)存儲(chǔ)等。通過(guò)存儲(chǔ)策略來(lái)保障虛擬機(jī)可以在符合其應(yīng)用需求的數(shù)據(jù)存儲(chǔ)之上存放,而不是隨意的放置。用戶可以把存儲(chǔ)策略理解為是一種對(duì)虛擬機(jī)存儲(chǔ)需求的QOS 保障技術(shù)。虛擬機(jī)存儲(chǔ)策略是緊貼具體虛擬機(jī)的。比如:某臺(tái)虛擬機(jī)的應(yīng)用程序讀寫性能必須要在滿足一定的IOPS 速率,如果此時(shí)特定存儲(chǔ)廠商提供了VASA 程序,并且提供了IOPS 的策略參數(shù),用戶就可以將該參數(shù)列入虛擬機(jī)的存儲(chǔ)策略之中,并且讓該存儲(chǔ)策略跟隨虛擬機(jī),那么在部署這臺(tái)虛擬機(jī)到數(shù)據(jù)存儲(chǔ),或者遷移這臺(tái)虛擬機(jī)到目標(biāo)數(shù)據(jù)存儲(chǔ)時(shí),存儲(chǔ)策略將對(duì)虛擬機(jī)的存儲(chǔ)及存儲(chǔ)位置進(jìn)行合格性檢查,以保證虛擬機(jī)的運(yùn)行性能。
虛擬機(jī)的存儲(chǔ)策略可以通過(guò)兩種方式實(shí)現(xiàn):一種是基于特定供應(yīng)商的存儲(chǔ)功能來(lái)制訂策略;另一種是基于標(biāo)記來(lái)制訂存儲(chǔ)策略;當(dāng)然還可以把這兩種方式聯(lián)合起來(lái)使用。
(1)建立標(biāo)記和類別,將標(biāo)記關(guān)聯(lián)到具體的數(shù)據(jù)存儲(chǔ),這過(guò)程相當(dāng)于“染色”;
(2)建立虛擬機(jī)存儲(chǔ)策略、將標(biāo)記列入到虛擬機(jī)存儲(chǔ)策略的規(guī)則中、指定策略范圍;
(3)將存儲(chǔ)策略關(guān)聯(lián)到虛擬機(jī),通過(guò)熱遷移來(lái)檢驗(yàn)虛擬機(jī)存儲(chǔ)策略,通過(guò)新建虛擬機(jī)來(lái)檢驗(yàn)虛擬機(jī)的存儲(chǔ)策略。
如圖1 所示, 兩臺(tái)ESXi 主機(jī)掛了各種基于不同來(lái)源介質(zhì)的數(shù)據(jù)存儲(chǔ),其中包括:ESXi 主機(jī)本地硬盤介質(zhì)的數(shù)據(jù)存儲(chǔ)、NFS 之上的數(shù)據(jù)存儲(chǔ)、IP-SAN 之上的數(shù)據(jù)存儲(chǔ)。當(dāng)前由于存儲(chǔ)管理員考慮到很多實(shí)踐性的生產(chǎn)因素,要求虛擬化群集ClusterA 上當(dāng)前所有的虛擬機(jī),以及后面將要新建的虛擬機(jī)必須存儲(chǔ)在一個(gè)基于IP-SAN 構(gòu)造的數(shù)據(jù)存儲(chǔ)之上,該數(shù)據(jù)存儲(chǔ)的名稱叫“Datastore-iSCSI-SAN”。因?yàn)楣芾韱T綜合評(píng)估了各個(gè)數(shù)據(jù)存儲(chǔ)的存儲(chǔ)功能和參數(shù),得出一個(gè)評(píng)估結(jié)論:Datastore-iSCSI-SAN 數(shù)據(jù)存儲(chǔ)是目標(biāo)眾多數(shù)據(jù)存儲(chǔ)中最符合生產(chǎn)需求的。現(xiàn)在的任務(wù)是要求建立一個(gè)存儲(chǔ)策略,方便管理員從眾多數(shù)據(jù)存儲(chǔ)中快速的查找并定位Datastore-iSCSI-SAN 數(shù)據(jù)存儲(chǔ),并要求將虛擬機(jī)存儲(chǔ)放在該數(shù)據(jù)存儲(chǔ)之中。
圖1 實(shí)施數(shù)據(jù)存儲(chǔ)功能與虛擬機(jī)的存儲(chǔ)策略配置的環(huán)境
第一步:建立標(biāo)記和類別,在vCenter 中導(dǎo)航到【標(biāo)記】欄目,在【項(xiàng)目】選項(xiàng)卡下,點(diǎn)擊過(guò)程新建一個(gè)標(biāo)記。然后在類別中選擇【新建類別】,然后在類別名稱中輸入“存儲(chǔ)類”,注意類別名在vCenter系統(tǒng)中必須是唯一的。然后在【基數(shù)】配置中選擇【每個(gè)對(duì)象對(duì)應(yīng)一個(gè)標(biāo)記】,在【可關(guān)聯(lián)的對(duì)象類型】中先擇【數(shù)據(jù)存儲(chǔ)】。實(shí)際上這個(gè)【可關(guān)聯(lián)的對(duì)象類型】是指當(dāng)前類別中的標(biāo)記可以分配給所有對(duì)象,還是只能分配給特定類型的受管對(duì)象(例如虛擬機(jī)或數(shù)據(jù)存儲(chǔ))。至此完成標(biāo)記和類別的建立。
第二步:將標(biāo)記關(guān)聯(lián)到具體的數(shù)據(jù)存儲(chǔ),這過(guò)程相當(dāng)于“染色”,也就是給相應(yīng)的數(shù)據(jù)存儲(chǔ)貼標(biāo)簽,具體過(guò)程如:選擇需要貼標(biāo)簽的特定數(shù)據(jù)存儲(chǔ)當(dāng)前實(shí)驗(yàn)環(huán)境中選擇Datastore-iSCSI-SAN 的數(shù)據(jù)存儲(chǔ),然后在該對(duì)象的【管理】選項(xiàng)卡下點(diǎn)擊【標(biāo)記分配】按鈕,然后在可供分配的標(biāo)記欄中選擇“必須SAN 的Tag”以完成對(duì)數(shù)據(jù)存儲(chǔ)的標(biāo)記分配。
第三步:建立虛擬機(jī)存儲(chǔ)策略,在vCenter 系統(tǒng)的【主頁(yè)】選項(xiàng)卡上點(diǎn)擊【虛擬機(jī)存儲(chǔ)策略】,來(lái)新建一個(gè)虛擬機(jī)存儲(chǔ)策略,然后開(kāi)始配置虛擬機(jī)存儲(chǔ)策略的具體內(nèi)容,首先在虛擬機(jī)存儲(chǔ)策略的名稱中輸入“必須分配給SAN 的策略”。然后進(jìn)入虛擬機(jī)存儲(chǔ)策略規(guī)劃集的創(chuàng)建,注意這個(gè)過(guò)程是重點(diǎn)。在創(chuàng)建虛擬機(jī)存儲(chǔ)策略規(guī)則集時(shí)有兩個(gè)規(guī)劃選項(xiàng):一個(gè)是【基于供應(yīng)商特定功能的規(guī)則】這個(gè)就是關(guān)于理解數(shù)據(jù)存儲(chǔ)功能與虛擬機(jī)的存儲(chǔ)策略理論中所描述的需要特定存儲(chǔ)廠商提供了VASA 程序,然后在vCenter 中注冊(cè)。然后管理員就可以使用特定供應(yīng)商所提供的存儲(chǔ)策略作為規(guī)劃集。注意在當(dāng)前環(huán)境中筆者并沒(méi)有安裝特定存儲(chǔ)供應(yīng)商的VASA 程序,所以【基于供應(yīng)商特定功能的規(guī)則】為無(wú);另一個(gè)規(guī)劃選項(xiàng)是【添加基于標(biāo)記的規(guī)則】,這個(gè)就是關(guān)于理解數(shù)據(jù)存儲(chǔ)功能與虛擬機(jī)的存儲(chǔ)策略理論中所描述的手工的通過(guò)標(biāo)記來(lái)完成存儲(chǔ)策略的配置,當(dāng)前的實(shí)施環(huán)境正在使用【添加基于標(biāo)記的規(guī)則】。然后在【添加基于標(biāo)記的規(guī)則】中的【類別】列表中選擇在第一步中新建的“存儲(chǔ)類”,然后勾選“必須SAN 的Tag”標(biāo)記。這個(gè)過(guò)程相當(dāng)于將DatastoreiSCSI-SAN 數(shù)據(jù)存儲(chǔ)列入到虛擬機(jī)存儲(chǔ)策略中。顯示數(shù)據(jù)存儲(chǔ)Datastore-iSCSI-SAN 是與策略匹配的對(duì)象。致此完成虛擬機(jī)存儲(chǔ)策略的配置。
完成上面的配置后,接下來(lái)需要在相應(yīng)的范圍啟動(dòng)虛擬機(jī)存儲(chǔ)策略,首先在vCenter 系統(tǒng)中導(dǎo)航到虛擬機(jī)存儲(chǔ)策略頁(yè)面,然后可以看到剛才所建立了虛擬機(jī)存儲(chǔ)策略-“分配給必須存SAN 的策略”請(qǐng)選中他,然后啟動(dòng)存儲(chǔ)策略。
第四步:將存儲(chǔ)策略關(guān)聯(lián)到虛擬機(jī),在Cluster 群集中選擇數(shù)據(jù)庫(kù)虛擬機(jī)DataBase,然后在該虛擬機(jī)的【虛擬硬件】選項(xiàng)卡下找到【虛擬機(jī)存儲(chǔ)策略】然后選擇“分配給必須存SAN 的策略”,此時(shí)在【虛擬機(jī)存儲(chǔ)策略合規(guī)性】檢查中會(huì)顯示“合規(guī)”,這意味著該虛擬機(jī)正是存儲(chǔ)在Datastore-iSCSI-SAN 的數(shù)據(jù)存儲(chǔ)中的。
第五步:現(xiàn)在通過(guò)對(duì)關(guān)聯(lián)存儲(chǔ)策略的虛擬機(jī)來(lái)執(zhí)行熱遷移,檢驗(yàn)虛擬機(jī)存儲(chǔ)策略的有效性,假設(shè)當(dāng)前對(duì)DataBase的虛擬機(jī)執(zhí)行計(jì)算和存儲(chǔ)的熱遷移,用戶可以發(fā)現(xiàn)計(jì)算熱遷移可以任意的發(fā)生。
第六步:接下來(lái)通過(guò)新建虛擬機(jī)的方式來(lái)驗(yàn)證虛擬機(jī)的存儲(chǔ)策略的有效性,用戶可以在Cluster 群集中新建一個(gè)虛擬機(jī),當(dāng)新建步驟執(zhí)行到【選擇存儲(chǔ)器】選項(xiàng)卡時(shí),如果在【虛擬機(jī)存儲(chǔ)策略】中選擇了“分配給必須存儲(chǔ)SAN 的策略”那么管理系統(tǒng)仍然會(huì)為用戶例舉出符合與不符合存儲(chǔ)策略兼容性的數(shù)據(jù)存儲(chǔ)。
如果以本實(shí)施環(huán)境的存儲(chǔ)策略為依據(jù),當(dāng)前存儲(chǔ)在主機(jī)本地磁盤之上的虛擬機(jī)會(huì)報(bào)告虛擬機(jī)存儲(chǔ)策略合規(guī)性檢測(cè)失敗,用戶是可以強(qiáng)制啟動(dòng)虛擬機(jī)的,但是這會(huì)帶來(lái)很多不可預(yù)計(jì)的影響,因?yàn)楣芾韱T既然訂制的存儲(chǔ)策略,肯定是因?yàn)樾枰褂肈atastore-iSCSI-SAN 這個(gè)數(shù)據(jù)存儲(chǔ)之上的相關(guān)功能特性,或者只有該數(shù)據(jù)存儲(chǔ)的容量和性能可以滿足當(dāng)前虛擬機(jī)的存儲(chǔ)業(yè)務(wù),希望解決這個(gè)問(wèn)題很簡(jiǎn)單:將當(dāng)前虛擬機(jī)執(zhí)行存儲(chǔ)熱遷移到Datastore-iSCSI-SAN 數(shù)據(jù)存儲(chǔ)之上,然后重新觸發(fā)虛擬機(jī)存儲(chǔ)策略檢測(cè),即可解決,整個(gè)解決過(guò)程虛擬機(jī)可以保持開(kāi)機(jī)狀態(tài)!