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