




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、云 計(jì)算與虛擬化技術(shù)Cloud Computing1第三章云 計(jì)算與虛擬化技術(shù)Cloud Computing1第三章2云計(jì)算故事-“分身術(shù)” 西游記中的孫悟空有個(gè)“分身術(shù)”的本領(lǐng),他從自己身上扯下一把毫毛,輕輕一吹,瞬間變出數(shù)百個(gè)“孫悟空”,很是神奇吧。 在云計(jì)算系統(tǒng)中,也有一種如同孫悟空“分身術(shù)”本領(lǐng)的技術(shù),那就是“虛擬化”。隨著計(jì)算機(jī)硬件技術(shù)的發(fā)展和配置的提升,大量的計(jì)算機(jī)資源會(huì)出現(xiàn)利用率低的問(wèn)題。同時(shí),隨著用戶業(yè)務(wù)的擴(kuò)展,每當(dāng)增加新的業(yè)務(wù)就需要采購(gòu)新的設(shè)備,而且業(yè)務(wù)與硬件緊密耦合,既降低了硬件資源的效能,又增加了建設(shè)投資和時(shí)間成本。如何在這些硬件資源上實(shí)現(xiàn)業(yè)務(wù)的動(dòng)態(tài)彈性擴(kuò)展并提高資源的效
2、益?那就是虛擬化技術(shù)。該技術(shù)可以讓一臺(tái)主機(jī)“變出”多臺(tái)虛擬主機(jī),象物理主機(jī)一樣,可以在這些虛擬機(jī)上運(yùn)行多種操作系統(tǒng),實(shí)現(xiàn)在一臺(tái)物理主機(jī)上同時(shí)運(yùn)行多臺(tái)安裝相同或不同操作系統(tǒng)的主機(jī)。第三章 云計(jì)算與虛擬化技術(shù)2云計(jì)算故事-“分身術(shù)”第三章 云計(jì)算與虛擬化技術(shù)3本章導(dǎo)讀 計(jì)算機(jī)虛擬化,實(shí)質(zhì)上就是一種計(jì)算機(jī)資源管理技術(shù)。通過(guò)虛擬化技術(shù),將一臺(tái)或多臺(tái)計(jì)算機(jī)的各種物理資源,如CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤及存儲(chǔ)等進(jìn)行抽象,統(tǒng)一形成邏輯上的“計(jì)算資源池”、“存儲(chǔ)資源池”、“網(wǎng)絡(luò)資源池”。虛擬機(jī)就是從這些資源池中動(dòng)態(tài)申請(qǐng)?zhí)摂MCPU(vCPU)、虛擬內(nèi)存、虛擬I/O、虛擬網(wǎng)卡等虛擬資源而創(chuàng)建的一臺(tái)邏輯主機(jī)。 如果物理
3、機(jī)資源允許,在一臺(tái)物理主機(jī)上可以創(chuàng)建多個(gè)虛擬主機(jī)。用戶如果后期業(yè)務(wù)需要擴(kuò)張,則可直接通過(guò)創(chuàng)建虛擬機(jī)的形式,完成新業(yè)務(wù)的部署和應(yīng)用,可大大節(jié)省投資并提高業(yè)務(wù)實(shí)施的效率。第三章 云計(jì)算與虛擬化技術(shù)3本章導(dǎo)讀第三章 云計(jì)算與虛擬化技術(shù)4本章學(xué)習(xí)目標(biāo) 虛擬化技術(shù),云計(jì)算核心技術(shù)之一,把云系統(tǒng)中的各種硬件資源進(jìn)行虛擬化后,可以根據(jù)用戶需求,實(shí)現(xiàn)資源動(dòng)態(tài)地彈性伸縮,提高資源利用率。借助云系統(tǒng)管理平臺(tái),可以對(duì)這些虛擬資源進(jìn)行管理和部署,簡(jiǎn)化了管理流程和維護(hù)工作,并具有負(fù)載均衡、動(dòng)態(tài)遷移、故障自動(dòng)隔離、系統(tǒng)主備自動(dòng)切換、容災(zāi)、災(zāi)備等高可用性等特點(diǎn)。 學(xué)習(xí)目標(biāo)理解什么是虛擬化以及虛擬化技術(shù)在云計(jì)算中的作用掌握計(jì)
4、算虛擬化的內(nèi)容(計(jì)算資源池)以及實(shí)現(xiàn)方式掌握存儲(chǔ)虛擬化的內(nèi)容(存儲(chǔ)資源池)以及實(shí)現(xiàn)方式掌握網(wǎng)絡(luò)虛擬化的內(nèi)容(網(wǎng)絡(luò)資源池)以及實(shí)現(xiàn)方式了解容器虛擬化、微服務(wù)、超融合等知識(shí)第三章 云計(jì)算與虛擬化技術(shù)4本章學(xué)習(xí)目標(biāo)第三章 云計(jì)算與虛擬化技術(shù)5 虛擬化,從廣義上來(lái)說(shuō),就是通過(guò)用映射或抽象的方式屏蔽物理設(shè)備復(fù)雜性,在其上層增加一個(gè)管理層面,統(tǒng)一管理、調(diào)配這些物理資源,使之更易于透明控制,有效簡(jiǎn)化基礎(chǔ)設(shè)施的建設(shè)和管理,增加IT資源如服務(wù)器、網(wǎng)絡(luò)和存儲(chǔ)等物理資源的利用率和使用效益。 虛擬化是對(duì)物理資源的邏輯表示,通過(guò)在物理硬件層之上添加虛擬化層,將硬件層的資源抽象成虛擬資源,形成各類資源池,提供給上層操作系
5、統(tǒng)或應(yīng)用使用,通過(guò)虛擬化層來(lái)屏蔽底層硬件差異所帶來(lái)的影響。3.1.1 什么是虛擬化3.1 虛擬化概述5 虛擬化,從廣義上來(lái)說(shuō),就是通過(guò)用映射或抽象的方式6 1959年,在國(guó)際信息處理大會(huì)上,克里斯托弗(Christopher Strachey)發(fā)表大型高速計(jì)算機(jī)中的時(shí)間共享(Time Sharing in Large Fast Computers)的學(xué)術(shù)報(bào)告,提出虛擬化的概念。虛擬化技術(shù)由此萌芽。 20世紀(jì)90年代,以VMware為代表的部分虛擬化軟件廠商采用一種軟件解決方案,以虛擬機(jī)監(jiān)視器(Virtual Machine Monitor,VMM)為中心,使X86架構(gòu)的服務(wù)器平臺(tái)實(shí)現(xiàn)虛擬化,目
6、前在X86構(gòu)架中絕大多數(shù)處理器都支持虛擬化技術(shù)。如今虛擬化技術(shù)已經(jīng)得到了飛速發(fā)展,幾乎所有云計(jì)算系統(tǒng)提供商都開(kāi)發(fā)了支持虛擬化技術(shù)的軟件。3.1.2 虛擬化產(chǎn)生背景3.1 虛擬化概述6 1959年,在國(guó)際信息處理大會(huì)上,克里斯托7虛擬化的本質(zhì)概括為:(1)在單一物理服務(wù)器上同時(shí)運(yùn)行多個(gè)虛擬機(jī)。(2)在同一服務(wù)器上的虛擬機(jī)之間相互隔離。(3)整個(gè)虛擬機(jī)都保存在文件中,可以通過(guò)移動(dòng)文件的方式來(lái)遷移該虛擬機(jī)(4)無(wú)需修改即可在任何服務(wù)器上運(yùn)行虛擬機(jī)。虛擬化的優(yōu)勢(shì)表現(xiàn)在:(1)提高硬件利用率。(2)降低能耗,綠色節(jié)能 。(3)提高IT運(yùn)維效率,系統(tǒng)管理人員減少 。(4)操作系統(tǒng)和硬件的解耦。但也因此會(huì)存
7、在風(fēng)險(xiǎn)和問(wèn)題:(1)虛擬化是對(duì)物理資源的再分配,如果虛擬機(jī)多了,可能會(huì)發(fā)生物理資源爭(zhēng)用問(wèn)題(2)引入虛擬化層之后,導(dǎo)致上層系統(tǒng)應(yīng)用出錯(cuò)概率增加,從而導(dǎo)致故障排查困難。當(dāng)某臺(tái)物理服務(wù)器宕機(jī),影響到其上所有虛擬機(jī)中的業(yè)務(wù)使用。3.1.3 虛擬化的本質(zhì)、優(yōu)勢(shì)與問(wèn)題3.1 虛擬化概述7虛擬化的本質(zhì)概括為:3.1.3 虛擬化的本質(zhì)、優(yōu)勢(shì)與問(wèn)題38 根據(jù)虛擬化使用目的、應(yīng)用領(lǐng)域和范圍,可以有多種虛擬化類型,分別對(duì)各種資源實(shí)現(xiàn)虛擬化管理。 虛擬化對(duì)象主要包括對(duì)計(jì)算資源虛擬化、網(wǎng)絡(luò)虛擬化、存儲(chǔ)虛擬化、桌面虛擬化以及應(yīng)用虛擬化。 虛擬化實(shí)現(xiàn)方式主要包括全虛擬化、半虛擬化和硬件輔助虛擬化。 從主機(jī)系統(tǒng)虛擬化來(lái)劃分
8、,主要有寄居虛擬化、裸金屬虛擬化、操作系統(tǒng)虛擬化、函數(shù)庫(kù)虛擬化等類型。3.2 虛擬化類型8 根據(jù)虛擬化使用目的、應(yīng)用領(lǐng)域和范圍,可以有9(1)寄居虛擬化 寄居虛擬化就是在宿主機(jī)操作系統(tǒng)之上安裝虛擬化應(yīng)用程序,通過(guò)它可以構(gòu)建一個(gè)虛擬化的環(huán)境,在這個(gè)虛擬化的環(huán)境里,可以安裝各種操作系統(tǒng),滿足用戶對(duì)操作系統(tǒng)的要求。3.2 虛擬化類型9(1)寄居虛擬化3.2 虛擬化類型10(2)裸金屬虛擬化 裸金屬虛擬化也稱為硬件抽象層虛擬化,其實(shí)現(xiàn)的方式是直接在硬件層之上部署虛擬化平臺(tái)軟件,而不再需要宿主機(jī)操作系統(tǒng)來(lái)支撐,由于客戶機(jī)操作系統(tǒng)所看到的是虛擬化層,因此,可以認(rèn)為客戶機(jī)操作系統(tǒng)的功能和在宿主機(jī)操作系統(tǒng)功能
9、幾乎沒(méi)有什么區(qū)別。3.2 虛擬化類型10(2)裸金屬虛擬化3.2 虛擬化類型11(3)操作系統(tǒng)虛擬化 操作系統(tǒng)虛擬化指的是宿主機(jī)操作系統(tǒng)的內(nèi)核提供多個(gè)相互隔離的實(shí)例。這些實(shí)例并不是平常說(shuō)的虛擬機(jī),而是容器(容器可以看作是一臺(tái)真實(shí)的計(jì)算機(jī),里面有自己的獨(dú)立文件系統(tǒng)、網(wǎng)絡(luò)、系統(tǒng)設(shè)置、函數(shù)庫(kù)等),該虛擬化是由宿主機(jī)操作系統(tǒng)本身的內(nèi)核提供的。3.2 虛擬化類型11(3)操作系統(tǒng)虛擬化3.2 虛擬化類型12(4)函數(shù)虛擬化 所有應(yīng)用程序編寫都需要調(diào)用庫(kù)函數(shù)API接口,利用庫(kù)函數(shù)為應(yīng)用程序提供一組服務(wù),使得應(yīng)用程序編寫更加簡(jiǎn)單。不同的操作系統(tǒng)有自己獨(dú)立的函數(shù)庫(kù)接口,API接口和硬件沒(méi)有多大關(guān)系,但是和操作
10、系統(tǒng)密切關(guān)聯(lián)。3.2 虛擬化類型12(4)函數(shù)虛擬化3.2 虛擬化類型13 計(jì)算虛擬化實(shí)質(zhì)上就是對(duì)物理主機(jī)的CPU、內(nèi)存、I/O等服務(wù)器硬件資源的虛擬化,形成虛擬資源池,即“計(jì)算資源池”。3.3 計(jì)算虛擬化3.3.1 什么是計(jì)算虛擬化13 計(jì)算虛擬化實(shí)質(zhì)上就是對(duì)物理主機(jī)的CPU、14(1)CPU虛擬化半虛擬化:是指VMM只模擬了部分硬件,是通過(guò)修改客戶機(jī)操作系統(tǒng)內(nèi)核代碼來(lái)解決虛擬化漏洞問(wèn)題。全虛擬化:是指VMM模擬了完整的底層硬件。硬件輔助虛擬化:借助CPU專有技術(shù)的支持來(lái)實(shí)現(xiàn)高效的全虛擬化,例如Intel-VT技術(shù)、AMD-V都是硬件輔助虛擬化支持技術(shù)。(2)內(nèi)存虛擬化 把物理機(jī)的真實(shí)物理內(nèi)
11、存統(tǒng)一管理,包裝成多份虛擬的內(nèi)存給若干虛擬機(jī)使用。 (3)I/O虛擬化 VMM必須通過(guò)I/O虛擬化的方式來(lái)復(fù)用有限的外設(shè)資源。VMM截獲客戶操作系統(tǒng)對(duì)設(shè)備的訪問(wèn)請(qǐng)求,然后通過(guò)軟件的方式來(lái)模擬真實(shí)設(shè)備的效果。3.3 計(jì)算虛擬化3.3.2 計(jì)算虛擬化資源類型14(1)CPU虛擬化3.3 計(jì)算虛擬化3.3.2 計(jì)算虛擬15 存儲(chǔ)虛擬化(Storage Virtualization),通俗地講就是對(duì)各種存儲(chǔ)硬件資源進(jìn)行抽象化表現(xiàn),是將資源的邏輯映像與物理存儲(chǔ)分開(kāi),從而為系統(tǒng)和管理員提供一幅簡(jiǎn)化、無(wú)縫的資源虛擬視圖。對(duì)于用戶來(lái)說(shuō),虛擬化的存儲(chǔ)資源就像是一個(gè)巨大的“存儲(chǔ)池”,用戶不會(huì)看到具體的磁盤、磁帶,
12、也不必關(guān)心自己的數(shù)據(jù)經(jīng)過(guò)哪一條路徑通往哪一個(gè)具體的存儲(chǔ)設(shè)備。從管理的角度來(lái)看,虛擬存儲(chǔ)池是采取集中化的管理,并根據(jù)具體的需求把存儲(chǔ)資源動(dòng)態(tài)地分配給各個(gè)應(yīng)用。3.4 存儲(chǔ)虛擬化3.4.1 什么是存儲(chǔ)虛擬化15 存儲(chǔ)虛擬化(Storage Virtua16 (1)對(duì)存儲(chǔ)虛擬化在不同的位置上可以分為:基于主機(jī)的虛擬化、基于存儲(chǔ)設(shè)備的虛擬化、基于存儲(chǔ)網(wǎng)絡(luò)的虛擬化。 (2)在不同的存儲(chǔ)設(shè)備和數(shù)據(jù)組織層面上可以分為:數(shù)據(jù)塊虛擬化、磁盤虛擬化、磁帶或磁帶庫(kù)虛擬化、文件系統(tǒng)或者其它設(shè)備虛擬化。 (3)從存儲(chǔ)虛擬化的拓?fù)浣Y(jié)構(gòu)來(lái)講,有對(duì)稱式和非對(duì)稱式兩種。從虛擬化實(shí)現(xiàn)的方式也可分為帶內(nèi)In-Band虛擬化和帶外O
13、ut-of-Band虛擬化。3.4 存儲(chǔ)虛擬化3.4.2 存儲(chǔ)虛擬化分類16 (1)對(duì)存儲(chǔ)虛擬化在不同的位置上可以分為:基17 (1)異構(gòu)平臺(tái)整合 使用一個(gè)集中的虛擬化設(shè)備,將不同型號(hào)和檔次的異構(gòu)存儲(chǔ)系統(tǒng)進(jìn)行統(tǒng)一的池化,在這個(gè)基礎(chǔ)之上,做統(tǒng)一的管理和分配,極大節(jié)省了運(yùn)維成本,在不同的存儲(chǔ)之間架起一道橋梁,便于管理和分配資源。 (2)增加數(shù)據(jù)管理功能 通過(guò)存儲(chǔ)虛擬化統(tǒng)一管理平臺(tái)后,可以讓低端存儲(chǔ)卷附加上快照、CDP以及遠(yuǎn)程數(shù)據(jù)復(fù)制、卷鏡像、讀寫性能優(yōu)化等高級(jí)功能。 (3)數(shù)據(jù)遷移/異構(gòu)容災(zāi) 如果在傳統(tǒng)的異構(gòu)存儲(chǔ)系統(tǒng)之間不能實(shí)現(xiàn)直接相互復(fù)制,必須依靠虛擬化技術(shù),數(shù)據(jù)遷移是企業(yè)存儲(chǔ)系統(tǒng)中最具挑戰(zhàn)的一
14、種數(shù)據(jù)管理操作,尤其是異構(gòu)存儲(chǔ)系統(tǒng)之間的數(shù)據(jù)遷移。 (4)軟件定義存儲(chǔ) 軟件定義存儲(chǔ)是虛擬化存儲(chǔ)的另一種方式,利用分散的、低廉的X86架構(gòu)的服務(wù)器磁盤,通過(guò)軟件的方式,把存儲(chǔ)資源進(jìn)行再分配,構(gòu)建分布式存儲(chǔ)系統(tǒng),提高系統(tǒng)的兼容性、可擴(kuò)展性,降低存儲(chǔ)系統(tǒng)與硬件設(shè)備的依賴。3.4 存儲(chǔ)虛擬化3.4.3 存儲(chǔ)虛擬化的意義17 (1)異構(gòu)平臺(tái)整合3.4 存儲(chǔ)虛擬化3.4.18 (1)虛擬機(jī)的虛擬網(wǎng)卡 數(shù)據(jù)包從虛擬機(jī)的虛擬網(wǎng)卡流出,通過(guò)Hypervisor內(nèi)部的虛擬交換機(jī),再經(jīng)過(guò)服務(wù)器的物理網(wǎng)卡流出到上聯(lián)交換機(jī)。 (2)服務(wù)器到網(wǎng)絡(luò)的連接即虛擬交換機(jī) 分為基于CPU技術(shù)實(shí)現(xiàn)的,,基于物理網(wǎng)卡技術(shù)實(shí)現(xiàn)的和基
15、于物理交換機(jī)技術(shù)實(shí)現(xiàn)的3種虛擬交換類型。 (3)硬件設(shè)備虛擬化 通過(guò)路由器集群技術(shù)和交換機(jī)堆疊技術(shù),將多臺(tái)物理機(jī)合并成一臺(tái)虛擬網(wǎng)絡(luò)設(shè)備,實(shí)現(xiàn)跨設(shè)備鏈路聚合。 (4)虛擬網(wǎng)絡(luò) 包括層疊網(wǎng)絡(luò)、虛擬專用網(wǎng)絡(luò)、數(shù)據(jù)中心使用較多的虛擬二層延伸網(wǎng)絡(luò)。3.5 網(wǎng)絡(luò)虛擬化3.5.1 網(wǎng)絡(luò)虛擬化內(nèi)容18 (1)虛擬機(jī)的虛擬網(wǎng)卡3.5 網(wǎng)絡(luò)虛擬化319 軟件定義網(wǎng)絡(luò)(SoftwareDefinedNetwork,SDN)是網(wǎng)絡(luò)虛擬化的一種實(shí)現(xiàn)方式。其核心技術(shù)OpenFlow通過(guò)將網(wǎng)絡(luò)設(shè)備的控制面與數(shù)據(jù)面分離開(kāi)來(lái),從而實(shí)現(xiàn)了網(wǎng)絡(luò)流量的靈活控制,使網(wǎng)絡(luò)作為管道變得更加智能,為核心網(wǎng)絡(luò)及應(yīng)用的創(chuàng)新提供了良好的平臺(tái)。3.
16、5 網(wǎng)絡(luò)虛擬化3.5.2 軟件定義網(wǎng)絡(luò)19 軟件定義網(wǎng)絡(luò)(SoftwareDefi20 Docker是基于軟件平臺(tái)的容器引擎,又稱為Container as a Service(CaaS),它把應(yīng)用程序運(yùn)行所需要的環(huán)境打包放到隔離的容器中,實(shí)現(xiàn)輕量級(jí)的操作系統(tǒng)虛擬化解決方案。3.6 容器虛擬化20 Docker是基于軟件平臺(tái)的容器引擎,又21 (1)Vmware VMware服務(wù)器虛擬化使企業(yè)的數(shù)據(jù)中心轉(zhuǎn)變?yōu)殪`活的云計(jì)算基礎(chǔ)架構(gòu),VMware vSphere是企業(yè)級(jí)虛擬化解決方案,它是構(gòu)建云計(jì)算環(huán)境的基礎(chǔ)平臺(tái)。 (2)Hyper-v Hyper-v是微軟的一款虛擬化產(chǎn)品,它是基于硬件輔助的全虛
17、擬化技術(shù)。作為一個(gè)虛擬化產(chǎn)品,Hyper-v具有一個(gè)很特別的要求:處理器必須支持AMD-V或者Intel VT技術(shù),也就是說(shuō),處理器必須具備硬件輔助虛擬化技術(shù)。 (3)FusionCompute FusionCompute是華為FusionSphere云計(jì)算操作系統(tǒng)的基礎(chǔ)軟件,主要由虛擬化基礎(chǔ)平臺(tái)和云基礎(chǔ)服務(wù)平臺(tái)組成,主要負(fù)責(zé)硬件資源的虛擬化,以及對(duì)虛擬資源、業(yè)務(wù)資源、用戶資源的集中管理。 (4) Xen Xen是一個(gè)開(kāi)放源代碼虛擬機(jī)監(jiān)視器,是由英國(guó)劍橋大學(xué)計(jì)算機(jī)實(shí)驗(yàn)室開(kāi)發(fā)的一個(gè)虛擬化開(kāi)源項(xiàng)目,它是一個(gè)基于X86架構(gòu)開(kāi)源虛擬化技術(shù),可以在一套物理硬件上安全的執(zhí)行多個(gè)虛擬機(jī)。3.7 虛擬化典型平
18、臺(tái)介紹21 (1)Vmware3.7 虛擬化典型平臺(tái)介22 微服務(wù)是一種將應(yīng)用分解成小的自治服務(wù)的軟件架構(gòu),每個(gè)服務(wù)被獨(dú)立地開(kāi)發(fā)、測(cè)試和部署,服務(wù)間使用約定的API 進(jìn)行通信,所有的服務(wù)組合在一起,通過(guò)API Gateway向外提供服務(wù)。 微服務(wù)是把業(yè)務(wù)進(jìn)行原子性的拆分,并以進(jìn)程的形式獨(dú)立地運(yùn)行。在傳統(tǒng)架構(gòu)中需要一臺(tái)虛擬機(jī)來(lái)運(yùn)行一個(gè)微小的應(yīng)用,會(huì)造成資源浪費(fèi),而以容器為架構(gòu),微服務(wù)獨(dú)立運(yùn)行在容器中,與主機(jī)操作系統(tǒng)共享硬件資源,更加快速、小巧,而不需要VMM中間層虛擬化的翻譯,資源利用率更高、響應(yīng)速度更快。 微服務(wù)以容器為架構(gòu)、開(kāi)發(fā)、部署,運(yùn)維以DevOps為模式,已經(jīng)成為下一代PaaS的典型應(yīng)
19、用場(chǎng)景。3.8 微服務(wù)22 微服務(wù)是一種將應(yīng)用分解成小的自治服務(wù)的軟23 超融合基礎(chǔ)架構(gòu)(Hyper-Converged Infrastructure,HCI)也稱為超融合架構(gòu),是指在同一套單元設(shè)備(X86架構(gòu)的服務(wù)器)中不僅僅具備計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)和服務(wù)器虛擬化等資源和技術(shù),而且還包括緩存加速、重復(fù)數(shù)據(jù)刪除、在線數(shù)據(jù)壓縮、備份軟件、快照技術(shù)等元素,而多節(jié)點(diǎn)可以通過(guò)網(wǎng)絡(luò)聚合起來(lái),實(shí)現(xiàn)模塊化的無(wú)縫橫向擴(kuò)展(Scale-Out),形成統(tǒng)一的資源池。超融合架構(gòu)將虛擬化計(jì)算和存儲(chǔ)整合到同一個(gè)系統(tǒng)平臺(tái)。軟件定義分布式存儲(chǔ)是超融合的核心。分布式存儲(chǔ)解決了集中式共享存儲(chǔ)應(yīng)用在虛擬化場(chǎng)景里的問(wèn)題。3.9 超融合
20、23 超融合基礎(chǔ)架構(gòu)(Hyper-Conver Platform Computing Inc. 2003 - Proprietary & Confidential 2424小結(jié) 虛擬化計(jì)算虛擬化 (1)計(jì)算虛擬化四種類型包括:寄居虛擬化。裸金屬虛擬化。操作系統(tǒng)虛擬化。函數(shù)虛擬化。(2)從技術(shù)層面計(jì)算虛擬化包括三種資源:CPU虛擬化。內(nèi)存虛擬化。I/O虛擬化。 Platform Computing Inc. 2003 Platform Computing Inc. 2003 - Proprietary & Confidential 2525本章小結(jié)存儲(chǔ)虛擬化 (1)對(duì)存儲(chǔ)虛擬化在不同的位置上可以
21、分為:基于主機(jī)的虛擬化、基于存儲(chǔ)設(shè)備的虛擬化、基于存儲(chǔ)網(wǎng)絡(luò)的虛擬化。 ( 2)在不同的存儲(chǔ)設(shè)備和數(shù)據(jù)組織層面上可以分為:數(shù)據(jù)塊虛擬化、磁盤虛擬化、磁帶或磁帶庫(kù)虛擬化、文件系統(tǒng)或者其它設(shè)備虛擬化。 (3)從存儲(chǔ)虛擬化的拓?fù)浣Y(jié)構(gòu)來(lái)講,有對(duì)稱式和非對(duì)稱式兩種。從虛擬化實(shí)現(xiàn)的方式也可分為帶內(nèi)In-Band虛擬化和帶外Out-of-Band虛擬化。 公有云存儲(chǔ)設(shè)備向著存儲(chǔ)服務(wù)的方式發(fā)生轉(zhuǎn)變,即通過(guò)軟件定義存儲(chǔ),實(shí)現(xiàn)分布式存儲(chǔ)虛擬化。 Platform Computing Inc. 2003 Platform Computing Inc. 2003 - Proprietary & Confidential
22、 2626網(wǎng)絡(luò)虛擬化 網(wǎng)絡(luò)虛擬化是云計(jì)算系統(tǒng)中的網(wǎng)絡(luò)軟硬件資源進(jìn)行虛擬化的過(guò)程,形成網(wǎng)絡(luò)資源池化。這些資源包括: 虛擬機(jī)的虛擬網(wǎng)卡。服務(wù)器到網(wǎng)絡(luò)的連接即虛擬交換機(jī)。網(wǎng)絡(luò)設(shè)備虛擬化。虛擬網(wǎng)絡(luò),包括層疊網(wǎng)絡(luò)、虛擬專用網(wǎng)絡(luò)、大二層網(wǎng)絡(luò)等。本章小結(jié) Platform Computing Inc. 2003 項(xiàng)目名稱:利用VMware Workstation虛擬化軟件實(shí)現(xiàn)在一臺(tái)電腦上安裝多種操作系統(tǒng)。如果想在自己的筆記本電腦、家用電腦或部門服務(wù)器上安裝多個(gè)操作系統(tǒng)如Windows或Linux,并把不同的應(yīng)用安裝在對(duì)應(yīng)的操作系統(tǒng)主機(jī)上,但又不想破壞原來(lái)物理機(jī)的操作系統(tǒng)啟動(dòng)與管理環(huán)境,那么采用創(chuàng)建虛擬機(jī)環(huán)境
23、是一個(gè)非常不錯(cuò)的選擇。VMware Workstation是一套不錯(cuò)的虛擬化軟件,可以安裝在筆記本、臺(tái)式機(jī)等客戶機(jī)或工作組服務(wù)器上,實(shí)現(xiàn)對(duì)虛擬機(jī)和應(yīng)用的創(chuàng)建于管理。 背景知識(shí):VMware Workstation是一款桌面虛擬計(jì)算機(jī)軟件,是典型的寄居虛擬化軟件,提供用戶可在單一的物理機(jī)上同時(shí)運(yùn)行多個(gè)多種操作系統(tǒng),是進(jìn)行開(kāi)發(fā)、測(cè)試 、部署新的應(yīng)用程序的最佳解決方案。VMware Workstation可在一部實(shí)體機(jī)器上模擬完整的網(wǎng)絡(luò)環(huán)境,創(chuàng)建可便于攜帶的虛擬機(jī)。 27拓展項(xiàng)目 項(xiàng)目名稱:利用VMware Workstat28拓展項(xiàng)目28拓展項(xiàng)目云 計(jì)算與分布式技術(shù)Cloud Computing2
24、9第四章云 計(jì)算與分布式技術(shù)Cloud Computing29第四章30云計(jì)算故事-“雙十一”背后 好多人在淘寶上淘過(guò)寶貝,特別是每年的“雙十一”,產(chǎn)生了海量的交易數(shù)據(jù),這些數(shù)據(jù)其實(shí)不是存儲(chǔ)在某一臺(tái)存儲(chǔ)服務(wù)器上,每單交易從商品的檢索到完成下單的一系列過(guò)程,可不是一臺(tái)服務(wù)器幫你完成的。阿里云平臺(tái)單集群早已超越5000臺(tái),同時(shí)支持多集群跨異地機(jī)房計(jì)算,實(shí)現(xiàn)業(yè)務(wù)的并行處理和分布式計(jì)算。 在電商平臺(tái)下單,一筆買賣就是一個(gè)“事務(wù)”,對(duì)買家賬戶進(jìn)行扣款,對(duì)賣家賬戶進(jìn)行入賬;同時(shí),要扣庫(kù)存、更新訂單狀態(tài),而庫(kù)存和訂單一般屬于不同的數(shù)據(jù)庫(kù),甚至是在不同物理位置的云數(shù)據(jù)中心主機(jī)上,如何保證這一系列數(shù)據(jù)處理的一致
25、性? 淘寶網(wǎng)整個(gè)交易系統(tǒng)是個(gè)復(fù)雜的系統(tǒng),由分布在不同地域的云計(jì)算數(shù)據(jù)中心,通過(guò)分工與協(xié)同,完成交易的整個(gè)過(guò)程,其中負(fù)責(zé)存儲(chǔ)海量數(shù)據(jù)的分布式數(shù)據(jù)庫(kù)OceanBase是支付寶的核心系統(tǒng)之一。第四章 云計(jì)算與分布式技術(shù)30第四章 云計(jì)算與分布式技術(shù)31本章導(dǎo)讀 云計(jì)算系統(tǒng)可以是一個(gè)龐大的信息處理系統(tǒng),在該系統(tǒng)中,與大量服務(wù)器、存儲(chǔ)設(shè)備、數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)設(shè)備等分布在不同網(wǎng)絡(luò)位置和物理位置。該系統(tǒng)就是利用分布式技術(shù),將一個(gè)巨大任務(wù),劃分成多個(gè)子任務(wù)分配給系統(tǒng)中不同的處理節(jié)點(diǎn)上,然后把各個(gè)節(jié)點(diǎn)的處理結(jié)果進(jìn)行有機(jī)整合,最終產(chǎn)生所需要的結(jié)果。分布式技術(shù)既提高了工作效能,又充分盤活了系統(tǒng)中各種空閑的軟硬件資源。 分
26、布式系統(tǒng)是云計(jì)算中最基礎(chǔ)的架構(gòu),其中包括分布式應(yīng)用和服務(wù)。分布式系統(tǒng)把應(yīng)用和服務(wù)進(jìn)行分層和分割,然后將應(yīng)用和服務(wù)模塊進(jìn)行分布式部署,既提高了并發(fā)訪問(wèn)能力、減少數(shù)據(jù)庫(kù)連接和資源消耗,還能使用不同應(yīng)用復(fù)用共同的服務(wù),使業(yè)務(wù)易于擴(kuò)展。第四章 云計(jì)算與分布式技術(shù)31本章導(dǎo)讀第四章 云計(jì)算與分布式技術(shù)32本章學(xué)習(xí)目標(biāo) 隨著計(jì)算的發(fā)展,有些應(yīng)用需要非常巨大的計(jì)算能力才能完成,如果采用集中式計(jì)算,需要耗費(fèi)較長(zhǎng)的時(shí)間來(lái)完成,分布式計(jì)算將應(yīng)用分解成許多小的部分,分配給多臺(tái)計(jì)算機(jī)處理,這樣可以節(jié)約整體計(jì)算時(shí)間,大大提高計(jì)算效率。 學(xué)習(xí)目標(biāo) 理解分布式系統(tǒng)概念 理解分布式計(jì)算、分布式文件系統(tǒng)、分布式數(shù)據(jù)庫(kù)、分布式存
27、儲(chǔ)等技術(shù)特點(diǎn) 了解分布式消息隊(duì)列 了解分布式系統(tǒng)在云計(jì)算中的應(yīng)用第四章 云計(jì)算與分布式技術(shù)32本章學(xué)習(xí)目標(biāo)第四章 云計(jì)算與分布式技術(shù)33 什么是分布式系統(tǒng)(Distributed System)?分布式系統(tǒng)是若干獨(dú)立計(jì)算機(jī)的集合,這些計(jì)算機(jī)對(duì)于用戶來(lái)說(shuō)就像是單個(gè)相關(guān)系統(tǒng)。 分布式系統(tǒng)由多個(gè)業(yè)務(wù)節(jié)點(diǎn)組成,每個(gè)節(jié)點(diǎn)可以由廉價(jià)的終端或昂貴的服務(wù)器組成,構(gòu)成一個(gè)獨(dú)立的運(yùn)算單元,它們分散在不同的地理位置,基于通信網(wǎng)絡(luò)互聯(lián)和分布式軟件系統(tǒng)來(lái)執(zhí)行任務(wù)。 分布式系統(tǒng)對(duì)用戶來(lái)說(shuō)就像一臺(tái)計(jì)算機(jī)一樣,作為整體對(duì)外向用戶提供資源,但對(duì)用戶而言整個(gè)系統(tǒng)是透明的。分布式系統(tǒng)根據(jù)網(wǎng)絡(luò)的體系結(jié)構(gòu)分為總線型和網(wǎng)絡(luò)型;根據(jù)系統(tǒng)架
28、構(gòu)分為分布式存儲(chǔ)和分布式計(jì)算。4.1 什么是分布式系統(tǒng)33 什么是分布式系統(tǒng)(Distributed34 分布式系統(tǒng)特點(diǎn): (1)一致性。即數(shù)據(jù)的一致性,關(guān)聯(lián)數(shù)據(jù)之間的邏輯關(guān)系是否正確和完整,無(wú)論對(duì)數(shù)據(jù)怎樣操作,都要保持?jǐn)?shù)據(jù)的完整性和可用性,沒(méi)有臟數(shù)據(jù)產(chǎn)生。 (2)可用性。用戶發(fā)出的各種請(qǐng)求,在服務(wù)器端能及時(shí)作出正確的響應(yīng),而不是錯(cuò)誤的或是沒(méi)有響應(yīng)。 (3)容錯(cuò)性,。當(dāng)一個(gè)節(jié)點(diǎn)出現(xiàn)故障時(shí),系統(tǒng)中其它節(jié)點(diǎn)能夠提供正常的服務(wù),并對(duì)該節(jié)點(diǎn)進(jìn)行刪除和增加操作。4.1 什么是分布式系統(tǒng)34 分布式系統(tǒng)特點(diǎn):4.1 什么是分布式系統(tǒng)35 分布式計(jì)算,是一種計(jì)算方法,和集中式計(jì)算是相對(duì)的。隨著計(jì)算技術(shù)的發(fā)展
29、,有些應(yīng)用需要非常巨大的計(jì)算能力才能完成,如果采用集中式計(jì)算,需要耗費(fèi)相當(dāng)長(zhǎng)的時(shí)間來(lái)完成。分布式計(jì)算將該應(yīng)用分解成許多小的部分,分配給多臺(tái)計(jì)算機(jī)進(jìn)行處理。這樣可以節(jié)約整體計(jì)算時(shí)間,大大提高計(jì)算效率。 分布式計(jì)算就是讓兩個(gè)或多個(gè)軟件互相共享信息,這些軟件既可以在同一臺(tái)計(jì)算機(jī)上運(yùn)行,也可以通過(guò)網(wǎng)絡(luò)連接起來(lái)的多臺(tái)計(jì)算機(jī)同時(shí)運(yùn)行,然后共同完成一個(gè)或若干個(gè)任務(wù)得到結(jié)果。4.2.1 分布式計(jì)算4.2 什么是分布式系統(tǒng)35 分布式計(jì)算,是一種計(jì)算方法,和集中式計(jì)算36 網(wǎng)格計(jì)算是分布式計(jì)算的一種類型。網(wǎng)格計(jì)算在松耦合資源環(huán)境中的得到應(yīng)用,用來(lái)實(shí)現(xiàn)復(fù)雜的工作負(fù)載管理和信息虛擬化功能。網(wǎng)格計(jì)算也是一種與集群計(jì)算
30、非常相關(guān)的技術(shù)。網(wǎng)格計(jì)算的實(shí)質(zhì)就是組合與共享資源并確保系統(tǒng)安全,并通過(guò)利用大量異構(gòu)計(jì)算機(jī)的未用資源(CPU、磁盤存儲(chǔ)等),將其作為嵌入在分布式電信基礎(chǔ)設(shè)施中的一個(gè)虛擬的計(jì)算機(jī)集群,為解決大規(guī)模的計(jì)算問(wèn)題提供了一個(gè)分布式模型。 網(wǎng)格計(jì)算或分布式具有以下特點(diǎn): (1)稀有資源可以共享; (2)通過(guò)分布式計(jì)算可以在多臺(tái)計(jì)算機(jī)上平衡計(jì)算負(fù)載; (3)可以把程序放在最適合運(yùn)行它的計(jì)算機(jī)上。4.2.2 網(wǎng)格計(jì)算4.2 什么是分布式系統(tǒng)36 網(wǎng)格計(jì)算是分布式計(jì)算的一種類型。網(wǎng)格計(jì)算37 并行計(jì)算(Parallel Computing)是指同時(shí)使用多種計(jì)算資源解決計(jì)算問(wèn)題的過(guò)程,是提高計(jì)算機(jī)系統(tǒng)計(jì)算速度和處理
31、能力的一種有效手段。用多個(gè)處理器來(lái)協(xié)同求解同一問(wèn)題,即將被求解的問(wèn)題分解成若干個(gè)部分,各部分均由一個(gè)獨(dú)立的處理機(jī)來(lái)并行計(jì)算。通過(guò)并行計(jì)算集群完成數(shù)據(jù)的處理,再將處理的結(jié)果返回給用戶。 并行計(jì)算有以下特征: (1)將工作分離成離散部分,有助于同時(shí)解決。 (2)隨時(shí)并及時(shí)地執(zhí)行多個(gè)程序指令。 (3)多計(jì)算資源下解決問(wèn)題的耗時(shí)要少于單個(gè)計(jì)算資源下的耗時(shí)。4.3.1 什么是并行計(jì)算4.3 并行計(jì)算37 并行計(jì)算(Parallel Computin38 (1)云計(jì)算萌芽于并行計(jì)算 云計(jì)算的萌芽應(yīng)該從計(jì)算機(jī)的并行化開(kāi)始,并行機(jī)的出現(xiàn)是人們不滿足于CPU摩爾定率的增長(zhǎng)速度,希望把多個(gè)計(jì)算機(jī)并聯(lián)起來(lái),從而獲得
32、更快的計(jì)算速度。 (2)并行計(jì)算追求的高性能 在并行計(jì)算的時(shí)代,人們極力追求的是高速的計(jì)算、采用昂貴的服務(wù)器。例如,截至2018年11月,美國(guó)超級(jí)計(jì)算機(jī)“頂點(diǎn)”蟬聯(lián)冠軍,中國(guó)超算上榜總數(shù)仍居第一,數(shù)量比上期進(jìn)一步增加,占全部上榜超算總量的45%以上。中國(guó)超算“神威太湖之光”和“天河二號(hào)”分別位列第三、四名。 (3)云計(jì)算對(duì)于單節(jié)點(diǎn)的計(jì)算能力要求低 而云計(jì)算并不去追求使用昂貴的服務(wù)器,云中心的計(jì)算力和存儲(chǔ)力可隨著需要逐步增加,云計(jì)算的基礎(chǔ)架構(gòu)支持這一動(dòng)態(tài)、虛擬化擴(kuò)展的方式。4.3.2 并行計(jì)算與云計(jì)算4.3 并行計(jì)算38 (1)云計(jì)算萌芽于并行計(jì)算4.3.2 并行39 MapReduce是195
33、6年由圖靈獎(jiǎng)獲得者著名的人工智能專家McCarthy首次提出的,是LISP語(yǔ)言定義的函數(shù),是一種編程模型,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行計(jì)算。概念“Map(映射)”和“Reduce(歸約)”,是它的核心思想。它是面向大數(shù)據(jù)并行處理的計(jì)算模型、框架和平臺(tái)。 MapReduce是一個(gè)基于集群的高性能并行計(jì)算平臺(tái)(Cluster Infrastructure)。它允許用市場(chǎng)上普通的商用服務(wù)器構(gòu)成一個(gè)包含數(shù)十、數(shù)百至數(shù)千個(gè)節(jié)點(diǎn)的分布和并行計(jì)算集群。 MapReduce是一個(gè)并行計(jì)算與運(yùn)行軟件框架。 MapReduce是一個(gè)并行程序設(shè)計(jì)模型與方法(Programming Model & Metho
34、dology)。4.4 MapReduce簡(jiǎn)介39 MapReduce是1956年由圖靈獎(jiǎng)獲40 分布式文件系統(tǒng)(Distributed File System)就是分布式+文件系統(tǒng),從文件系統(tǒng)的客戶使用者來(lái)看,它就是一個(gè)標(biāo)準(zhǔn)的文件系統(tǒng),提供了一系列API,實(shí)現(xiàn)文件或目錄的創(chuàng)建、移動(dòng)、刪除和對(duì)文件的讀寫等操作。從內(nèi)部組織結(jié)構(gòu)來(lái)看,分布式的文件系統(tǒng)不再和普通文件系統(tǒng)一樣負(fù)責(zé)管理本地磁盤,它的文件內(nèi)容和目錄結(jié)構(gòu)都不存儲(chǔ)在本地磁盤上,而是通過(guò)網(wǎng)絡(luò)傳輸?shù)竭h(yuǎn)端系統(tǒng)上。 常見(jiàn)的分布式應(yīng)用級(jí)的文件系統(tǒng)有GFS、HDFS、Lustre、Ceph、TFS、FastDFS等。4.5 分布式存儲(chǔ)4.5.1 分布式文
35、件系統(tǒng)40 分布式文件系統(tǒng)(Distributed 41 典型的分布式文件系統(tǒng)包括:分布式文件系統(tǒng)、分布式鎖機(jī)制和分布式通信機(jī)制。如Google的分布式文件系統(tǒng)中GFS、Chubby和Protocol Buffer對(duì)應(yīng)著分布式文件系統(tǒng)、分布式鎖機(jī)制和分布式通信機(jī)制。 (1)GFS-Google的分布式文件系統(tǒng)。 (2)Chubby-分布式鎖服務(wù)。 (3)Protocol Buffer-是Google內(nèi)部使用類似XML和JSON的一種數(shù)據(jù)交換格式,并提供基于Java、C#和Python等多種語(yǔ)言的接口調(diào)用。4.5 分布式存儲(chǔ)4.5.2 分布式文件系統(tǒng)應(yīng)用41 典型的分布式文件系統(tǒng)包括:分布式文件
36、系統(tǒng)42 BigTable是一個(gè)分布式的半結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)系統(tǒng),被設(shè)計(jì)用來(lái)處理海量數(shù)據(jù),通常是分布在多臺(tái)普通服務(wù)器的PB級(jí)的數(shù)據(jù)。BigTable體系架構(gòu)主要包括三部分,如下圖:4.5 分布式存儲(chǔ)4.5.3 分布式數(shù)據(jù)庫(kù)BigTable42 BigTable是一個(gè)分布式的半結(jié)構(gòu)化數(shù)43 塊存儲(chǔ)指在一個(gè)RAID集中,提供固定大小的RAID 塊作為L(zhǎng)UN(邏輯單元號(hào))的卷。塊存儲(chǔ)通常是指磁盤陣列、硬盤、虛擬硬盤,它的使用方式與普通硬盤的使用方式完全一樣,DAS和SAN是兩種塊存儲(chǔ)的典型存儲(chǔ)方式。 分布式存儲(chǔ)軟件系統(tǒng)具有以下特點(diǎn): (1)高性能:分布式哈希數(shù)據(jù)路由,,數(shù)據(jù)分散存放,實(shí)現(xiàn)全局負(fù)載均衡,不
37、存在集中的數(shù)據(jù)熱點(diǎn),大容量分布式緩存; (2)高可靠:采用集群管理方式,不存在單點(diǎn)故障,靈活配置多數(shù)據(jù)副本,不同數(shù)據(jù)副本存放在不同的機(jī)架、服務(wù)器和硬盤上,單個(gè)物理設(shè)備故障不影響業(yè)務(wù)的使用,系統(tǒng)檢測(cè)到設(shè)備故障后可以自動(dòng)重建數(shù)據(jù)副本; (3)高擴(kuò)展:沒(méi)有集中式機(jī)頭,支持平滑擴(kuò)容,容量幾乎不受限制; (4)易管理:存儲(chǔ)軟件直接部署在服務(wù)器上,沒(méi)有單獨(dú)的存儲(chǔ)專用硬件設(shè)備,通過(guò)Web UI 的方式進(jìn)行軟件管理,配置簡(jiǎn)單。4.5 分布式存儲(chǔ)4.5.4 分布式塊存儲(chǔ)服務(wù)43 塊存儲(chǔ)指在一個(gè)RAID集中,提供固定大小的R44 對(duì)象存儲(chǔ)(Object Storage)是在2006年亞馬遜推出S3(Simple
38、Storage Service)時(shí)提出的,此后各廠商推出各種產(chǎn)品,形態(tài)各異,但從應(yīng)用場(chǎng)景上理解都大致相同,它的特征如下: (1)遠(yuǎn)程訪問(wèn)。對(duì)象存儲(chǔ)為云計(jì)算而生,存儲(chǔ)設(shè)備在數(shù)據(jù)中心,用戶遍布世界各地,通過(guò)Web服務(wù)協(xié)議(如REST、SOAP)實(shí)現(xiàn)對(duì)象的讀寫和存儲(chǔ)資源的訪問(wèn),通過(guò)滴用對(duì)象存儲(chǔ)本身提供的認(rèn)證密鑰進(jìn)行身份驗(yàn)證,通過(guò)控制列表訪問(wèn)單個(gè)對(duì)象或存儲(chǔ)段,使用REST接口來(lái)設(shè)置和管理訪問(wèn)控制列表。 (2)海量用戶。云服務(wù)需要支持海量的用戶,各個(gè)用戶之間可以相互共享、授權(quán),并且要保證數(shù)據(jù)不能泄露。 (3)無(wú)限擴(kuò)容。用戶產(chǎn)生的海量數(shù)據(jù)需要分布式對(duì)象存儲(chǔ),支持用戶存儲(chǔ)的數(shù)量無(wú)限多個(gè)。4.5 分布式存儲(chǔ)4
39、.5.5 分布式對(duì)象存儲(chǔ)服務(wù)44 對(duì)象存儲(chǔ)(Object Storage)45 消息隊(duì)列最先用于計(jì)算機(jī)內(nèi)部進(jìn)程間通信或線程間通信。隨著分布式技術(shù)的發(fā)展,在后來(lái)的軟件工程實(shí)踐中,消息隊(duì)列逐漸變成獨(dú)立部署的軟件組件,特別是在云平臺(tái)環(huán)境下,消息隊(duì)列成為不同服務(wù)之間消息通信和同步的關(guān)鍵技術(shù),基于云平臺(tái)的可靠性要求,需要隊(duì)列服務(wù)提供持久化存儲(chǔ)能力,并且能夠容忍存儲(chǔ)的單點(diǎn)故障,從而實(shí)現(xiàn)持久化存儲(chǔ)的分布式隊(duì)列服務(wù)。4.6 分布式消息隊(duì)列45 消息隊(duì)列最先用于計(jì)算機(jī)內(nèi)部進(jìn)程間通信或線程間46 Hadoop是什么?Hadoop是一個(gè)分布式系統(tǒng)基礎(chǔ)架構(gòu),是一個(gè)運(yùn)行處理大規(guī)模結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的軟件平臺(tái)。 Had
40、oop是對(duì)Google的MapReduce、GFS和BigTable等核心技術(shù)的開(kāi)源實(shí)現(xiàn),由Apache軟件基金會(huì)支持,是以 Hadoop分布式文件系統(tǒng)(Hadoop Distributed File System,HDFS)和MapReduce(Google MapReduce)為核心,以及一些支持Hadoop的其它子項(xiàng)目的通用工具組成的分布式計(jì)算系統(tǒng)。4.7 分布式系統(tǒng)Hadoop簡(jiǎn)介46 Hadoop是什么?Hadoop是一個(gè)分布47 (1)HDFS簡(jiǎn)介 HDFS是基于數(shù)據(jù)流模式訪問(wèn)和處理的大文件系統(tǒng),部署在廉價(jià)的商用服務(wù)器上。HDFS集群架構(gòu)由一個(gè)NameNode,一定數(shù)目的 Data
41、Node和Client三部分組成,NameNode用于存儲(chǔ),生成文件系統(tǒng)的元數(shù)據(jù),運(yùn)行一個(gè)實(shí)例;.DataNode用于存儲(chǔ)實(shí)際的數(shù)據(jù),將自己管理的數(shù)據(jù)塊上報(bào)給NameNode,運(yùn)行多個(gè)實(shí)例;Client支持業(yè)務(wù)訪問(wèn)HDFS,從NameNode和DataNode獲取數(shù)據(jù)返回給業(yè)務(wù)。多個(gè)實(shí)例和業(yè)務(wù)一起運(yùn)行。4.7 分布式系統(tǒng)Hadoop簡(jiǎn)介47 (1)HDFS簡(jiǎn)介4.7 分布式系統(tǒng)Hadoo48 (2)HDFS讀數(shù)據(jù)流程 HDFS客戶端調(diào)用標(biāo)淮的文件系統(tǒng),并以文件流的形式打開(kāi)文件,HDFS客戶端讀取NameNode配置信息,獲取文件信息(數(shù)據(jù)塊、DataNode位置信息)HDFS客戶端調(diào)用文件流API讀取文件,從NameNode中獲取DataNode的信息,讀取相應(yīng)的多個(gè)數(shù)據(jù)塊,文件流調(diào)用關(guān)閉連接。4.7 分布式系統(tǒng)Hadoop簡(jiǎn)介48 (2)HDFS讀數(shù)據(jù)流程4.7 分布式系統(tǒng)Ha49 (3)HDFS寫數(shù)據(jù)流程 HDFS客戶端調(diào)用標(biāo)準(zhǔn)的文件系統(tǒng),并以文件流的形式打開(kāi)文件,請(qǐng)求寫入.HDFS客戶端讓NameNode在元數(shù)據(jù)中創(chuàng)建文件節(jié)點(diǎn)。調(diào)用文件流API寫入文件。HDFS客戶端從NameNode獲取到數(shù)據(jù)塊編號(hào)、位置信息后,聯(lián)系DataNode,寫入數(shù)據(jù)到DataNode1,再由DataNode1復(fù)制到DataNod
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 重慶護(hù)理職業(yè)學(xué)院《化工儀表自動(dòng)化》2023-2024學(xué)年第二學(xué)期期末試卷
- Unit 2 Topic 1 Section C 教學(xué)設(shè)計(jì) 2024-2025學(xué)年仁愛(ài)科普版八年級(jí)英語(yǔ)上冊(cè)
- 沈陽(yáng)科技學(xué)院《漆畫創(chuàng)作》2023-2024學(xué)年第二學(xué)期期末試卷
- 《人的正確的思想從哪里來(lái)》教學(xué)設(shè)計(jì)
- 哈爾濱學(xué)院《文化創(chuàng)意理論與實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 青島港灣職業(yè)技術(shù)學(xué)院《基礎(chǔ)日語(yǔ)(3)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東海洋大學(xué)《定向運(yùn)動(dòng)與野外生存》2023-2024學(xué)年第二學(xué)期期末試卷
- 呼和浩特職業(yè)學(xué)院《歷史文獻(xiàn)檢索與史學(xué)論文寫作》2023-2024學(xué)年第二學(xué)期期末試卷
- 垃圾處理機(jī)項(xiàng)目效益評(píng)估報(bào)告
- 第16課 三國(guó)鼎立2024-2025學(xué)年新教材七年級(jí)上冊(cè)歷史新教學(xué)設(shè)計(jì)(統(tǒng)編版2024)
- 公司自備車出差申請(qǐng)表
- 流行病學(xué)與醫(yī)學(xué)統(tǒng)計(jì)學(xué)課件
- 電信渠道管理人員考核管理辦法
- 人教統(tǒng)編版選擇性必修1-國(guó)家制度與社會(huì)治理-活動(dòng)課:中國(guó)歷史上的大一統(tǒng)國(guó)家治理優(yōu)質(zhì)課件(共20張)
- 口腔醫(yī)學(xué)美學(xué)課件-3
- 酒店的安全管理制度
- 杭州市主城區(qū)聲環(huán)境功能區(qū)劃分圖
- 湖南省陽(yáng)氏宗親分布村落
- 豐田卡羅拉電路圖介紹
- 中考語(yǔ)文十大專題總復(fù)習(xí)資料
- 汽車駕駛員專業(yè)競(jìng)賽實(shí)施方案
評(píng)論
0/150
提交評(píng)論