《KVM虛擬化技術(shù)基礎(chǔ)與實踐》課件1第一章_第1頁
《KVM虛擬化技術(shù)基礎(chǔ)與實踐》課件1第一章_第2頁
《KVM虛擬化技術(shù)基礎(chǔ)與實踐》課件1第一章_第3頁
《KVM虛擬化技術(shù)基礎(chǔ)與實踐》課件1第一章_第4頁
《KVM虛擬化技術(shù)基礎(chǔ)與實踐》課件1第一章_第5頁
已閱讀5頁,還剩67頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

虛擬化與云計算虛擬化概述虛擬化概念分類主流虛擬化產(chǎn)品概述1第1章虛擬化與云計算1.1虛擬化概述1.1.1云計算概念及其體系結(jié)構(gòu)1、云計算的概念狹義的云計算是指IT基礎(chǔ)設(shè)施的交付和使用模式,指通過網(wǎng)絡(luò)以按需、易擴(kuò)展的方式獲得所需的IT基礎(chǔ)設(shè)施。云計算廠商通過分布式計算和虛擬化技術(shù)搭建數(shù)據(jù)中心或超級計算機(jī),以免費或按需租用的方式向技術(shù)開發(fā)者或者企業(yè)用戶提供數(shù)據(jù)存儲、分析以及科學(xué)計算等服務(wù)。廣義的云計算是指服務(wù)的交付和使用模式,指通過網(wǎng)絡(luò)以按需、易擴(kuò)展的方式獲得所需的服務(wù)。這種服務(wù)可以是與IT和軟件、互聯(lián)網(wǎng)相關(guān)的,也可以是任意其他的服務(wù),它具有超大規(guī)模、虛擬化、可靠安全等特性。廠商通過建立網(wǎng)絡(luò)服務(wù)器集群,向各種類型的客戶提供在線軟件服務(wù)、軟件租借、數(shù)據(jù)存儲、計算分析等不同類型的服務(wù)。第1章虛擬化與云計算2、云計算體系結(jié)構(gòu)按照下面的幾種方式介紹一下云計算的類別。第一種,IaaS。IaaS通過互聯(lián)網(wǎng)提供了數(shù)據(jù)中心、基礎(chǔ)架構(gòu)硬件和軟件資源。IaaS可以提供服務(wù)器、操作系統(tǒng)、磁盤存儲、數(shù)據(jù)庫和信息資源。

第二種,PaaS。PaaS提供了基礎(chǔ)架構(gòu),軟件開發(fā)者可以在這個基礎(chǔ)架構(gòu)之上建設(shè)新的應(yīng)用,或者擴(kuò)展已有的應(yīng)用,同時卻不必購買開發(fā)、質(zhì)量控制或生產(chǎn)服務(wù)器。第1章虛擬化與云計算

第三種,SaaS。SaaS是最為成熟、最出名,也是得到最廣泛應(yīng)用的一種云計算。大家可以將它理解為一種軟件分布模式,在這種模式下,應(yīng)用軟件安裝在廠商或者服務(wù)供應(yīng)商那里,用戶可以通過某個網(wǎng)絡(luò)來使用這些軟件,通常使用的網(wǎng)絡(luò)是互聯(lián)網(wǎng)。IaaS、PaaS和SaaS之間的區(qū)別并不是那么重要,因為這三種模式都是采用外包的方式來減輕企業(yè)負(fù)擔(dān),降低管理、維護(hù)服務(wù)器硬件、網(wǎng)絡(luò)硬件、基礎(chǔ)架構(gòu)軟件或應(yīng)用軟件的人力成本的。第1章虛擬化與云計算

云計算技術(shù)體系結(jié)構(gòu)分為4層:物理資源層、資源池層、管理中間件層和SOA(Service-OrientedArchitecture,面向服務(wù)的體系結(jié)構(gòu))構(gòu)建層,如圖1-1所示。

物理資源層包括計算機(jī)、存儲器、網(wǎng)絡(luò)設(shè)施、數(shù)據(jù)庫和軟件等。

資源池層是將大量相同類型的資源構(gòu)成同構(gòu)或接近同構(gòu)的資源池,如計算資源池、數(shù)據(jù)資源池等。第1章虛擬化與云計算

管理中間件層負(fù)責(zé)對云計算的資源進(jìn)行管理,包括資源管理、任務(wù)管理、用戶管理和安全管理等工作,并對眾多應(yīng)用任務(wù)進(jìn)行調(diào)度,使資源能夠高效、安全地為應(yīng)用提供服務(wù)。SOA構(gòu)建層將云計算能力封裝成標(biāo)準(zhǔn)的WebServices服務(wù),并納入到SOA體系進(jìn)行管理和使用,包括服務(wù)注冊、查找、訪問和構(gòu)建服務(wù)工作流等。管理中間件和資源池層是云計算技術(shù)的最關(guān)鍵部分,SOA構(gòu)建層的功能更多依靠外部設(shè)施提供。第1章虛擬化與云計算圖1-1云計算的體系結(jié)構(gòu)第1章虛擬化與云計算1.1.2虛擬化的基本概念

虛擬化是對資源的邏輯抽象、隔離、再分配、管理的一個過程,通常對虛擬化的理解有廣義與狹義兩種。廣義的虛擬化意味著將不存在的事物或現(xiàn)象“虛擬”成為存在的事物或現(xiàn)象的方法,計算機(jī)科學(xué)中的虛擬化包括平臺虛擬化、應(yīng)用程序虛擬化、存儲虛擬化、網(wǎng)絡(luò)虛擬化、設(shè)備虛擬化等。狹義的虛擬化專指在計算機(jī)上模擬運行多個操作系統(tǒng)平臺。第1章虛擬化與云計算一般的虛擬化的定義包括以下幾個方面:(1)虛擬的內(nèi)容是資源(包括CPU、內(nèi)存、存儲、網(wǎng)絡(luò)等);(2)虛擬出的物理資源有著統(tǒng)一的邏輯表示,而且這種邏輯表示能夠提供給用戶與被虛擬的物理資源大部分相同或完全相同的功能;(3)經(jīng)過一系列的虛擬化過程,使得資源不受物理資源的限制和約束,由此可以帶給我們與傳統(tǒng)IT相比更多的優(yōu)勢,包括資源整合、提高資源利用率、動態(tài)IT等。第1章虛擬化與云計算從計算機(jī)的不同層次觸發(fā)的虛擬化定義:圖1-2計算機(jī)的服務(wù)層級第1章虛擬化與云計算

硬件部分,硬件廠家雖然可以用各式各樣的新技術(shù)來制作先進(jìn)的產(chǎn)品,但還是得考慮到產(chǎn)品的通用性。以CPU為例,雖然各種CPU廠家都以高速低耗電為主要設(shè)計原則,但從信息行業(yè)來說,還是有幾個必須遵守的架構(gòu),如Intel架構(gòu)、PowerPC架構(gòu)等。這也是硬件廠家在設(shè)計時的較少制約。第1章虛擬化與云計算

操作系統(tǒng)的功能很復(fù)雜,主要是硬件與上層用戶的溝通。舉例來說,如果你買了一塊新的顯示適配器想要玩三維游戲,必須先安裝驅(qū)動程序才能發(fā)揮硬件的功能及效能。這時操作系統(tǒng)的用處,就是提供游戲和硬件之間溝通的管道(驅(qū)動程序),因此沒有操作系統(tǒng)的話,硬件和用戶之間是被隔離的。

第1章虛擬化與云計算

對于框架庫而言,大家都有使用IE瀏覽器的經(jīng)驗,如果你在使用IE時,只將“C:\ProgramFiles\InternetExplorer\iexplore.exe”克隆出來,再拿到另一臺電腦使用,這個IE是無法運行的。原因是這個IE在運行時,雖然有運行文件了,但還需要底層的框架提供各種功能。這些框架就是所謂的底層架構(gòu)(Framework)。這么做的好處是讓程序開發(fā)人員有一個共通的平臺,并且也能確保開發(fā)出來的軟件能在任何安裝Framework的計算機(jī)上運行。

第1章虛擬化與云計算

應(yīng)用程序就是我們所看到的單獨的軟件,如Chrome、Word等。當(dāng)我們要使用軟件時,只要運行該軟件的可執(zhí)行文件就可以。計算機(jī)中軟件的單位都是可執(zhí)行文件,再大的軟件都有一個代表性的可執(zhí)行文件。

軟件呈現(xiàn)出來的功能稱為服務(wù)。一般來說,一個現(xiàn)代的軟件服務(wù)包括了物理數(shù)據(jù)(放在數(shù)據(jù)庫系統(tǒng)中)、業(yè)務(wù)邏輯以及界面(Interface)。

第1章虛擬化與云計算1.1.3虛擬化的目的虛擬化主要針對的問題就是硬件資源效率的低落。在計算機(jī)CPU和內(nèi)存的效能及數(shù)量以摩爾定律倍數(shù)成長的同時,CPU和內(nèi)存在操作系統(tǒng)中的使用效率低落的情況反而加重。所謂的效率低落,就是無法完全發(fā)揮CPU的完整性能。虛擬化的主要目的是對IT基礎(chǔ)設(shè)施和資源管理方式的簡化,以幫助企業(yè)減少IT資源的開銷,整合資源,節(jié)約成本。

第1章虛擬化與云計算虛擬化主要解決的問題,則體現(xiàn)在以下4個方面:(1)可以在一個特定的軟硬件環(huán)境中虛擬另一個不同的軟硬件環(huán)境,并且可以打破層級依賴的現(xiàn)狀。(2)提高計算機(jī)設(shè)備的利用率??梢栽谝慌_物理服務(wù)器上同時安裝并運行多種操作系統(tǒng),從而提高物理設(shè)備的使用率。(3)在不同的物理服務(wù)器之間會存在兼容性的問題。為使不同品牌、不同硬件兼容,虛擬化可以統(tǒng)一虛擬硬件而達(dá)到使其相互融合的目的。第1章虛擬化與云計算(4)虛擬化可節(jié)約潛在成本。在硬件采購、操作系統(tǒng)許可、電力消耗、機(jī)房溫度控制和服務(wù)器機(jī)房空間等方面都可體現(xiàn)節(jié)約成本的效果,如表1-1所示。表1-1虛擬化可節(jié)約的潛在成本第1章虛擬化與云計算虛擬化在解決的問題的同時,帶來的好處包括:(1)降低成本。將硬件資源虛擬化之后,可以有效提高已有硬件的使用率,減少浪費,從而降低硬件的采購成本與運行時的能耗、管理成本。(2)增加可用性。虛擬化之前,一旦某個硬件設(shè)備崩潰或者損壞,對所提供的IT服務(wù)的影響是巨大的。(3)增加可擴(kuò)展性。應(yīng)用程序?qū)τ谟嬎阗Y源以及存儲資源的需求存在著一定的波動,將硬件進(jìn)行虛擬化后可以做到“物盡其用”,均衡各個服務(wù)器之間的負(fù)載。(4)方便管理。在將各個服務(wù)器統(tǒng)一到虛擬化平臺后,可以有效地提高管理效率,便于發(fā)現(xiàn)IT服務(wù)中的問題和瓶頸。第1章虛擬化與云計算1.1.4虛擬化與云計算的關(guān)系

云計算其實是包含了許多核心技術(shù)的概念,比如虛擬化、并行計算、分布式數(shù)據(jù)庫、分布式存儲等。其中虛擬化技術(shù)是云計算的基石,是云計算服務(wù)得以實現(xiàn)的最關(guān)鍵的技術(shù)。通過虛擬化技術(shù)可以將各種硬件、軟件、操作系統(tǒng)、存儲、網(wǎng)絡(luò)以及其他IT資源進(jìn)行虛擬化,并納入到云計算管理平臺進(jìn)行管理。這樣一來,IT能力都可以轉(zhuǎn)變?yōu)榭晒芾淼倪壿嬞Y源,通過互聯(lián)網(wǎng)可以把這些資源像水、電和天然氣一樣提供給最終用戶,以實現(xiàn)云計算的最終目標(biāo)。第1章虛擬化與云計算

云計算和虛擬化是密切相關(guān)的,但是虛擬化對于云計算來說并不是必不可少的。云計算將各種IT資源以服務(wù)的方式通過互聯(lián)網(wǎng)交付給用戶,然而虛擬化本身并不能給用戶提供自服務(wù)層。沒有自服務(wù)層,就不能提供計算服務(wù)。云計算模型允許終端用戶自行提供自己的服務(wù)器、應(yīng)用程序和包括虛擬化等其他的資源,這反過來又能使企業(yè)最大程度地處理自身的計算資源,但這仍需要系統(tǒng)管理員為終端用戶提供虛擬機(jī)。第1章虛擬化與云計算1.1.5虛擬化未來的發(fā)展前景

隨著技術(shù)的發(fā)展和市場競爭的需要,大型機(jī)上的技術(shù)開始向小型機(jī)或UNIX服務(wù)器上移植。IBM、HP和SUN后來都將虛擬化技術(shù)引入各自的高端RISC服務(wù)器系統(tǒng)中。30多年來,應(yīng)該說虛擬化技術(shù)在上述高端產(chǎn)品上的應(yīng)用已經(jīng)日臻成熟。但真正使用大型機(jī)和小型機(jī)的用戶畢竟還是少數(shù),加上各家產(chǎn)品和技術(shù)之間并不完全兼容,致使虛擬化曲高和寡。第1章虛擬化與云計算

虛擬化在當(dāng)今新的IT基礎(chǔ)架構(gòu)上產(chǎn)生新的難題包括:(1)基礎(chǔ)架構(gòu)利用率低。根據(jù)市場調(diào)研公司美國國際數(shù)據(jù)集團(tuán)(InternationalDataCorporation,IDC)的報告,典型的x86服務(wù)器部署平均達(dá)到的利用率僅為總?cè)萘康?0%到15%。(2)物理基礎(chǔ)架構(gòu)成本日益攀升。為支持不斷增長的物理基礎(chǔ)架構(gòu)而需要的運營成本穩(wěn)步攀升。大多數(shù)計算基礎(chǔ)架構(gòu)都必須時刻保持運行,因此耗電量、制冷和設(shè)施成本不隨利用率水平而變化。第1章虛擬化與云計算(3)?IT管理成本不斷攀升。隨著計算環(huán)境日益復(fù)雜,基礎(chǔ)架構(gòu)管理人員所需的專業(yè)教育水平和經(jīng)驗以及此類人員的相關(guān)成本也隨之增加。(4)故障切換和災(zāi)難保護(hù)不足。關(guān)鍵服務(wù)器應(yīng)用程序停機(jī)和關(guān)鍵最終用戶桌面不可訪問對企業(yè)組織造成的影響越來越大。安全攻擊、自然災(zāi)害、流行疾病以及恐怖主義的威脅使得對桌面和服務(wù)器進(jìn)行業(yè)務(wù)連續(xù)性規(guī)劃顯得更為重要。第1章虛擬化與云計算總的來說,虛擬化的發(fā)展經(jīng)歷了四個階段:第一個階段:是大型機(jī)上的虛擬化,就是簡單地、硬性地劃分硬件資源。第二個階段:是大型機(jī)技術(shù)開始向UNIX系統(tǒng)或類UNIX系統(tǒng)的遷移,比如IBM的AIX、SUN的Solaris等操作系統(tǒng)都帶有虛擬化的功能特性。第三個階段:是針對x86平臺的虛擬化技術(shù)的出現(xiàn),這主要是源于斯坦福大學(xué)計算機(jī)實驗室的一批教授的研究,包括VMware以及Connectix(2003年其VirtualPC部門被微軟收購)的核心技術(shù)人員都是從斯坦福出來的,開源的第1章虛擬化與云計算XEN與VMware等基本類似,主要不同之處是需要改動內(nèi)核,但都是通過軟件模擬硬件層,然后在模擬出來的硬件層上安裝完整的操作系統(tǒng),然后在操作系統(tǒng)上跑應(yīng)用。其核心思想可以用“模擬”兩個字來概括,即用軟的模擬硬的,并能實現(xiàn)異構(gòu)操作系統(tǒng)的互操作。第四個階段:是近幾年開始出現(xiàn)或者被人注意的虛擬化技術(shù),主要有芯片級的虛擬化、操作系統(tǒng)的虛擬化和應(yīng)用層的虛擬化。第1章虛擬化與云計算CPU虛擬化:VMware通過CPU虛擬化技術(shù)解決的難題是如何在一個操作系統(tǒng)實例中運行多個應(yīng)用。實現(xiàn)這一任務(wù)的困難之處在于每一個應(yīng)用都與操作系統(tǒng)之間有著密切的依賴關(guān)系。一個應(yīng)用通常只能運行于特定版本的操作系統(tǒng)和中間件之上,這就是Windows用戶常常提到的“DLL地獄”。因此,大多數(shù)用戶只能在一個Windows操作系統(tǒng)實例上運行一種應(yīng)用,操作系統(tǒng)實例獨占一臺物理服務(wù)器。第1章虛擬化與云計算內(nèi)存虛擬化:指VMware的CPU虛擬化通過時間片的方式實現(xiàn)CPU的共享,而通過虛擬化技術(shù)來共享內(nèi)存,就沒這么簡單了。VMware通過透明頁共享技術(shù)可以實現(xiàn)一定程度上的內(nèi)存共享。虛擬化層能夠識別出各操作系統(tǒng)只讀內(nèi)存區(qū)域(代碼頁)中的相同部分,這些頁面在內(nèi)存中只保留一個副本。需要強調(diào)的是,CPU時間分片是虛擬化層能夠?qū)崿F(xiàn)的,內(nèi)存卻不能按時間分片。多個應(yīng)用可以共用一個CPU,但多個應(yīng)用卻不能同時使用一段內(nèi)存區(qū)域。第1章虛擬化與云計算網(wǎng)絡(luò)虛擬化:網(wǎng)絡(luò)虛擬化吸引企業(yè)的原因在于它能夠解決工作負(fù)載配置方面存在的瓶頸問題。事實上,網(wǎng)絡(luò)虛擬化提供的更大靈活性和自動化也是吸引很多不同行業(yè)的企業(yè)的原因。正常情況下,企業(yè)可能需要兩到八周的時間啟動和運行新服務(wù)。而網(wǎng)絡(luò)虛擬化可以顯著加快這個過程,甚至可能在不到一天的時間內(nèi)完全啟用服務(wù)。網(wǎng)絡(luò)虛擬化還可以提供網(wǎng)絡(luò)安全性。第1章虛擬化與云計算存儲虛擬化:存儲虛擬化允許利用多種存儲設(shè)備來為較大的設(shè)備創(chuàng)建虛擬化鏡像,這不僅為企業(yè)和機(jī)構(gòu)創(chuàng)造了更多可使用的存儲空間,還可以提高整體可靠性,以及更好地控制存儲的數(shù)據(jù),同樣重要的是存儲虛擬化可以給企業(yè)帶來更大的靈活性。存儲虛擬化背后的主要目標(biāo)是讓存儲更容易管理,這在大數(shù)據(jù)領(lǐng)域特別重要。越來越多的公司在生成、收集和分析海量數(shù)據(jù),而通過云計算的存儲虛擬化允許多名用戶同時訪問相同的物理空間。第1章虛擬化與云計算1.2

虛擬化概念分類對虛擬化的四種分類方法:(1)從虛擬化支持的層次劃分,主要分為軟件輔助虛擬化和硬件支持的虛擬化。軟件輔助的虛擬化是指,通過軟件的方法,讓客戶機(jī)的特權(quán)指令陷入異常,從而觸發(fā)宿主機(jī)進(jìn)行虛擬化處理。主要使用的技術(shù)是優(yōu)先級壓縮和二進(jìn)制代碼翻譯。硬件輔助虛擬化是指,在CPU中加入了新的指令集和處理器運行模式,完成虛擬操作系統(tǒng)對硬件資源的直接調(diào)用。典型技術(shù)是IntelVT、AMD-V。第1章虛擬化與云計算(2)從虛擬平臺的角度來劃分,主要分為全虛擬化和半虛擬化。全虛擬化——虛擬操作系統(tǒng)與底層硬件完全隔離,由中間的Hypervisor層轉(zhuǎn)化虛擬客戶操作系統(tǒng)對底層硬件的調(diào)用代碼,全虛擬化無需更改客戶端操作系統(tǒng),兼容性好。半虛擬化——在虛擬客戶操作系統(tǒng)中加入特定的虛擬化指令,通過這些指令可以直接通過Hypervisor層調(diào)用硬件資源,免除由Hypervisor層轉(zhuǎn)換指令的性能開銷。第1章虛擬化與云計算(3)從虛擬化的實現(xiàn)結(jié)構(gòu)來看,主要分為Hypervisor型虛擬化、宿主模型虛擬化、混合模型虛擬化。Hypervisor型虛擬化是指硬件資源之上沒有操作系統(tǒng),而是直接由VMM(VirtualMachineMonitor,虛擬機(jī)監(jiān)控器)作為Hypervisor接管,負(fù)責(zé)管理所有資源和虛擬環(huán)境支持。宿主模型(Hosted模式)是在硬件資源之上有個普通的操作系統(tǒng),負(fù)責(zé)管理硬件設(shè)備?;旌夏P褪蔷C合了以上兩種實現(xiàn)模型的虛擬化技術(shù)。首先VMM直接管理硬件,但是它會讓出一部分對設(shè)備的控制權(quán),交給運行在特權(quán)虛擬機(jī)中的特權(quán)操作系統(tǒng)來管理。第1章虛擬化與云計算(4)從虛擬化在云計算中被應(yīng)用的領(lǐng)域來劃分,可分為服務(wù)器虛擬化、存儲虛擬化、應(yīng)用程序虛擬化、平臺虛擬化、桌面虛擬化。服務(wù)器虛擬化技術(shù)可以將一個物理服務(wù)器虛擬成若干個服務(wù)器使用,服務(wù)器虛擬化是基礎(chǔ)架構(gòu)即服務(wù)(InfrastructureasaService,IaaS)的基礎(chǔ)。存儲虛擬化的方式是將整個云系統(tǒng)的存儲資源進(jìn)行統(tǒng)一整合管理,為用戶提供一個統(tǒng)一的存儲空間。第1章虛擬化與云計算應(yīng)用程序虛擬化是把應(yīng)用程序?qū)Φ讓酉到y(tǒng)和硬件的依賴抽象出來,從而解除應(yīng)用程序與操作系統(tǒng)和硬件的耦合關(guān)系。平臺虛擬化是集成各種開發(fā)資源虛擬出的一個面向開發(fā)人員的統(tǒng)一接口,軟件開發(fā)人員可以方便地在這個虛擬平臺中開發(fā)各種應(yīng)用并嵌入到云計算系統(tǒng)中,使其成為新的云服務(wù)供用戶使用。桌面虛擬化將用戶的桌面環(huán)境與其使用的終端設(shè)備解耦。服務(wù)器上存放的是每個用戶的完整桌面環(huán)境。第1章虛擬化與云計算1.2.1軟件虛擬化

云計算其實是包含了許多核心技術(shù)的概念,比如虛擬化、并行計算、分布式數(shù)據(jù)庫、分布式存儲等。其中虛擬化技術(shù)是云計算的基石,是云計算服務(wù)得以實現(xiàn)的最關(guān)鍵的技術(shù)。通過虛擬化技術(shù)可以將各種硬件、軟件、操作系統(tǒng)、存儲、網(wǎng)絡(luò)以及其他IT資源進(jìn)行虛擬化,并納入到云計算管理平臺進(jìn)行管理。這樣一來,IT能力都可以轉(zhuǎn)變?yōu)榭晒芾淼倪壿嬞Y源,通過互聯(lián)網(wǎng)可以把這些資源像水、電和天然氣一樣提供給最終用戶,以實現(xiàn)云計算的最終目標(biāo)。第1章虛擬化與云計算軟件虛擬化解決方案在部署時受到較多的限制:第一個劣勢:會增加額外的開銷。在軟件虛擬化解決方案中,虛擬機(jī)監(jiān)控器是部署在操作系統(tǒng)上的。也就是說,此時對于宿主機(jī)操作系統(tǒng)來說,虛擬機(jī)監(jiān)控器跟普通的應(yīng)用程序是一樣的。第二個劣勢:客戶操作系統(tǒng)的支持受到虛擬機(jī)環(huán)境的限制。在軟件虛擬化解決方案中,其相關(guān)應(yīng)用并不能夠突破系統(tǒng)本身的硬件設(shè)置。在實際工作中,這是很致命的一個缺陷。第1章虛擬化與云計算1.2.2硬件虛擬化

現(xiàn)在比較流行的CPU虛擬化技術(shù)就是硬件虛擬化解決方案中的一個比較典型的代表,通常情況下支持虛擬化技術(shù)的CPU帶有特別優(yōu)化過的指令集來控制整個虛擬過程。同樣以x86平臺的虛擬化為例,支持虛擬化技術(shù)的x86CPU帶有特別優(yōu)化過的指令集來控制虛擬過程,通過這些指令集,Hypervisor可以很容易地就將客戶機(jī)置于一種受限制的模式下運行,一旦客戶機(jī)需要訪問真實的物理資源,硬件會暫停客戶機(jī)的運行,將控制權(quán)重新交給Hypervisor進(jìn)行處理。第1章虛擬化與云計算相比較純軟件解決方案來說,硬件虛擬化具有如下優(yōu)勢:一是性能上的優(yōu)勢,如CPU虛擬化技術(shù),其通信流量是不需要進(jìn)行轉(zhuǎn)發(fā)的。例如1.2.1小節(jié)中軟件虛擬化的例子,XP操作系統(tǒng)上的數(shù)據(jù)流是直接轉(zhuǎn)發(fā)給CPU等硬件資源,而不是通過另外一個操作系統(tǒng)來轉(zhuǎn)發(fā)。二是可以提供對64位操作系統(tǒng)的支持。在純軟件解決方案中,相關(guān)應(yīng)用仍然受到主機(jī)硬件的限制。隨著64位處理器的不斷普及,這個缺陷造成的不利影響也日益突出。第1章虛擬化與云計算1.2.3半虛擬化

半虛擬化(Para-virtualization),也叫準(zhǔn)虛擬化、類虛擬化。半虛擬化是指通過對客戶機(jī)進(jìn)行源碼級的修改,讓客戶機(jī)可以使用虛擬化的資源。由于需要修改客戶機(jī)內(nèi)核,因此半虛擬化一般都會被順便用來優(yōu)化I/O,客戶機(jī)的操作系統(tǒng)通過高度優(yōu)化的I/O協(xié)議,可以和VMM緊密結(jié)合達(dá)到近似于物理機(jī)的速度。第1章虛擬化與云計算

在半虛擬化解決方案中最經(jīng)典的產(chǎn)品就是Xen,Xen是開源半虛擬化技術(shù)的一個例子。客戶機(jī)操作系統(tǒng)在Xen的Hypervisor上運行之前,必須在內(nèi)核層面進(jìn)行某些改變,因此,Xen適用于BSD、Linux、Solaris以及其他開源操作系統(tǒng),但不太適合Windows系列的專用操作系統(tǒng),因為Windows系列不公開源代碼,無法修改其內(nèi)核。微軟的Hyper-V所采用的技術(shù)和Xen類似,因此也可以把Hyper-V歸屬于半虛擬化的范疇。第1章虛擬化與云計算半虛擬化的不足:

半虛擬化需要客戶機(jī)操作系統(tǒng)做一些修改來配合Hypervisor,這是一個不足之處,但是半虛擬化提供了與原始系統(tǒng)相近的性能,同時還能支持多個不同操作系統(tǒng)的虛擬化。圖1-4展示了在半虛擬化環(huán)境中,各客戶操作系統(tǒng)運行的虛擬平臺,以及修改后的客戶機(jī)操作系統(tǒng)在虛擬平臺上的分享進(jìn)程。第1章虛擬化與云計算第1章虛擬化與云計算圖1-4半虛擬化通過修改后的客戶機(jī)操作系統(tǒng)分享進(jìn)程半虛擬化的優(yōu)勢:和全虛擬化相比,架構(gòu)更精簡,在整體速度上有一定的優(yōu)勢。其缺點為:需要對客戶機(jī)操作系統(tǒng)進(jìn)行修改,在用戶體驗方面比較麻煩,比如對于Xen而言,如果需要將虛擬Linux操作系統(tǒng)作為客戶機(jī)操作系統(tǒng),則需要將Linux操作系統(tǒng)修改成Xen支持的內(nèi)核才能使用。第1章虛擬化與云計算1.2.4全虛擬化

全虛擬化(Full-virtualization),也叫完全虛擬化、原始虛擬化,是不同于半虛擬化的另一種虛擬化方法。全虛擬化是指VMM虛擬出來的平臺是現(xiàn)實中存在的平臺,因此對于客戶機(jī)操作系統(tǒng)來說,自己并不知道自己是運行在虛擬的平臺上。正因如此,全虛擬化中的客戶機(jī)操作系統(tǒng)是不需要做任何修改的。全虛擬化為客戶機(jī)提供了完整的虛擬x86平臺,包括處理器、內(nèi)存和外設(shè),理論上支持運行任何可在真實物理平臺上運行的操作系統(tǒng)。第1章虛擬化與云計算全虛擬化的任務(wù)工作:在客戶機(jī)操作系統(tǒng)與硬件之間捕捉和處理那些對虛擬化敏感的特權(quán)指令,使客戶機(jī)操作系統(tǒng)無需修改就能運行,當(dāng)然,速度會根據(jù)不同的實現(xiàn)環(huán)境而不同,但大致能滿足用戶的需求。這種虛擬方式是現(xiàn)今業(yè)界最成熟和最常見的,在Hosted模式和Hypervisor模式中都有這種虛擬方式。知名的產(chǎn)品有IBMCP/CMS、VirtualBox、KVM、VMwareWorkstation和VMwareESX(它在其4.0版本后被改名為VMwarevSphere)。另外Xen在3.0以上版本的時候也開始支持全虛擬化了。第1章虛擬化與云計算全虛擬化的優(yōu)缺點:全虛擬化的優(yōu)點是客戶機(jī)操作系統(tǒng)不用修改直接就可以使用。缺點就是會損失一部分性能,這些性能消耗在VMM捕獲處理特權(quán)指令上。全虛擬化的唯一限制就是操作系統(tǒng)必須能夠支持底層硬件。圖1-5顯示在全虛擬化環(huán)境中,各客戶操作系統(tǒng)使用Hypervisor分享底層硬件,自己并不知道自己運行在虛擬平臺上。第1章虛擬化與云計算第1章虛擬化與云計算圖1-5全虛擬化使用Hypervisor分享底層硬件1.3

主流虛擬化產(chǎn)品概述1.3.1KVMKVM是Kernel-basedVirtualMachine的簡稱,中文全稱為內(nèi)核虛擬機(jī),是一個開源的系統(tǒng)虛擬化模塊。KVM的虛擬化需要CPU硬件虛擬化的支持(如IntelVT技術(shù)或者AMD-V技術(shù)),是基于硬件的完全虛擬化。每個KVM虛擬機(jī)都是一個由Linux調(diào)度程序管理的標(biāo)準(zhǔn)進(jìn)程。但是僅有KVM模塊是遠(yuǎn)遠(yuǎn)不夠的,因為用戶無法直接控制內(nèi)核模塊去做事情,因此,還必須有一個用戶空間的工具才行。第1章虛擬化與云計算對于KVM的用戶空間工具,盡管QEMU工具可以創(chuàng)建和管理KVM虛擬機(jī),但是,RedHat為KVM開發(fā)了更多的輔助工具,比如libvirt、virsh、virt-manager等。原因是QEMU工具效率不高,不易于使用。libvirt是一套提供了多種語言接口的API,為各種虛擬化工具提供一套方便、可靠的編程接口,不僅支持KVM,還支持Xen等其他虛擬機(jī)。使用libvirt,只需要通過libvirt提供的函數(shù)連接到KVM或Xen宿主機(jī),便可以用同樣的命令控制不同的虛擬機(jī)了。第1章虛擬化與云計算KVM模塊是KVM虛擬機(jī)的核心部分。其主要功能包括:初始化CPU硬件,打開虛擬化模式,將虛擬客戶機(jī)運行在虛擬機(jī)模式下,并對虛擬客戶機(jī)的運行提供一定的支持。KVM的初始化過程如下:(1)初始化CPU硬件,KVM是基于硬件的虛擬化,CPU必須支持虛擬化技術(shù)。KVM會首先檢測當(dāng)前系統(tǒng)的CPU,確保CPU支持虛擬化。第1章虛擬化與云計算(2)打開CPU控制寄存器CR4中的虛擬化模式開關(guān),并通過執(zhí)行特定指令將宿主機(jī)操作系統(tǒng)置于虛擬化模式中的根模式。(3)?KVM模塊創(chuàng)建特殊設(shè)備文件/dev/kvm,并等待來自用戶空間的命令(例如,是否創(chuàng)建虛擬客戶機(jī),創(chuàng)建什么樣的虛擬客戶機(jī)等)。第1章虛擬化與云計算第1章虛擬化與云計算圖1-6KVM架構(gòu)

圖1-6是KVM的架構(gòu)圖,從圖中可以看出,在KVM架構(gòu)中,最底層是硬件系統(tǒng),其中包括處理器、內(nèi)存、輸入輸出設(shè)備等硬件。在硬件系統(tǒng)之上就是Linux操作系統(tǒng),KVM作為Linux內(nèi)核的一個模塊加載于其中,再向上就是基于Linux的應(yīng)用程序,同時也包括基于KVM模塊虛擬出來的虛擬客戶機(jī)。第1章虛擬化與云計算KVM的前景:KVM是一個相對較新的虛擬化產(chǎn)品,但是誕生不久就被Linux社區(qū)接納,成為隨Linux內(nèi)核發(fā)布的輕量型模塊。與Linux內(nèi)核集成,使KVM可以直接獲益于最新的Linux內(nèi)核開發(fā)成果,比如更好的進(jìn)程調(diào)度支持、更廣泛的物理硬件平臺的驅(qū)動、更高的代碼質(zhì)量等等。不過,現(xiàn)在隨著libvirt、virt-manager等工具和OpenStack等云計算平臺的逐漸完善,KVM管理工具在易用性方面的劣勢已經(jīng)逐漸被克服。另外,KVM可以改進(jìn)虛擬網(wǎng)絡(luò)的支持、虛擬存儲支持、增強的安全性、高可用性、容錯性、電源管理。第1章虛擬化與云計算1.3.2XenXen是一個直接在系統(tǒng)硬件上運行的虛擬機(jī)管理程序。Xen在系統(tǒng)硬件與虛擬機(jī)之間插入一個虛擬化層,將系統(tǒng)硬件轉(zhuǎn)換為一個邏輯計算資源池,Xen可將其中的資源動態(tài)地分配給任何操作系統(tǒng)或應(yīng)用程序。在虛擬機(jī)中運行的操作系統(tǒng)能夠與虛擬資源交互,就好像它們是物理資源一樣。第1章虛擬化與云計算第1章虛擬化與云計算圖1-7Xen架構(gòu)Xen架構(gòu)的三大部分:(1)?XenHypervisor:直接運行于硬件之上,是Xen客戶操作系統(tǒng)與硬件資源之間的訪問接口。通過將客戶操作系統(tǒng)與硬件進(jìn)行分類,Xen管理系統(tǒng)可以允許客戶操作系統(tǒng)安全、獨立地運行在相同的硬件環(huán)境之上。(2)?Domain0:運行在Xen管理程序之上,具有直接訪問硬件和管理其他客戶操作系統(tǒng)的特權(quán)的客戶操作系統(tǒng)。(3)DomainU:指運行在Xen管理程序之上的普通客戶操作系統(tǒng)或業(yè)務(wù)操作系統(tǒng)。第1章虛擬化與云計算Xen架構(gòu)的功能特性:Xen服務(wù)器構(gòu)建于開源的Xen虛擬機(jī)管理程序之上,結(jié)合使用半虛擬化和硬件協(xié)助的虛擬化。操作系統(tǒng)與虛擬化平臺之間的這種協(xié)作,可支持開發(fā)一個較簡單的虛擬機(jī)管理程序來提供高度優(yōu)化的性能。Xen提供了復(fù)雜的工作負(fù)載平衡功能,可捕獲CPU、內(nèi)存、磁盤I/O和網(wǎng)絡(luò)I/O數(shù)據(jù)。Xen服務(wù)器包含多核處理器支持、實時遷移、物理服務(wù)器到虛擬機(jī)轉(zhuǎn)換(P2V)和虛擬到虛擬轉(zhuǎn)換(V2V)工具、集中化的多服務(wù)器管理、實時性能監(jiān)控以及對Windows和Linux客戶機(jī)所提供的良好性能。第1章虛擬化與云計算Xen的優(yōu)缺點:Xen虛擬機(jī)監(jiān)控程序是一個專門為虛擬機(jī)開發(fā)的微內(nèi)核,所以其資源管理和調(diào)度策略完全是針對虛擬機(jī)的特性而開發(fā)的。作為一個獨立維護(hù)的微內(nèi)核,Xen的功能明確,開發(fā)社區(qū)構(gòu)成比較簡單,所以更容易接納專門針對虛擬化所做的功能和優(yōu)化。但是Xen比較難于配置和使用,部署會占用相對較大的空間,而且非常依賴于0號虛擬機(jī)中的Linux操作系統(tǒng)。Xen微內(nèi)核直接運行于真實物理硬件之上,開發(fā)和調(diào)試都比基于操作系統(tǒng)的虛擬化困難。第1章虛擬化與云計算1.3.3VMwareVMware公司作為最成熟的商業(yè)虛擬化軟件提供商,其產(chǎn)品線是業(yè)界覆蓋范圍最廣的,其技術(shù)能夠簡化IT的復(fù)雜性,優(yōu)化運維,幫助企業(yè)變得更加敏捷、高效,利潤更加豐厚。從數(shù)據(jù)中心到云計算再到移動設(shè)備,通過虛擬化各類基礎(chǔ)架構(gòu),VMware可以使得IT能夠隨時隨地通過任何設(shè)備交付服務(wù)。第1章虛擬化與云計算VMware的虛擬化包括數(shù)據(jù)中心虛擬化、桌面虛擬化和虛擬化的企業(yè)級應(yīng)用:(1)?VMware的數(shù)據(jù)中心虛擬化可以利用服務(wù)器虛擬化和整合,將數(shù)據(jù)中心轉(zhuǎn)變成靈活的云計算基礎(chǔ)架構(gòu),使之成為具有運行要求最嚴(yán)苛的應(yīng)用所需的性能和可靠性??梢酝ㄟ^VMware虛擬化構(gòu)建數(shù)據(jù)中心,借助服務(wù)器虛擬化開啟云計算之旅。然后可以按照自己的步調(diào),向完全虛擬化的軟件定義的數(shù)據(jù)中心體系結(jié)構(gòu)演進(jìn):虛擬化網(wǎng)絡(luò)連接、存儲和安全保護(hù)以創(chuàng)建虛擬數(shù)據(jù)中心。第1章虛擬化與云計算(2)

VMware的桌面虛擬化可延展桌面和應(yīng)用虛擬化的強大優(yōu)勢,使IT部門能以終端用戶期望的速度和業(yè)務(wù)所需的效率來提供和保護(hù)用戶需要的所有Windows資源。在“客戶端-服務(wù)器”計算時代,Windows占據(jù)主導(dǎo)地位,而指派給終端用戶的任務(wù)則是在一個地點用一臺設(shè)備完成工作,如今,這個時代早已一去不復(fù)返。現(xiàn)在,終端用戶可以利用新型設(shè)備開展工作、訪問Windows應(yīng)用及非Windows應(yīng)用,并且比以往更加機(jī)動、靈活。第1章虛擬化與云計算(3)虛擬化的企業(yè)級應(yīng)用,例如可以虛擬化MicrosoftExchange并超越本機(jī)性能,同時讓基礎(chǔ)架構(gòu)實現(xiàn)5到10倍的整合率。對Oracle數(shù)據(jù)庫和應(yīng)用的虛擬化可以讓Oracle數(shù)據(jù)庫動態(tài)擴(kuò)展以確保滿足服務(wù)級別要求??梢哉蟂QLServer數(shù)據(jù)庫,并將硬件和軟件成本削減50%以上??梢詫⑵髽I(yè)級Java應(yīng)用遷移至虛擬化x86平臺,以便輕松地使用生命周期和可擴(kuò)展性管理功能,提高資源利用率。第1章虛擬化與云計算常見的幾款Vmware產(chǎn)品:(1)

VMwarevRealizeOperations,以前稱為vCenterOperationsManagementSuite,屬于數(shù)據(jù)中心與云計算管理軟件。它可以借助預(yù)測分析和基于策略的自動化,使用戶可對vSphere、Hyper-V、Amazon及物理硬件實現(xiàn)從應(yīng)用到存儲的智能IT運維管理。利用預(yù)測分析與智能警報主動識別和解決新出現(xiàn)的問題,從而確??鐅Sphere、Hyper-V、Amazon平臺和物理硬件實現(xiàn)最佳應(yīng)用、最佳基礎(chǔ)架構(gòu)性能及可用性。第1章虛擬化與云計算(2)VMwareWorkstation,屬于個人桌面,最新的版本是Workstation11。VMwareWorkstation是VMware公司開發(fā)的運行于臺式機(jī)和工作站上的虛擬化軟件,也是VMware公司第一個面市的產(chǎn)品(1999年5月)。該產(chǎn)品最早采用了VMware在業(yè)界知名的二進(jìn)制翻譯技術(shù),在x86CPU硬件虛擬化技術(shù)還未出現(xiàn)之前,為客戶提供純粹的基于軟件的全虛擬化解決方案。作為最初的拳頭產(chǎn)品制造商,VMware公司投入了大量的資源對二進(jìn)制翻譯進(jìn)行優(yōu)化,其二進(jìn)制翻譯技術(shù)帶來的虛擬化性能甚至超過第一代的CPU硬件虛擬化產(chǎn)品的性能。第1章虛擬化與云計算(3)

VMwarevCloudSuite,屬于數(shù)據(jù)中心和云計算基礎(chǔ)架構(gòu)軟件,是一款集成式解決方案,用戶基于軟件定義的數(shù)據(jù)中心體系結(jié)構(gòu)管理和構(gòu)建VMwarevSphere私有云。它能夠提供虛擬化經(jīng)濟(jì)效益并提高工作效率,借助基于策略的智能IT運維對數(shù)據(jù)中心實施標(biāo)準(zhǔn)化并

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論