虛擬機(jī)概述及配置
虛擬機(jī)技術(shù)是虛擬化技術(shù)的一種,所謂虛擬化技術(shù)就是將事物從一種形式轉(zhuǎn)變成另一種形式,最常用的虛擬化技術(shù)有操作系統(tǒng)中內(nèi)存的虛擬化,實(shí)際運(yùn)行時(shí)用戶需要的內(nèi)存空間可能遠(yuǎn)遠(yuǎn)大于物理機(jī)器的內(nèi)存大小,利用內(nèi)存的虛擬化技術(shù),用戶可以將一部分硬盤虛擬化為內(nèi)存,而這對(duì)用戶是透明的。又如,可以利用虛擬專用網(wǎng)技術(shù)(VPN)在公共網(wǎng)絡(luò)中虛擬化一條安全,穩(wěn)定的“隧道”,用戶感覺(jué)像是使用私有網(wǎng)絡(luò)一樣。
虛擬系統(tǒng)通過(guò)生成現(xiàn)有操作系統(tǒng)的全新虛擬鏡像,它具有真實(shí)windows系統(tǒng)完全一樣的功能,進(jìn)入虛擬系統(tǒng)后,所有操作都是在這個(gè)全新的獨(dú)立的虛擬系統(tǒng)里面進(jìn)行,可以獨(dú)立安裝運(yùn)行軟件,保存數(shù)據(jù),擁有自己的獨(dú)立桌面,不會(huì)對(duì)真正的系統(tǒng)產(chǎn)生任何影響 ,而且具有能夠在現(xiàn)有系統(tǒng)與虛擬鏡像之間靈活切換的一類操作系統(tǒng)。
虛擬系統(tǒng)和傳統(tǒng)的虛擬機(jī)(Parallels Desktop,Vmware,VirtualBox,Virtual pc)不同在于:虛擬系統(tǒng)不會(huì)降低電腦的性能,啟動(dòng)虛擬系統(tǒng)不需要像啟動(dòng)windows系統(tǒng)那樣耗費(fèi)時(shí)間,運(yùn)行程序更加方便快捷;虛擬系統(tǒng)只能模擬和現(xiàn)有操作系統(tǒng)相同的環(huán)境,而虛擬機(jī)則可以模擬出其他種類的操作系統(tǒng);而且虛擬機(jī)需要模擬底層的硬件指令,所以在應(yīng)用程序運(yùn)行速度上比虛擬系統(tǒng)慢得多。
部署法則啟動(dòng)和停止虛擬機(jī)是使用云計(jì)算資源的例行公事。在云中部署虛擬機(jī)有兩個(gè)基本的選項(xiàng):客戶可以拷貝一個(gè)預(yù)先配置好的虛擬機(jī)鏡像(也被稱為最終版),或者他們可以按照需求裝配一個(gè)自定義的虛擬機(jī)鏡像。 [9] 要啟用一個(gè)虛擬機(jī),首先要從云目錄中選擇一個(gè)機(jī)器鏡像。當(dāng)部署一個(gè)跟Apache Web或者是Jboss應(yīng)用服務(wù)器有關(guān)的應(yīng)用時(shí),最好選擇一個(gè)預(yù)先裝好這些組件的Linux鏡像。如果你是一個(gè).NET程序員,最好選擇一個(gè)預(yù)先安裝并配置好開發(fā)工具的Windows操作系統(tǒng)。除了選擇一個(gè)安裝好必備軟件的虛擬機(jī)鏡像之外,還必須確認(rèn)這些軟件是最新的并且打過(guò)補(bǔ)丁。一旦你選擇好了鏡像,下一步就是在云中部署這個(gè)鏡像。 [9]
完成版鏡像使用最終版鏡像有幾大優(yōu)勢(shì)。最主要的是它可以保證虛擬機(jī)的一致性。此外,以一個(gè)已有的鏡像開始可以節(jié)省很多精力和時(shí)間。終端客戶不必去關(guān)心怎么安裝程序庫(kù)或者附加的包;他們可以依靠云管理員來(lái)維護(hù)最終版鏡像。 [9] 終端用戶擁有的選項(xiàng)受限是這個(gè)方法的缺陷;鏡像目錄通常會(huì)包含常用的鏡像而不是一些不常用的組件集合。對(duì)于一個(gè)專業(yè)的虛擬機(jī)鏡像,你可以選擇一個(gè)最終版并且安裝所需的組件。如果一個(gè)終端用戶經(jīng)常部署自定義的鏡像,那么他必須保留一個(gè)鏡像的副本,但是這就意味著用戶必須自己打補(bǔ)丁,從而失去了使用最終版的優(yōu)勢(shì)。 [9] 考慮專業(yè)的云中實(shí)例并不是很重要的情況:你的網(wǎng)頁(yè)應(yīng)用已經(jīng)在你配置負(fù)載均衡后的環(huán)境中運(yùn)行了幾周,如果你的應(yīng)用突然發(fā)生了中斷,你可能會(huì)考慮為負(fù)載均衡集群增加幾臺(tái)服務(wù)器。在這種情況下,你需要在集群中運(yùn)行完全相同的鏡像以保持一致性。如果你以前重做過(guò)這個(gè)鏡像,那么系統(tǒng)中就可能出現(xiàn)不同版本的組件。這種情況也會(huì)發(fā)生在一個(gè)組件在兩次部署期間發(fā)布了新版本。 [9]
按需裝配每次部署新鏡像時(shí)創(chuàng)建自定義鏡像使終端用戶可以自己安裝所需的組件。云用戶喜歡以一個(gè)基礎(chǔ)系統(tǒng)鏡像開始,然后安裝應(yīng)用程序組件(數(shù)據(jù)庫(kù),應(yīng)用服務(wù)器和web服務(wù)器)。然而,如果沒(méi)有工具的幫助,創(chuàng)建所需的云對(duì)于經(jīng)常性的部署是不切實(shí)際的。在這種情況下,應(yīng)考慮使用配置管理工具(例如Chef或者Puppet),它們?cè)试S你指定你想包含在鏡像中的組件。如果最新版本的應(yīng)用和補(bǔ)丁對(duì)于鏡像至關(guān)重要,按需裝配它們是最好的選擇。舉例來(lái)說(shuō),如果你有一份數(shù)據(jù)庫(kù)服務(wù)器的標(biāo)準(zhǔn)配置,創(chuàng)建一個(gè)Chef或者Puppet腳本來(lái)創(chuàng)建鏡像可以保證你擁有最新版本的組件。 [9] 按需裝配還有助于在多服務(wù)器中保持一致性,因?yàn)閿?shù)據(jù)庫(kù)管理員不太喜歡點(diǎn)對(duì)點(diǎn)的為一個(gè)過(guò)時(shí)的最終版鏡像打補(bǔ)丁。 [9] 兩種部署云中虛擬機(jī)方法(創(chuàng)建最終版鏡像和創(chuàng)建按需迭代鏡像)并不是相互獨(dú)立的。舉例來(lái)說(shuō),當(dāng)你需要?jiǎng)?chuàng)建一個(gè)服務(wù)器集群時(shí),你應(yīng)該建立腳本來(lái)裝配一個(gè)自定義的鏡像并使它成為最終版。首先通過(guò)配置管理工具創(chuàng)建多個(gè)虛擬機(jī)鏡像然后使用這個(gè)鏡像創(chuàng)建多個(gè)虛擬機(jī)實(shí)例。在這個(gè)場(chǎng)景中,只要你需要為集群添加新的虛擬服務(wù)器就要保留最終版鏡像。 [9] 這里并沒(méi)有單一的途徑來(lái)在云環(huán)境中裝配和部署鏡像。最終版鏡像在以一致性為主的案例中運(yùn)作良好;而裝配按需版本則可以保證你的環(huán)境中運(yùn)行著最新的組件。 [9]
私有配置行業(yè)對(duì)話已經(jīng)超越了解什么是云計(jì)算,企業(yè)IT環(huán)境中要決定如何能更好的部署它。這種演變與過(guò)去的虛擬化候選人的辯論相似——懂得如何確定物理服務(wù)器能否成為一個(gè)好的虛擬機(jī)。 [9] 1.云負(fù)荷需要什么樣的網(wǎng)絡(luò)呢?如虛擬服務(wù)器的線程、內(nèi)存的需求、網(wǎng)絡(luò)資源的總負(fù)荷、私有云中的應(yīng)用程序的消耗,這些都是極為重要的。 [9] 繁忙的網(wǎng)絡(luò)資源負(fù)荷的需求,在局域網(wǎng)中鏈接到其他服務(wù)器,這樣是不會(huì)制造出最好的云候選者。把這些負(fù)荷放入到私有云中,可能會(huì)造成帶寬或延遲等問(wèn)題,會(huì)影響云的整體性能。衡量云服務(wù)器和位于本地?cái)?shù)據(jù)中心的其他服務(wù)器的網(wǎng)絡(luò)利用率。 [9] 2、還有什么其他服務(wù)與私有云互連嗎?考慮到云負(fù)荷與其他網(wǎng)絡(luò)中的云工作量負(fù)荷之間的交流。例如,幾乎所有基于Windows的IT服務(wù)都傾向于Active Directory認(rèn)證,因?yàn)樽烂娌僮飨到y(tǒng)都是這樣做的。域控制者必須處理大量的通信,所以把它們完全轉(zhuǎn)移到云中可能是一個(gè)壞主意。 [9] 另外,服務(wù)與本地?cái)?shù)據(jù)中心的其他服務(wù)有一些交互,不太可能因?yàn)槲恢玫倪w移而受影響。延遲影響不大。查看虛擬機(jī)中的互操作,是一個(gè)好的辦法,可以找到云中就緒的資源。3、私有云中的工作負(fù)荷和其他工作負(fù)荷之間是否存在明顯的分隔(例如,“硬線”)?隔離云服務(wù)可以作為良好的云候選人和壞的之間的分隔線。孤立服務(wù),可以制造出杰出的云候選人,例如,那些服務(wù)是否位于你的DMZ中。按照設(shè)計(jì),DMZ有“硬線”環(huán)繞著它的服務(wù),尤其是防火墻中,可以把它在網(wǎng)絡(luò)和局域網(wǎng)中分隔出來(lái)。分隔意味著你可以非常容易的把所有內(nèi)容從DMZ移到云中。DMZ可以很明確的劃分,什么可以制造出優(yōu)秀的私有云候選者。結(jié)合不同云服務(wù)、DMZ服務(wù)之間的虛擬防火墻的隔離,很有可能在云中獲得成功。 [9] 4、云服務(wù)可以友好的復(fù)制嗎?一些IT服務(wù)已經(jīng)在心里開始設(shè)計(jì)復(fù)制了:設(shè)計(jì)通信是為了支持延遲、帶寬的類型,你會(huì)在局域網(wǎng)與云通信中體驗(yàn)。這些服務(wù)可能包括異地備份、服務(wù)器故障轉(zhuǎn)移、或者其他服務(wù)的協(xié)議,為不能滿足局域網(wǎng)速度的網(wǎng)絡(luò)做準(zhǔn)備。 [9] 5、如果私有云中的數(shù)據(jù)妥協(xié),你會(huì)多痛苦呢?最后的檢查,確實(shí)是早期圍繞云安全和數(shù)據(jù)所有權(quán)的關(guān)注的一個(gè)直接結(jié)果。選擇把虛擬機(jī)放到云中的時(shí)候,圍繞數(shù)據(jù)的安全、所有權(quán)和管理問(wèn)題必須是要考慮的因素,一些虛擬機(jī)和某些IT資源與數(shù)據(jù)一起工作,如果丟失或者妥協(xié),會(huì)為企業(yè)帶來(lái)明顯的痛苦。 [9] 注意,一個(gè)潛在的啟用云虛擬機(jī)的數(shù)據(jù)類型可以處理。如果丟失或者暴露,數(shù)據(jù)的價(jià)值大于遷移到云中,那么最好把虛擬機(jī)放在數(shù)據(jù)中心。為私有云選擇正確的虛擬機(jī),你要分析每一個(gè)虛擬機(jī)和服務(wù)所用的資源。你也需要檢查把這些資源移向云中的風(fēng)險(xiǎn)。有了正確的調(diào)查,就可以找到最好的資源和服務(wù),并且可以相對(duì)容易的部署到私有云中。