版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第1章
云計(jì)算概念與核心技術(shù)華為云計(jì)算技術(shù)與應(yīng)用1.1云計(jì)算簡介1.2虛擬化技術(shù)1.3分布式技術(shù)學(xué)習(xí)要點(diǎn)1.1.1 云計(jì)算的發(fā)展與概念云計(jì)算的發(fā)展人類歷史上第一臺公認(rèn)的通用電子數(shù)字積分計(jì)算機(jī)(ElectronicNumericalIntegratorAndComputer,ENIAC)誕生了。ENIAC由18000多個電子管組成,體積龐大,需要占滿好幾個房間,耗電量驚人電子計(jì)算機(jī)更多的是大型機(jī),如IBM公司的大型機(jī)S/360等,大型機(jī)具有處理能力強(qiáng)、安全性高、穩(wěn)定性好等優(yōu)點(diǎn),但是由于其價格昂貴,一般只被政府、銀行等機(jī)構(gòu)使用,其他用戶可能就不會選擇大型機(jī)。SUN(StanfordUniversityNetwork)公司的聯(lián)合創(chuàng)始人約翰·蓋奇首次提出了“網(wǎng)絡(luò)即計(jì)算”這一概念,這是最早提出的與云計(jì)算相似的概念,即通過網(wǎng)絡(luò),用戶或公司能夠獲取到所需的計(jì)算等資源,從而對信息進(jìn)行處理。拉姆納特·切拉帕教授在一次演講中提出了“云計(jì)算”這一詞,同時,他指出“計(jì)算資源的邊界不再由技術(shù)決定,而是由經(jīng)濟(jì)需求來決定”,即資源是根據(jù)用戶需求來提供的。Salesforce公司提供了可通過互聯(lián)網(wǎng)按需訪問軟件的服務(wù)。Salesforce是全球領(lǐng)先的客戶關(guān)系管理軟件的提供商,它通過一系列的創(chuàng)新和新技術(shù)的引入,提供了一種全新的SaaS方式管理客戶關(guān)系。1946年20世紀(jì)60年代1983年1997年1999年1.1.1 云計(jì)算的發(fā)展與概念云計(jì)算的發(fā)展谷歌發(fā)表了關(guān)于分布式文件系統(tǒng)、并行計(jì)算、數(shù)據(jù)管理和分布式資源管理的4篇論文,為云計(jì)算和大數(shù)據(jù)的發(fā)展奠定了堅(jiān)實(shí)的基礎(chǔ)。谷歌前首席執(zhí)行官埃里克·施密特首次提出了云計(jì)算概念。同年,亞馬遜推出了云計(jì)算產(chǎn)品亞馬遜彈性計(jì)算云(ElasticComputeCloud,EC2),指出云計(jì)算通過互聯(lián)網(wǎng)按需提供IT資源,并且采用按使用量付費(fèi)的定價方式。云計(jì)算發(fā)展的關(guān)鍵一年,也被認(rèn)為是中國的云計(jì)算元年。在這一年,VMware開始加入云計(jì)算市場,提供相應(yīng)的云計(jì)算產(chǎn)品,同時,VMware和谷歌展開合作,微軟云計(jì)算產(chǎn)品Azure添加了對遠(yuǎn)程桌面和虛擬化的支持,增強(qiáng)了其IaaS層的服務(wù)提供能力。在中國,政府開始重視云計(jì)算的發(fā)展,頒布了《關(guān)于做好云計(jì)算服務(wù)創(chuàng)新發(fā)展試點(diǎn)示范工作的通知》等文件。同年,阿里云開始公測。亞馬遜、微軟和阿里占據(jù)全球近70%的云市場,云計(jì)算產(chǎn)業(yè)成為全球性的競爭產(chǎn)業(yè)。關(guān)于云計(jì)算未來的發(fā)展,亞馬遜全球副總裁兼首席技術(shù)官威格爾指出,未來云計(jì)算將改善城市生活,實(shí)現(xiàn)工業(yè)物聯(lián)網(wǎng)、視頻分析和安全分析,還將改變醫(yī)療分析。2000年2006年2010年2020年1.1.1 云計(jì)算的發(fā)展與概念維基百科指出,云計(jì)算是現(xiàn)有技術(shù)和范例的發(fā)展和采用的結(jié)果。云計(jì)算的目標(biāo)是允許用戶從所有這些技術(shù)中獲益,而不需要對每一項(xiàng)技術(shù)都有深入的了解?!霸啤敝荚诮档统杀?,幫助用戶專注于核心業(yè)務(wù),而不被IT障礙所阻礙。云安全聯(lián)盟指出,云計(jì)算的本質(zhì)是一種提供服務(wù)的模式。通過這種模式,用戶可以隨時隨地按需地通過網(wǎng)絡(luò)訪問共享資源池的資源。資源池的內(nèi)容包括計(jì)算資源、存儲資源、網(wǎng)絡(luò)資源等,這些資源能夠被動態(tài)地分配和調(diào)整,在不同用戶之間靈活地劃分。凡是符合這些特征的IT服務(wù)都可以被稱為云計(jì)算服務(wù)。普遍被接受的概念是由美國國家標(biāo)準(zhǔn)與技術(shù)研究院(NationalInstituteofStandardsandTechnology,NIST)提出的,云計(jì)算是一種模型,它可以實(shí)現(xiàn)用戶隨時隨地、便捷、按需地從可配置計(jì)算資源共享池中獲取所需的資源(如網(wǎng)絡(luò)、服務(wù)器、存儲、應(yīng)用和服務(wù)等)。這些資源能夠快速供應(yīng)并釋放,使資源管理的工作量和用戶與服務(wù)提供商的交互次數(shù)減少到最低限度。云計(jì)算的概念1.1.2 云計(jì)算的特征與優(yōu)勢云計(jì)算的特征(1)按需自助服務(wù)按需自助意味著用戶可自助獲取相關(guān)資源或服務(wù),資源可以是應(yīng)用程序、網(wǎng)絡(luò)、計(jì)算、存儲、數(shù)據(jù)庫等,服務(wù)可以是人工服務(wù)等。在云時代,用戶可以直接通過云控制臺界面進(jìn)行資源申請,同時,若用戶在使用過程中有任何問題,可以在云平臺上申請人工服務(wù)來幫助解決問題。(2)廣泛的網(wǎng)絡(luò)接入允許用戶在終端設(shè)備上通過網(wǎng)絡(luò)接入云中獲取相應(yīng)的資源。理論上來說,只要網(wǎng)絡(luò)可達(dá)就可以獲取相應(yīng)資源,和用戶所處位置無關(guān),和用戶使用的終端設(shè)備也無關(guān)。(3)資源池化根據(jù)NIST的定義可以看出,云計(jì)算提供的是共享資源池,即資源池化。資源池化意味著用戶獲取的資源或服務(wù)都是來自某個資源池的,這個資源池可以是公共的資源池,也可以是私有的資源池。(4)快速彈性伸縮意味著云中提供的某個服務(wù)可以快速伸縮,適應(yīng)業(yè)務(wù)負(fù)載的動態(tài)變化,從而能夠保證資源的提供量和業(yè)務(wù)對資源的需求量是高度匹配的,避免資源的冗余和浪費(fèi)。(5)可計(jì)量服務(wù)云上大部分的資源是收費(fèi)的,用戶按需使用云中的資源,按實(shí)際使用量付費(fèi),因此平臺需要收集使用資源的類型、使用數(shù)量和使用時長等信息,根據(jù)這些信息,對用戶進(jìn)行相應(yīng)的收費(fèi)。1.1.2 云計(jì)算的特征與優(yōu)勢云計(jì)算的優(yōu)勢01020304快速便捷理論上,只要網(wǎng)絡(luò)可達(dá),就可以獲取所需資源,因此,云計(jì)算被廣泛應(yīng)用于教育、辦公、醫(yī)療等眾多領(lǐng)域。安全可靠在安全方面,云計(jì)算從底層到上層,提供了眾多安全策略、措施和工具來保障安全。在可靠性方面,數(shù)據(jù)存儲采用多副本容錯、虛擬機(jī)可熱遷移、數(shù)據(jù)庫主備設(shè)計(jì)、上層應(yīng)用負(fù)載均衡等方式,很好地保證了用戶業(yè)務(wù)的高可靠性。經(jīng)濟(jì)高效在大廠商提供的云平臺上去搭建自身的業(yè)務(wù),能夠快速獲得自身業(yè)務(wù)所需資源,且選擇多樣。同時,可以根據(jù)業(yè)務(wù)自身需求去考慮資源的付費(fèi)方式,在一定程度上能夠降低用戶或中小企業(yè)的業(yè)務(wù)成本。靈活彈性對于云上資源,靈活彈性體現(xiàn)在資源的彈性伸縮上,包括資源配置的更改和資源數(shù)量的變更。1.3.1 云計(jì)算的應(yīng)用對個人而言,云計(jì)算滲透在個人的衣食住行、教育、醫(yī)療、辦公等各個方面。除此之外,當(dāng)人們在日常生活中使用一些視頻軟件觀看娛樂節(jié)目或者在一些電商平臺上購買所需商品時,其后臺使用的也是云計(jì)算技術(shù)。以華為商城VMALL為例,VMALL是華為自營電商平臺,其本身就是基于華為云平臺搭建的。對廣大中小企業(yè)而言,采用云計(jì)算技術(shù)能夠降本增效,從而有利于滿足其自身業(yè)務(wù)發(fā)展的需求。在金融行業(yè)中,以某銀行為例,其業(yè)務(wù)快速發(fā)展導(dǎo)致業(yè)務(wù)體量快速增長,客戶群體從高價值客戶向長尾客戶延伸,但其業(yè)務(wù)部署分散隔離,導(dǎo)致后端資源難管控,各業(yè)務(wù)的價值發(fā)現(xiàn)困難。在交通行業(yè)中,以城軌為例,在《交通強(qiáng)國建設(shè)綱要》的要求和指導(dǎo)下,中國城軌從單線建設(shè)向線網(wǎng)建設(shè)發(fā)展,同時,從提供單一的出行服務(wù)向提供綜合服務(wù)發(fā)展,即中國城軌從傳統(tǒng)城軌向智慧城軌發(fā)展。(1)(2)1.1.4 云計(jì)算平臺、云管理平臺與云計(jì)算服務(wù)云計(jì)算平臺是一種基于云計(jì)算技術(shù)構(gòu)建的軟件和服務(wù)平臺,它提供了一種可靠、靈活、可擴(kuò)展的方式來構(gòu)建、部署和管理應(yīng)用程序和服務(wù)。利用虛擬化技術(shù),云計(jì)算平臺能夠基于底層的IT資源池構(gòu)建出龐大的云計(jì)算共享資源池,進(jìn)而向用戶提供不同的云計(jì)算服務(wù)。
云計(jì)算平臺目前云計(jì)算服務(wù)模式主要包括基礎(chǔ)設(shè)施即服務(wù)(InfrastructureasaService,IaaS)、平臺即服務(wù)(PlatformasaService,PaaS)和軟件即服務(wù)(SoftwareasaService,SaaS)三類。1.1.4 云計(jì)算平臺、云管理平臺與云計(jì)算服務(wù)隨著用戶需求和規(guī)模的不斷增長,勢必會出現(xiàn)這些問題:如何管理云上不同種類的云服務(wù)?如何對不同云服務(wù)商之間的服務(wù)進(jìn)行統(tǒng)一管理?如何讓用戶便捷地申請?jiān)品?wù)?在這樣的背景下,云管理平臺就應(yīng)運(yùn)而生了。在云管理平臺的管理下,可以基于不同的模式對云計(jì)算進(jìn)行部署并實(shí)現(xiàn)統(tǒng)一管理,有云服務(wù)商構(gòu)建的公有云模式,有用戶自行構(gòu)建的私有云模式,也有強(qiáng)調(diào)高擴(kuò)展性、高靈活性、高安全性和高私密性的混合云模式,更有多個利益共同體一同投資構(gòu)建的社區(qū)云模式。無論采用哪種模式,通過云管理平臺的納管,用戶都可以享受到云計(jì)算快速、便捷、靈活、可靠的優(yōu)勢,助力自身業(yè)務(wù)的可持續(xù)發(fā)展。
云管理平臺1.1.4 云計(jì)算平臺、云管理平臺與云計(jì)算服務(wù)有了底層的IT資源池、云計(jì)算平臺和云管理平臺,就能為廣大的用戶提供安全高效、豐富多樣的云計(jì)算服務(wù),當(dāng)前主流的云計(jì)算服務(wù)主要有以下幾類。計(jì)算云服務(wù)存儲云服務(wù)網(wǎng)絡(luò)云服務(wù)安全云服務(wù)容器云服務(wù)大數(shù)據(jù)云服務(wù)數(shù)據(jù)庫云服務(wù)AI云服務(wù)
云計(jì)算服務(wù)云服務(wù)商提供的數(shù)據(jù)庫產(chǎn)品一般都是具備NewSQL特性的數(shù)據(jù)庫產(chǎn)品,如亞馬遜的Aurora、阿里云的OceanBase、騰訊云的CynosDB等1.1.5 我國自主創(chuàng)新成果——鯤鵬云當(dāng)前計(jì)算產(chǎn)業(yè)呈現(xiàn)兩個大的變化趨勢。其一是移動智能終端取代傳統(tǒng)個人計(jì)算機(jī),計(jì)算架構(gòu)正在從x86轉(zhuǎn)向ARM,應(yīng)用正從PC應(yīng)用轉(zhuǎn)向移動應(yīng)用,并且移動應(yīng)用進(jìn)一步發(fā)展為云化應(yīng)用。其二是新的算力需求日趨強(qiáng)烈,需要構(gòu)建云端數(shù)據(jù)中心和網(wǎng)絡(luò)邊緣端協(xié)同的算力體系,助力世界步入萬物互聯(lián)的新時代,以滿足對于海量數(shù)據(jù)處理的算力需求。計(jì)算進(jìn)入多樣性時代,意味著將產(chǎn)生大量對異構(gòu)計(jì)算的需求,然而,當(dāng)前沒有任何一種單一的計(jì)算架構(gòu)能夠滿足對所有場景、所有數(shù)據(jù)類型的處理需求,單一計(jì)算架構(gòu)逐漸向多種計(jì)算架構(gòu)組合演進(jìn)。技術(shù)的更迭是生態(tài)發(fā)展的核心驅(qū)動力。進(jìn)入“AIoT(AI+IoT)時代”,多元架構(gòu)成為業(yè)務(wù)智能的關(guān)鍵,技術(shù)生態(tài)也從單一封閉型向開放共存型和多元化社區(qū)型發(fā)展。多元化技術(shù)架構(gòu)主要包括以下方面。多元化底層技術(shù)多元化開發(fā)生態(tài)多元化云服務(wù)1.1.5 我國自主創(chuàng)新成果——鯤鵬云依托ARM架構(gòu)打造的鯤鵬處理器,以及基于鯤鵬處理器構(gòu)建的華為鯤鵬云服務(wù)解決方案是多元架構(gòu)實(shí)踐的有力體現(xiàn)。鯤鵬云服務(wù)解決方案打通了智能時代從端到云的價值鏈,在大數(shù)據(jù)、分布式存儲、ARM原生應(yīng)用等諸多場景中發(fā)揮了極大價值。鯤鵬云服務(wù)解決方案具有以下優(yōu)勢。預(yù)集成全棧軟硬件且按需付費(fèi)多場景業(yè)務(wù)支持豐富的技術(shù)生態(tài)支持鯤鵬計(jì)算生態(tài)致力于推動異構(gòu)計(jì)算的發(fā)展,更好地滿足用戶和企業(yè)對超大寬帶內(nèi)存、綠色低功耗、安全可信等的需求。鯤鵬開發(fā)團(tuán)隊(duì)完善了云服務(wù)的國產(chǎn)化,構(gòu)建了全棧鯤鵬云服務(wù),如鯤鵬云主機(jī)、鯤鵬云數(shù)據(jù)庫、鯤鵬云容器、鯤鵬云微服務(wù)平臺等。如今的鯤鵬不再局限于鯤鵬系列服務(wù)器芯片,更包含兼容的服務(wù)器軟件,以及建立在新計(jì)算架構(gòu)上的完整軟硬件生態(tài)和云計(jì)算生態(tài)。1.1云計(jì)算簡介1.2虛擬化技術(shù)1.3分布式技術(shù)學(xué)習(xí)要點(diǎn)1.2.1 虛擬化基礎(chǔ)采用虛擬化,需要在服務(wù)器上安裝相應(yīng)的虛擬化層,然后在其基礎(chǔ)上創(chuàng)建虛擬機(jī)、安裝和配置操作系統(tǒng)和應(yīng)用軟件,從而承載相應(yīng)的業(yè)務(wù),虛擬化架構(gòu)如圖所示。物理服務(wù)器:通常是指托管虛擬機(jī)或容器的物理設(shè)備,它具有自己的處理器、內(nèi)存、硬盤、網(wǎng)絡(luò)接口和其他硬件組件,可以獨(dú)立地運(yùn)行操作系統(tǒng)和應(yīng)用程序。虛擬化層:也被稱為虛擬機(jī)監(jiān)視器,虛擬化層將底層的計(jì)算、存儲和網(wǎng)絡(luò)等資源統(tǒng)一納管起來,為上層虛擬機(jī)提供一個邏輯上隔離的運(yùn)行環(huán)境虛擬機(jī):也被稱為客戶機(jī),新創(chuàng)建出來的虛擬機(jī)并不能直接使用,需要由用戶或管理員為這臺虛擬機(jī)安裝相應(yīng)的系統(tǒng)軟件和應(yīng)用軟件之后才能使用。虛擬機(jī)操作系統(tǒng):可以是Linux/類Linux操作系統(tǒng)或Windows操作系統(tǒng),可以根據(jù)實(shí)際的業(yè)務(wù)場景需求進(jìn)行選擇。(1)(2)(3)(4)
虛擬化概念1.2.1 虛擬化基礎(chǔ)
虛擬化優(yōu)勢采用了虛擬化技術(shù)之后,優(yōu)勢主要體現(xiàn)在以下幾點(diǎn)。靈活的資源配置對上層業(yè)務(wù)而言,可以靈活地對運(yùn)行業(yè)務(wù)的虛擬機(jī)進(jìn)行數(shù)量或配置的更改。例如,在業(yè)務(wù)量高峰期,可以通過提高虛擬機(jī)的配置來應(yīng)對高業(yè)務(wù)量與資源配置不匹配等問題。提高業(yè)務(wù)可靠性對上層業(yè)務(wù)而言,其要求業(yè)務(wù)不中斷或者短中斷,而虛擬化技術(shù)可以支持虛擬機(jī)跨主機(jī)的熱遷移,同時,結(jié)合一些適當(dāng)?shù)囊?guī)則,如虛擬機(jī)與主機(jī)綁定、虛擬機(jī)聚合或互斥等規(guī)則,可以提高業(yè)務(wù)的可靠性。提高資源利用率傳統(tǒng)模式下,為避免業(yè)務(wù)高峰時期資源的搶占問題,一般會在一臺服務(wù)器上面安裝一個應(yīng)用來對外提供服務(wù)。對這臺服務(wù)器而言,其資源平均利用率通常在20%~30%之間,資源沒有得到充分的利用。而虛擬化技術(shù)可以對底層資源進(jìn)行邏輯隔離,創(chuàng)建眾多承載不同業(yè)務(wù)和應(yīng)用的虛擬機(jī),從而提高資源利用率。0102031.2.1 虛擬化基礎(chǔ)
虛擬化劣勢凡事有利必有弊,采用虛擬化技術(shù)劣勢體現(xiàn)在以下幾點(diǎn)。保障安全難度增加可能會發(fā)生“虛擬機(jī)逃逸”等安全問題,如在虛擬機(jī)中使用了弱密碼,黑客可以通過暴力破解等方式控制虛擬機(jī),然后對這臺主機(jī)的虛擬化層進(jìn)行控制,從而控制整臺主機(jī)。面向業(yè)務(wù)的靈活度不夠當(dāng)用戶需要根據(jù)業(yè)務(wù)進(jìn)行相應(yīng)虛擬資源的調(diào)整時,其工作量仍然比較大。同時,虛擬化在與其他新興技術(shù)(如物聯(lián)網(wǎng)、人工智能、大數(shù)據(jù)等)的融合方面還有待改進(jìn)。運(yùn)維難度增加傳統(tǒng)方式下運(yùn)維人員只需要對物理資源、系統(tǒng)軟件和應(yīng)用軟件等進(jìn)行運(yùn)維。而多了虛擬化層之后,增加了對虛擬化層和其上的虛擬機(jī)的運(yùn)維工作。0102031.2.2 虛擬化架構(gòu)如圖所示,裸金屬型虛擬化架構(gòu)中虛擬化層直接安裝在硬件上面,這時虛擬化層對硬件的所有資源進(jìn)行相應(yīng)的管控,在虛擬化層的基礎(chǔ)上,可以創(chuàng)建虛擬機(jī),然后在虛擬機(jī)中安裝系統(tǒng)軟件或者應(yīng)用軟件。它具有性能較高、支持多種操作系統(tǒng)等優(yōu)勢,同時,它也存在內(nèi)核研發(fā)比較困難等劣勢。目前,裸金屬型虛擬化產(chǎn)品有XEN、Hyper-V等。裸金屬型虛擬化架構(gòu)1.2.2 虛擬化架構(gòu)如圖所示,相比于裸金屬型虛擬化架構(gòu),宿主型虛擬化架構(gòu)中VMM不直接安裝在硬件上。在宿主型虛擬化架構(gòu)中,由主機(jī)操作系統(tǒng)(HostOS)對整個硬件資源進(jìn)行管控,而VMM只是作為一個虛擬化模塊嵌入HostOS,實(shí)現(xiàn)CPU、內(nèi)存和輸入/輸出虛擬化,實(shí)際上對硬件資源的管控是由HostOS來完成的。宿主型虛擬化架構(gòu)能夠充分利用HostOS優(yōu)秀的資源管理能力,但也強(qiáng)依賴于HostOS對設(shè)備的支持。目前,宿主型虛擬化產(chǎn)品有VirtualBox、VMwareWorkstation等。宿主型虛擬化架構(gòu)1.2.2 虛擬化架構(gòu)如圖所示,操作系統(tǒng)虛擬化架構(gòu)允許多個應(yīng)用共享主機(jī)操作系統(tǒng)內(nèi)核,將應(yīng)用和應(yīng)用的依賴文件等封裝在一起形成容器。對多個容器而言,由于共享而不具備單獨(dú)的操作系統(tǒng)內(nèi)核,因此,其空間更小、啟動速度更快、效率更高,但是容器在安全性、標(biāo)準(zhǔn)性、復(fù)雜性等方面的問題仍有待解決。操作系統(tǒng)虛擬化架構(gòu)1.2.3 虛擬化分類在對這些虛擬化階段進(jìn)行介紹之前,需要先說明一下虛擬化之前計(jì)算機(jī)的CPU指令流,如圖所示,CPU將特權(quán)級分為4個級別:Ring0、Ring1、Ring2、Ring3。Ring0擁有最高的級別,一般只給操作系統(tǒng)使用,Ring1、Ring2、Ring3級別依次遞減,Ring3則給普通的應(yīng)用程序使用。宿主型虛擬化架構(gòu)如果沒有引入虛擬化技術(shù),那么在傳統(tǒng)模式下,CPU指令的運(yùn)行并不會產(chǎn)生任何沖突,而采用了虛擬化技術(shù)后,就會帶來一個問題:默認(rèn)情況下操作系統(tǒng)運(yùn)行在Ring0級別,管控所有的硬件資源,而新增的虛擬化層也需要運(yùn)行在Ring0級別以管控所有的硬件資源,這種情況下,應(yīng)該是誰運(yùn)行在Ring0級別呢?1.2.3 虛擬化分類CPU全虛擬化01OPTION右圖對給出了上述問題的答案,右圖是全虛擬化下的CPU指令流,可以看到底層是硬件,虛擬化層運(yùn)行在Ring0級別中,虛擬機(jī)操作系統(tǒng)運(yùn)行在Ring1級別中,應(yīng)用運(yùn)行在Ring3級別中,這樣就能夠保證虛擬化層能夠獲取對所有硬件資源的管控權(quán),當(dāng)虛擬機(jī)運(yùn)行一些用戶指令時,就能不經(jīng)過虛擬化層直接運(yùn)行。當(dāng)運(yùn)行一些核心指令時,若出現(xiàn)異常,虛擬化層就會捕獲這個異常,進(jìn)行二進(jìn)制翻譯,從而完成這些核心指令的執(zhí)行,通過異?!东@—二進(jìn)制翻譯這種方式,會消耗較多的系統(tǒng)資源,降低性能,但在一定程度上解決了Ring0級別運(yùn)行沖突問題。1.2.3 虛擬化分類CPU半虛擬化02OPTION為了解決全虛擬化中存在的資源消耗大、性能低等問題,提出了CPU半虛擬化這一方案。在CPU半虛擬化中,虛擬化層仍然處于Ring0級別,虛擬機(jī)操作系統(tǒng)仍然處于Ring1級別,應(yīng)用則處于Ring3級別。不同于全虛擬化,半虛擬化對虛擬機(jī)操作系統(tǒng)進(jìn)行了相應(yīng)的修改,這樣對于核心指令的執(zhí)行,就不用異常捕獲、二進(jìn)制翻譯,而是通過Hypercall這一調(diào)用方式進(jìn)行核心指令的執(zhí)行,相比于全虛擬化,其性能有所提升。半虛擬化下的CPU指令流如圖所示。1.2.3 虛擬化分類CPU硬件輔助虛擬化03OPTION不論是全虛擬化還是半虛擬化,其虛擬化功能的實(shí)現(xiàn)都需要通過虛擬化層,為了獲得更高的性能和更好的體驗(yàn),硬件輔助虛擬化應(yīng)運(yùn)而生。硬件輔助虛擬化的思想是將虛擬化層和虛擬機(jī)操作系統(tǒng)放到不同的模式下,如圖所示,將虛擬機(jī)操作系統(tǒng)放到非ROOT模式下,將虛擬化層放到ROOT模式下,當(dāng)虛擬機(jī)操作系統(tǒng)運(yùn)行非核心指令(用戶指令)時,可以直接下發(fā)指令到硬件執(zhí)行,不需要經(jīng)過虛擬化層。當(dāng)虛擬機(jī)操作系統(tǒng)運(yùn)行核心指令時,系統(tǒng)會從非ROOT模式切換到ROOT模式,這一過程也被稱為VM-Entry,經(jīng)由虛擬化層將指令處理完成之后,系統(tǒng)會從ROOT模式切換到非ROOT模式,這一過程也被稱為VM-Exit。對于應(yīng)用的用戶指令,則會直接執(zhí)行。目前主要有英特爾的VT-x和AMD的AMD-V這兩種CPU硬件輔助虛擬化技術(shù)。1.2.3 虛擬化分類內(nèi)存虛擬化和CPU虛擬化類似,經(jīng)歷了內(nèi)存全虛擬化、內(nèi)存半虛擬化和內(nèi)存硬件輔助虛擬化這3個主要發(fā)展階段。
內(nèi)存虛擬化GVA:GuestVirtualAddress,虛擬機(jī)虛擬地址。GPA:GuestPhysicalAddress,虛擬機(jī)物理地址。HVA:HostVirtualAddress,主機(jī)虛擬地址。HPA:HostPhysicalAddress,主機(jī)物理地址。(1)(2)(3)(4)1.2.3 虛擬化分類如圖所示,內(nèi)存全虛擬化需要完成GVA到GPA、GPA到HVA、HVA到HPA的地址轉(zhuǎn)換工作。其中,GVA到GPA的地址轉(zhuǎn)換是由虛擬機(jī)的系統(tǒng)頁表進(jìn)行的,HVA到HPA的地址轉(zhuǎn)換工作是由主機(jī)的系統(tǒng)頁表完成的,此時,VMM需要完成GPA到HVA之間的地址轉(zhuǎn)換工作。這樣可以將主機(jī)物理層中非連續(xù)性的地址整合成邏輯上連續(xù)性的內(nèi)存地址提供給虛擬機(jī)使用,并保障每臺虛擬機(jī)能夠得到一個邏輯地址從零開始的連續(xù)內(nèi)存地址段,同時,能夠保證每臺虛擬機(jī)獲得的地址空間在邏輯上是隔離的。內(nèi)存全虛擬化01OPTION1.2.3 虛擬化分類如圖所示,內(nèi)存半虛擬化是通過影子頁表技術(shù)實(shí)現(xiàn)的。影子頁表記錄了GVA到HPA之間的地址映射關(guān)系,在很大程度上降低了性能的損耗,對每臺虛擬機(jī)而言,其進(jìn)程中有內(nèi)存維護(hù)的頁表,當(dāng)在虛擬機(jī)中對頁表進(jìn)行相關(guān)修改時,這種動作就會被VMM截獲,在這之后,VMM要重新計(jì)算出新的GVA到HPA之間的地址映射關(guān)系,更改相應(yīng)的頁表項(xiàng)。相比于內(nèi)存全虛擬化方式,采用影子頁表這種方式實(shí)現(xiàn)內(nèi)存半虛擬化,減少了內(nèi)存地址之間的多層轉(zhuǎn)換,在一定程度上提高了效率,但這種方式也有其缺陷,如實(shí)現(xiàn)方式比較復(fù)雜。內(nèi)存半虛擬化02OPTION1.2.3 虛擬化分類內(nèi)存硬件輔助虛擬化可以通過擴(kuò)展頁表(ExtendedPageTable,EPT)來實(shí)現(xiàn)。通過使用硬件技術(shù),在原有的頁表的基礎(chǔ)上增加一個EPT,用于記錄GPA到HPA的映射關(guān)系。VMM預(yù)先把EPT設(shè)置到CPU中。虛擬機(jī)修改虛擬機(jī)頁表,無須VMM干預(yù)。地址轉(zhuǎn)換時,CPU自動查找兩張頁表完成GVA到HPA的轉(zhuǎn)換,從而減少整個內(nèi)存虛擬化所需的開銷。內(nèi)存硬件輔助虛擬化03OPTION1.2.3 虛擬化分類I/O虛擬化I/O全虛擬化:在I/O全虛擬化中,虛擬化的工作由Hypervisor進(jìn)行相應(yīng)的模擬,包括I/O設(shè)備寄存器和讀寫操作的模擬。I/O半虛擬化:在I/O半虛擬化中,需要在虛擬機(jī)的操作系統(tǒng)中添加相應(yīng)的前端驅(qū)動,同時在Hypervisor層上需要添加相應(yīng)的驅(qū)動程序。I/O硬件輔助虛擬化:I/O硬件輔助虛擬化也被稱為I/O透傳。在這種方式中,虛擬化功能是在硬件層面完成的,直接將硬件層面的虛擬I/O資源提供給不同的虛擬機(jī)使用,不用經(jīng)過Hypervisor這一層。采用I/O硬件輔助虛擬化,其性能比前面兩種方式好。1.2.4 虛擬化主流技術(shù)KVM(Kernel-BasedVirtualMachine)即基于內(nèi)核的虛擬化,是Hypervisor的一種。KVM的架構(gòu)如圖所示,在KVM中,其將虛擬化功能KVM模塊嵌入主機(jī)的Linux操作系統(tǒng)內(nèi)核完成虛擬化,這個KVM模塊主要負(fù)責(zé)CPU和內(nèi)存的虛擬化功能,而I/O方面的虛擬化則主要由開源的模擬器QEMU完成。KVM虛擬化模塊和QEMU共同組成了KVM虛擬化解決方案。KVM1.2.4 虛擬化主流技術(shù)另一個比較有名的開源虛擬化產(chǎn)品就是XEN。XEN是由英國劍橋大學(xué)開發(fā)的,是Hypervisor中的一種。右圖所示為XEN的架構(gòu),在XEN虛擬化層中創(chuàng)建虛擬機(jī),在XEN中,虛擬機(jī)也被稱為域(Domain),Domain分為兩類,一類是普通的虛擬機(jī)DomainU,另一類是特殊的虛擬機(jī)Domain0。Domain0能夠直接和底層的硬件進(jìn)行交互,而DomainU不能直接和底層的硬件進(jìn)行交互,DomainU和硬件的交互是通過Domain0完成的。XEN1.1云計(jì)算簡介1.2虛擬化技術(shù)1.3分布式技術(shù)學(xué)習(xí)要點(diǎn)1.3.1 分布式概念集中式是指將一個系統(tǒng)所有的代碼都集中到一個項(xiàng)目中,同時將整個項(xiàng)目部署到一臺主機(jī)上的架構(gòu)方式。由于歷史原因,集中式技術(shù)多數(shù)用在傳統(tǒng)的金融、電信等領(lǐng)域,計(jì)算資源基本上分布在大型機(jī)/小型機(jī)上,而且在這些機(jī)器上運(yùn)行的軟件大多是“商用閉源”軟件。雖然采用集中式技術(shù)(架構(gòu))有項(xiàng)目部署簡單、管理成本低等優(yōu)勢,但是其也存在以下劣勢。集中式技術(shù)價格昂貴:集中式架構(gòu)的商用設(shè)備市場已被IBM、Oracle和EMC這3家巨頭公司壟斷,其軟硬件十分昂貴。自主安全性低:由于市場被商業(yè)巨頭壟斷,造成軟硬件技術(shù)封鎖,對使用集中式技術(shù)的企業(yè)來說,根據(jù)其業(yè)務(wù)的要求進(jìn)行相應(yīng)修改的難度非常大。擴(kuò)展伸縮性差:對于急速增長的業(yè)務(wù),如電商領(lǐng)域,需要去支撐其流量突發(fā)性強(qiáng)、高并發(fā)業(yè)務(wù)時,使用之前的設(shè)備配置已經(jīng)滿足不了激增的業(yè)務(wù)對底層資源的需求,這時,如果企業(yè)要增加相應(yīng)的資源配置,在采用集中式技術(shù)的情況下,只有去購買更高規(guī)格的配置,才能支撐業(yè)務(wù)的發(fā)展。靈活兼容性差:集中式技術(shù)無法支撐大數(shù)據(jù)、人工智能等新興技術(shù)的發(fā)展。(1)(2)(3)(4)1.3.1 分布式概念分布式是指根據(jù)業(yè)務(wù)需求將系統(tǒng)拆分成多個子系統(tǒng),多個子系統(tǒng)之間進(jìn)行協(xié)作來完成業(yè)務(wù)流程。一般來說,子系統(tǒng)會部署在集群中不同的服務(wù)器上面。以一個餐廳廚房的運(yùn)作為例,集中式就好比一個人完成從食材的采購、食材的清洗加工到將加工好的食品端到客戶面前的所有工作,如果客戶增加,就需要雇傭更多的人,這些人的工作和第一個人的工作完全相同;而采用分布式技術(shù),就是對食材的采購、食材的清洗加工和將加工好的食品端到客戶面前等工作進(jìn)行分工,每個人負(fù)責(zé)不同的部分,當(dāng)客戶增加時,可以增添相應(yīng)數(shù)量的人完成不同的工作。采用分布式技術(shù)有以下優(yōu)點(diǎn)。分布式概述降低業(yè)務(wù)之間的耦合度靈活的部署方式對業(yè)務(wù)進(jìn)行靈活地開發(fā)1231.3.2 分布式技術(shù)原理分布式協(xié)同主要解決分布式系統(tǒng)中數(shù)據(jù)和狀態(tài)的一致性問題。在集中式系統(tǒng)中,系統(tǒng)的數(shù)據(jù)和狀態(tài)是高度一致的,但是在分布式系統(tǒng)中,其數(shù)據(jù)和狀態(tài)的一致性是較難保證的。CAP理論能夠?qū)@一問題的解決提供相應(yīng)的理論指導(dǎo)。CAP理論指的是分布式系統(tǒng)的一致性(Consistency)、可用性(Availability)和分區(qū)容錯性(PartitionTolerance)。分布式協(xié)同一致性指的是所有的節(jié)點(diǎn)能夠訪問同一份最新的數(shù)據(jù)可用性指的是所有的用戶訪問能夠得到正確的響應(yīng)分區(qū)容錯性指的是分布式系統(tǒng)能夠容忍多個節(jié)點(diǎn)之間的信息不同步針對分布式系統(tǒng)一致性問題,在CAP理論的基礎(chǔ)上,eBay的架構(gòu)師提出了BASE理論[基本可用(BasicallyAvailable)+軟狀態(tài)(SoftState)+最終一致性(EventuallyConsistent)],其核心思想是如果無法保證CAP理論中提出的強(qiáng)一致性,則可以結(jié)合業(yè)務(wù)自身的特性,來保證業(yè)務(wù)的最終一致性。1.3.2 分布式技術(shù)原理在單體應(yīng)用中,所有的定時任務(wù)都是在一個服務(wù)器的一套程序中運(yùn)行的,而在分布式系統(tǒng)中,不同的定時任務(wù)會被拆分到不同的子系統(tǒng)中,同時,這些子系統(tǒng)可能會被重復(fù)部署在不同的設(shè)備上,在這種情況下,如何避免同一任務(wù)的重復(fù)處理呢?如圖所示,在電商場景下,可以看到在單體應(yīng)用中電商相關(guān)功能模塊全都被部署在同一服務(wù)器中,由于業(yè)務(wù)增長,訪問量增加,導(dǎo)致原有的單體應(yīng)用無法承載現(xiàn)有訪問量,因此需要對單體應(yīng)用進(jìn)行分布式改造。但是,在原來單體應(yīng)用中的定時任務(wù),可能會在分布式應(yīng)用中被重復(fù)處理,那么,在處理過程中,哪些任務(wù)需要優(yōu)先處理也是需要解決的問題。分布式調(diào)度1.3.2 分布式技術(shù)原理在分布式架構(gòu)中,主要包括單體調(diào)度和兩層調(diào)度這兩種方式。在單體調(diào)度中,分布式系統(tǒng)集群中只有一個節(jié)點(diǎn)運(yùn)行調(diào)度進(jìn)程,這個節(jié)點(diǎn)對集群中的其他節(jié)點(diǎn)都有訪問權(quán)限,該節(jié)點(diǎn)可以搜集其他節(jié)點(diǎn)的資源情況、狀態(tài)信息等,同時,還可以根據(jù)用戶請求下發(fā)任務(wù)到具體的節(jié)點(diǎn)。單體調(diào)度一般被用于小規(guī)模的集群中,能夠適應(yīng)單一的業(yè)務(wù)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市軌道交通光纜施工合同
- 體育場館用地競標(biāo)居間合同
- 2024年財(cái)務(wù)顧問服務(wù)合同標(biāo)的為上市公司并購重組
- 證券投資公司參股管理流程
- 教育機(jī)構(gòu)對賬管理規(guī)范
- 書店勤雜工聘用合同
- 建筑工程審計(jì)評估勞務(wù)合同
- 農(nóng)業(yè)科技轉(zhuǎn)化種植合作
- 2025進(jìn)口設(shè)備補(bǔ)償貿(mào)易合同范文
- 2024年鮮花保鮮冷庫協(xié)議
- 低空經(jīng)濟(jì)產(chǎn)業(yè)園項(xiàng)目可行性研究報(bào)告
- 中國神話故事繪本倉頡造字
- 消化道出血護(hù)理新進(jìn)展
- MOOC 心理健康與創(chuàng)新能力-電子科技大學(xué) 中國大學(xué)慕課答案
- 黃蒿界礦井及選煤廠建設(shè)項(xiàng)目環(huán)境影響報(bào)告書
- 感動中國人物張桂梅心得體會(30篇)
- 2024年云南昆明市公安局文職輔警招聘筆試參考題庫附帶答案詳解
- 采購計(jì)劃員年終工作總結(jié)
- 技術(shù)總監(jiān)年度述職報(bào)告
- 第十四章出口管制課件
- 常用井下工具原理與用途課件
評論
0/150
提交評論