




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Openstack基礎(chǔ)知識(shí)的教案第1頁(yè)/共55頁(yè)
目錄
1、openstack介紹
2、openstack結(jié)構(gòu)
第2頁(yè)/共55頁(yè)
Openstack是當(dāng)今最流行的開源云平臺(tái)管理項(xiàng)目,可以控制整個(gè)數(shù)據(jù)中心計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源的大小資源池。Openstack是一個(gè)非常年輕的開源項(xiàng)目,最初是由美國(guó)國(guó)家航空航天局(NASA)和Rackspace合作研發(fā)的項(xiàng)目,2010年7月以Apache2.0許可證授權(quán)開源,源代碼來(lái)自于NASA的Nebula云平臺(tái)和Rackspace的分布式云存儲(chǔ)(Swift)項(xiàng)目。
當(dāng)今的數(shù)據(jù)中心,許多服務(wù)器都遇到過(guò)同樣的問題,即計(jì)算、電源、網(wǎng)絡(luò)帶寬等資源利用率不足。云計(jì)算服務(wù)讓用戶通過(guò)一個(gè)共享的計(jì)算資源、網(wǎng)絡(luò)帶寬、存儲(chǔ)池,運(yùn)行應(yīng)用程序或服務(wù)來(lái)完成計(jì)算工作。
例如,某個(gè)項(xiàng)目可能會(huì)需要大量計(jì)算資源來(lái)完成計(jì)算,而一旦完成了計(jì)算任務(wù),將不再需要那么多的計(jì)算資源。當(dāng)用戶想要一種靈活的、按需供給計(jì)算資源的服務(wù),
Openstack的優(yōu)勢(shì):
1、解除廠商綁定
2、具有可擴(kuò)展性及很好的彈性,可定制化IaaS
3、良好的社區(qū)氛圍
openstack的劣勢(shì):
1、入手難、學(xué)習(xí)曲線較高,在對(duì)整體把握不足的情況下,很難快速上手
2、偏底層,需要根據(jù)實(shí)際應(yīng)用場(chǎng)景進(jìn)行二次開發(fā)
3、現(xiàn)階段的廠商支持較弱、商業(yè)設(shè)備的openstack驅(qū)動(dòng)相對(duì)不夠全面
云計(jì)算按照服務(wù)類型可以分為
IaaS(基礎(chǔ)架構(gòu)即服務(wù)):最位于最底層,以Amazon和阿里云為代表。通過(guò)虛擬化技術(shù)將服務(wù)器,存儲(chǔ)等資源打包,以API接口的形式提供給用戶。用戶不再需要租用機(jī)房,自己維護(hù)服務(wù)器。云服務(wù)商還可以通過(guò)自身強(qiáng)大的數(shù)據(jù)中心為用戶提供多路供電,災(zāi)備等高級(jí)功能。
PaaS(平臺(tái)即服務(wù)):構(gòu)建在Iass之上,在基礎(chǔ)架構(gòu)之上還提供業(yè)務(wù)軟件運(yùn)行的環(huán)境,比如數(shù)據(jù)庫(kù)服務(wù)、web服務(wù)等,以GoogleAppEngine為代表。
SaaS(軟件即服務(wù)):是最成熟,知名度最高的云計(jì)算服務(wù)類型。SaaS的目標(biāo)是將一切業(yè)務(wù)運(yùn)行的后臺(tái)環(huán)境放在云端,用戶通過(guò)一個(gè)瘦客戶端,通常是web瀏覽器,使用服務(wù)。典型的案例是Salesforce,Salesforce通過(guò)向大企業(yè)銷售云端CRM服務(wù),10年時(shí)間,已經(jīng)成為一個(gè)年收入超過(guò)20億美金的上市公司。
云計(jì)算按照部署模式又可以分為公有云、私有云、混合云和行業(yè)云等等。
第3頁(yè)/共55頁(yè)Openstack的結(jié)構(gòu)
openstack包含了許多組件。有些組件會(huì)首先出現(xiàn)在孵化項(xiàng)目中,待成熟以后進(jìn)入下一個(gè)openstack發(fā)行版的核心服務(wù)中。同時(shí)也有部分項(xiàng)目是為了更好的支持openstack社區(qū)和項(xiàng)目開發(fā)管理,不包含在發(fā)行版代碼中。
Openstack核心服務(wù)包括:
1、Nova計(jì)算服務(wù)(ComputeasaService)
2、Neutron網(wǎng)絡(luò)服務(wù)(NetworkingasaService)
3、Swift對(duì)象存儲(chǔ)服務(wù)(ObjectStorageasaService)
4、Cinder塊存儲(chǔ)服務(wù)(BlockStorageasaService)
Openstack公共服務(wù)包括:
1、Glance鏡像服務(wù)(ImageasaSeriver)
2、Keystone認(rèn)證服務(wù)(IdentityasaService)
3、Horizon儀表盤服務(wù)(DashboardasaService)
Openstack的依賴庫(kù)項(xiàng)目包括:Oslo基礎(chǔ)設(shè)施代碼共享依賴庫(kù)(CommonLabasaService)
Openstack的孵化項(xiàng)目包括:
1、Ceilometer計(jì)費(fèi)&監(jiān)控服務(wù)
2、Heat編排服務(wù)
3、Ironic物理設(shè)備服務(wù)(BareMetalasaService)
4、Marconi消息隊(duì)列服務(wù)(MessageQueueasaService)
5、Savanna大數(shù)據(jù)處理(MapReduceasaService)
6、Trove數(shù)據(jù)庫(kù)服務(wù)(DataBaseasaService)
openstack的其它項(xiàng)目第4頁(yè)/共55頁(yè)OpenStack概念架構(gòu)Horizon(Dashboard)與其他主要模塊的關(guān)聯(lián)(包括Nova,Cinder,Glance,Swift,Neutron,keystone)通過(guò)Ceilometer(監(jiān)控功能)可以監(jiān)控的模塊(包括Nova,Glance,Cinder,Neutron)Keystone(身份驗(yàn)證功能)模塊可以對(duì)其他模塊進(jìn)行相應(yīng)操作進(jìn)行身份及權(quán)限驗(yàn)證(包括Nova,Glance,Cinder,Swift,Neutron,Ceilometer)VMNova為VM提供計(jì)算資源Glance為VM提供鏡像Cinder為VM提供塊存儲(chǔ)資源Neutron為VM提供網(wǎng)絡(luò)資源及網(wǎng)絡(luò)連接Cinder連接VM后所產(chǎn)生的數(shù)據(jù)可以備份到Swift對(duì)象存儲(chǔ)中Glance提供鏡像可以保存在Switf對(duì)象存儲(chǔ)中第5頁(yè)/共55頁(yè)Openstack設(shè)計(jì)原則第6頁(yè)/共55頁(yè)第7頁(yè)/共55頁(yè)OpenStack核心系統(tǒng)架構(gòu)圖HorizonKeystoneNovaGlanceCinderSwiftNeutron第8頁(yè)/共55頁(yè)OpenStack
最簡(jiǎn)物理架構(gòu)2個(gè)節(jié)點(diǎn):CloudControllerNode:Keystone(身份驗(yàn)證服務(wù))Glance(鏡像管理服務(wù))Nova(計(jì)算資源管理服務(wù))數(shù)據(jù)庫(kù)服務(wù)(MySQL)消息服務(wù)(RabbitMQ或QPid)ComputeNode:Nova-ComputeNova-NetworkKVM虛擬化系統(tǒng)2種網(wǎng)絡(luò):InternalNetwork(內(nèi)部網(wǎng)絡(luò))用于提供Provider網(wǎng)絡(luò)(VMtoProvider)用于tenant網(wǎng)絡(luò)(VMtoVM)ExternalNetwork(外部網(wǎng)絡(luò))用于外部用戶與VM通信及控制(VMtoInternet)第9頁(yè)/共55頁(yè)OpenStack主要邏輯模塊–HorizonDashboard服務(wù)在整個(gè)Openstack應(yīng)用體系框架中,Horizon就是整個(gè)應(yīng)用的入口。它提供了一個(gè)模塊化的,基于web的圖形化界面服務(wù)門戶。用戶可以通過(guò)瀏覽器使用這個(gè)Web圖形化界面來(lái)訪問、控制他們的計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源,如啟動(dòng)實(shí)例、分配IP地址、設(shè)置訪問控制等?;贒jango框架實(shí)現(xiàn)第10頁(yè)/共55頁(yè)OpenStack主要邏輯模塊–Horizon兩種功能界面Horizon為以下兩種角色的用戶提供了不同的功能及使用界面:云管理員:提供一個(gè)整體視圖,可以總覽整個(gè)云的資源規(guī)模及運(yùn)行狀況.可以創(chuàng)建終端用戶和項(xiàng)目,想終端用戶分配項(xiàng)目并進(jìn)行項(xiàng)目可使用的資源配額管理。終端用戶(云用戶):提供了一個(gè)自助服務(wù)門戶,可以在由云管理分配的項(xiàng)目中,在不超過(guò)配額限制的范圍內(nèi),自由的操作、使用和分配資源。云管理員云用戶第11頁(yè)/共55頁(yè)OpenStack主要邏輯模塊–Keystone身份驗(yàn)證服務(wù)Keystone作為Openstack的核心模塊,為Nova(計(jì)算),Glance(鏡像),Swift(對(duì)象存儲(chǔ)),Cinder(塊存儲(chǔ)),Neutron(網(wǎng)絡(luò))以及Horizon(Dashboard)提供認(rèn)證服務(wù)第12頁(yè)/共55頁(yè)Keystone基本概念介紹之一User
User即用戶,他們代表可以通過(guò)keystone進(jìn)行訪問的人或程序。Users通過(guò)認(rèn)證信息(credentials,如密碼、APIKeys等)進(jìn)行驗(yàn)證。Tenant
Tenant即租戶,它是各個(gè)服務(wù)中的一些可以訪問的資源集合。例如,在Nova中一個(gè)tenant可以是一些機(jī)器,在Swift和Glance中一個(gè)tenant可以是一些鏡像存儲(chǔ),在Neutron中一個(gè)tenant可以是一些網(wǎng)絡(luò)資源。Users默認(rèn)的總是綁定到某些tenant上。Role
Role即角色,Roles代表一組用戶可以訪問的資源權(quán)限,例如Nova中的虛擬機(jī)、Glance中的鏡像。Users可以被添加到任意一個(gè)全局的或租戶的角色中。在全局的role中,用戶的role權(quán)限作用于所有的租戶,即可以對(duì)所有的租戶執(zhí)行role規(guī)定的權(quán)限;在租戶內(nèi)的role中,用戶僅能在當(dāng)前租戶內(nèi)執(zhí)行role規(guī)定的權(quán)限。Service
Service即服務(wù),如Nova、Glance、Swift。根據(jù)前三個(gè)概念(User,Tenant和Role)一個(gè)服務(wù)可以確認(rèn)當(dāng)前用戶是否具有訪問其資源的權(quán)限。但是當(dāng)一個(gè)user嘗試著訪問其租戶內(nèi)的service時(shí),他必須知道這個(gè)service是否存在以及如何訪問這個(gè)service,這里通常使用一些不同的名稱表示不同的服務(wù)。第13頁(yè)/共55頁(yè)Keystone基本概念介紹之二Endpoint
Endpoint,翻譯為“端點(diǎn)”,我們可以理解它是一個(gè)服務(wù)暴露出來(lái)的訪問點(diǎn),如果需要訪問一個(gè)服務(wù),則必須知道他的endpoint。因此,在keystone中包含一個(gè)endpoint模板,這個(gè)模板提供了所有存在的服務(wù)endpoints信息。一個(gè)endpointtemplate包含一個(gè)URLs列表,列表中的每個(gè)URL都對(duì)應(yīng)一個(gè)服務(wù)實(shí)例的訪問地址,并且具有public、private和admin這三種權(quán)限。publicurl可以被全局訪問(如),privateurl只能被局域網(wǎng)訪問(如http://compute.example.local),adminurl被從常規(guī)的訪問中分離。TokenToken是訪問資源的鑰匙。它是通過(guò)Keystone驗(yàn)證后的返回值,在之后的與其他服務(wù)交互中只需要攜帶Token值即可。每個(gè)Token都有一個(gè)有效期,Token只在有效期內(nèi)是有效的。第14頁(yè)/共55頁(yè)各種概念之間關(guān)系解釋1、租戶下,管理著一堆用戶(人,或程序)。2、每個(gè)用戶都有自己的credentials(憑證)用戶名+密碼或者用戶名+APIkey,或其他憑證。3、用戶在訪問其他資源(計(jì)算、存儲(chǔ))之前,需要用自己的credential去請(qǐng)求keystone服務(wù),獲得驗(yàn)證信息(主要是Token信息)和服務(wù)信息(服務(wù)目錄和它們的endpoint)。4、用戶拿著Token信息,就可以去訪問特點(diǎn)的資源了。第15頁(yè)/共55頁(yè)Keystone在OpenStack中的訪問流程范例第16頁(yè)/共55頁(yè)計(jì)算管理(codenamed
“Nova”)基于用戶需求為VM提供計(jì)算資源管理.
基于Python語(yǔ)言編寫。Nova-API:對(duì)外統(tǒng)一提供標(biāo)準(zhǔn)化接口.接受和響應(yīng)最終用戶ComputeAPI的請(qǐng)求,同時(shí)還實(shí)現(xiàn)與Openstack其他各邏輯模塊的通訊與服務(wù)提供Nova-Scheduler:從隊(duì)列上得到一個(gè)虛擬機(jī)實(shí)例請(qǐng)求并且決定它應(yīng)該在哪里運(yùn)行(使用多種過(guò)濾器或算法調(diào)度)Queue:提供了一個(gè)守護(hù)進(jìn)程之間傳遞消息的中央樞紐。消息隊(duì)列系統(tǒng)作用還可以實(shí)現(xiàn)與Openstack其他各邏輯模塊之間的通信建立連接樞紐Nova-Database:存儲(chǔ)云基礎(chǔ)設(shè)施的編譯時(shí)和運(yùn)行時(shí)的狀態(tài),從理論上講,OpenStackNova可以支持任何SQL-Alchemy支持的數(shù)據(jù)庫(kù),但是目前被廣泛使用的數(shù)據(jù)庫(kù)有sqlite3(只適用于測(cè)試和開發(fā)工作),MySQL和PostgreSQL。Nova-Compute:主要是一個(gè)人工守護(hù)進(jìn)程,它可以通過(guò)虛擬機(jī)管理程序的API(XenAPIforXenServer/XCP,libvirtforKVMorQEMU,VMwareAPIforVMware等)來(lái)創(chuàng)建和終止虛擬機(jī)實(shí)例。支持多種虛擬化平臺(tái)Nova還提供控制臺(tái)的服務(wù),讓最終用戶通過(guò)代理服務(wù)器訪問他們的虛擬實(shí)例的控制臺(tái)。這涉及到多個(gè)守護(hù)進(jìn)程(nova-console,nova-novncproxy、nova-xvpnvncproxy和nova-consoleauth)OpenStack主要邏輯模塊-Nova第17頁(yè)/共55頁(yè)請(qǐng)求一個(gè)虛擬機(jī)實(shí)例過(guò)程第18頁(yè)/共55頁(yè)Nova支持的虛擬化平臺(tái)Openstack支持的虛擬化技術(shù)KVMLXCQEMUUMLvSphereXen/admin-guide-cloud/content/section_hypervisors.html第19頁(yè)/共55頁(yè)Nova支持的調(diào)度器和過(guò)濾器Nova支持的調(diào)度器SimpleScheduler簡(jiǎn)單調(diào)度器FilterScheduler過(guò)濾調(diào)度器MultiScheduler多重調(diào)度器ChanceScheduler隨機(jī)調(diào)度器Nova支持的過(guò)濾器ImagePropertiesFilterAvailabilityZoneFilterComputeFilterCoreFilterAllHostFilterDifferentHostFilterIsolateHostFilterRamFilterSimpleCIDRAffinityFilterSameHostFilter第20頁(yè)/共55頁(yè)塊存儲(chǔ)管理模塊(codenamed
“Cinder”)提供到虛擬機(jī)的永久性塊存儲(chǔ)卷.類似AWS的EBS塊存儲(chǔ)服務(wù)多個(gè)卷可以被掛載到單一虛擬機(jī)實(shí)例,同時(shí)卷可以在虛擬機(jī)實(shí)例間移動(dòng),單個(gè)卷在同一時(shí)刻只能被掛載到一個(gè)虛擬機(jī)實(shí)例塊存儲(chǔ)系統(tǒng)管理塊設(shè)備到虛擬機(jī)的創(chuàng)建,掛載以及卸載.塊設(shè)備卷完全與OpenstackCompute集成,并支持云用戶在Dashboard中管理數(shù)據(jù)自己的存儲(chǔ).除了支持簡(jiǎn)單的Linux服務(wù)器本地存儲(chǔ)之外,還支持眾多的存儲(chǔ)平臺(tái),包括Ceph,NetApp,Nexenta,SolidFire,Zadara.快照管理提供了強(qiáng)大的在塊存儲(chǔ)上實(shí)現(xiàn)數(shù)據(jù)備份的功能可以用來(lái)作為引導(dǎo)卷使用塊存儲(chǔ)適合性能敏感性業(yè)務(wù)場(chǎng)景,例如數(shù)據(jù)庫(kù)存儲(chǔ)大規(guī)??蓴U(kuò)展的文件系統(tǒng)或服務(wù)器需要訪問到塊級(jí)裸設(shè)備存儲(chǔ).OpenStack主要邏輯模塊-塊存儲(chǔ)Cinder第21頁(yè)/共55頁(yè)Cinder的架構(gòu)第22頁(yè)/共55頁(yè)Cinder架構(gòu)解釋APIService:負(fù)責(zé)接受和處理Rest請(qǐng)求,并將請(qǐng)求放入
RabbitMQ對(duì)列。SchedulerService:處理任務(wù)隊(duì)列的任務(wù),并根據(jù)預(yù)定策略選擇合適的VolumeService節(jié)點(diǎn)來(lái)執(zhí)行任務(wù)。目前版本的Cinder僅僅提供了一個(gè)SimpleScheduler,該調(diào)度器選擇卷數(shù)量最少的一個(gè)活躍節(jié)點(diǎn)來(lái)創(chuàng)建卷。VolumeService:該服務(wù)運(yùn)行在存儲(chǔ)節(jié)點(diǎn)上,管理存儲(chǔ)空間。每個(gè)存儲(chǔ)節(jié)點(diǎn)都有一個(gè)VolumeService,若干個(gè)這樣的存儲(chǔ)節(jié)點(diǎn)聯(lián)合起來(lái)可以構(gòu)成一個(gè)存儲(chǔ)資源池。為了支持不同類型和型號(hào)的存儲(chǔ),均通過(guò)Drivers的形式為Cinder的
VolumeService提供相應(yīng)的Cinder-Volume。Cinder目前支持的存儲(chǔ)類型本地存儲(chǔ):LVM,Sheepdog網(wǎng)絡(luò)存儲(chǔ):NFS,RBD(Ceph)HP:3PAR(iSCSI/FC),LeftHand(iSCSI)IBM:
Storwizefamily/SVC(iSCSI/FC),XIV(iSCSI),
GPFS,zVMNetapp:
NetApp(iSCSI/NFS)EMC:
VMAX/VNX
(iSCSI),Isilon(iSCSI)Solidfire:Solidfirecluster(iSCSI)第23頁(yè)/共55頁(yè)Cinder補(bǔ)充Cinder主要核心是對(duì)卷的管理,允許對(duì)卷、卷的類型、卷的快照進(jìn)行處理。它并沒有實(shí)現(xiàn)對(duì)塊設(shè)備的管理和實(shí)際服務(wù),而是為后端不同的存儲(chǔ)結(jié)構(gòu)提供了統(tǒng)一的接口,不同的塊設(shè)備服務(wù)廠商在Cinder中實(shí)現(xiàn)其驅(qū)動(dòng)支持以與OpenStack進(jìn)行整合。在CinderSupportMatrix中可以看到眾多存儲(chǔ)廠商如HP、NetAPP、IBM、SolidFire、EMC和眾多開源塊存儲(chǔ)系統(tǒng)對(duì)Cinder的支持。Havana版本中Cinder新增特性如下:Volume-Resize:在可用情況下調(diào)整卷大小。Volume-Backup-To-Ceph:現(xiàn)在卷可以備份到Ceph集群中。Volume-Migration:現(xiàn)在不同用戶間可以透明地轉(zhuǎn)移和交換卷。QoS:增加限速相關(guān)的元信息供Nova和其Hypervisor使用。More-Drivers:更多的存儲(chǔ)廠商加入和完善了自己的Cinder驅(qū)動(dòng)。第24頁(yè)/共55頁(yè)Cinder如何支持典型存儲(chǔ)1.本地存儲(chǔ)對(duì)于本地存儲(chǔ),cinder-volume可以使用LVM驅(qū)動(dòng),該驅(qū)動(dòng)當(dāng)前的實(shí)現(xiàn)需要在主機(jī)上事先用LVM命令創(chuàng)建一個(gè)cinder-volumes的卷組,當(dāng)該主機(jī)接受到創(chuàng)建卷請(qǐng)求的時(shí)候,cinder-volume在該卷組上創(chuàng)建一個(gè)邏輯卷,并且用openiscsi將這個(gè)卷當(dāng)作一個(gè)iscsitgt給輸出.當(dāng)然還可以將若干主機(jī)的本地存儲(chǔ)用sheepdog虛擬成一個(gè)共享存儲(chǔ),然后使用sheepdog驅(qū)動(dòng)。2.HP塊存儲(chǔ)第25頁(yè)/共55頁(yè)HP存儲(chǔ)系統(tǒng)對(duì)于的Cinder的支持/wiki/CinderSupportMatrixCinderSupportMatrixOpenStackBlockStorage(akaCinder)Drivers第26頁(yè)/共55頁(yè)OpenStack主要邏輯模塊-對(duì)象存儲(chǔ)Swift分布式對(duì)象存儲(chǔ)系統(tǒng),類似于AWS的S3通過(guò)采用基于標(biāo)準(zhǔn)化服務(wù)器的集群架構(gòu)提供冗余,可擴(kuò)展的對(duì)象存儲(chǔ)具有良好的擴(kuò)展性,可以實(shí)現(xiàn)PB級(jí)別數(shù)據(jù)的存儲(chǔ)支持存儲(chǔ)對(duì)象寫入的多份拷貝,并且支持當(dāng)拷貝丟失后的自我修復(fù)功能.確保數(shù)據(jù)的一致性提供每GB高性價(jià)比的極佳的可用性和數(shù)據(jù)耐久性支持原生的
OpenStack?API以及S3compatibleAPI第27頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift數(shù)據(jù)模型Swift采用層次數(shù)據(jù)模型,共設(shè)三層邏輯結(jié)構(gòu):Account/Container/Object(即賬戶/容器/對(duì)象),每層節(jié)點(diǎn)數(shù)均沒有限制,可以任意擴(kuò)展。數(shù)據(jù)存儲(chǔ)基于NWR理論類似文件存儲(chǔ)過(guò)程:TouchfileA在對(duì)應(yīng)的磁盤塊組中對(duì)應(yīng)的元數(shù)據(jù)區(qū)域產(chǎn)生對(duì)應(yīng)的inode,基于這個(gè)inode存儲(chǔ)數(shù)據(jù)到數(shù)據(jù)區(qū)中對(duì)應(yīng)的塊組中的blockAccount對(duì)應(yīng)租戶,用于隔離Container對(duì)應(yīng)某個(gè)租戶數(shù)據(jù)的存儲(chǔ)區(qū)域Object對(duì)應(yīng)存儲(chǔ)區(qū)域中具體的block第28頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift系統(tǒng)架構(gòu)Swift采用完全對(duì)稱、面向資源的分布式系統(tǒng)架構(gòu)設(shè)計(jì)所有組件都可擴(kuò)展,避免因單點(diǎn)失效而擴(kuò)散并影響整個(gè)系統(tǒng)運(yùn)轉(zhuǎn)通信方式采用非阻塞式I/O模式,提高了系統(tǒng)吞吐和響應(yīng)能力第29頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift系統(tǒng)組件代理服務(wù)(ProxyServer):對(duì)外提供對(duì)象服務(wù)API,會(huì)根據(jù)環(huán)的信息來(lái)查找服務(wù)地址并轉(zhuǎn)發(fā)用戶請(qǐng)求至相應(yīng)的賬戶、容器或者對(duì)象服務(wù);由于采用無(wú)狀態(tài)的REST請(qǐng)求協(xié)議,可以進(jìn)行橫向擴(kuò)展來(lái)均衡負(fù)載。認(rèn)證服務(wù)(AuthenticationServer):驗(yàn)證訪問用戶的身份信息,并獲得一個(gè)對(duì)象訪問令牌(Token),在一定的時(shí)間內(nèi)會(huì)一直有效;驗(yàn)證訪問令牌的有效性并緩存下來(lái)直至過(guò)期時(shí)間。緩存服務(wù)(CacheServer):緩存的內(nèi)容包括對(duì)象服務(wù)令牌,賬戶和容器的存在信息,但不會(huì)緩存對(duì)象本身的數(shù)據(jù);緩存服務(wù)可采用Memcached集群,Swift會(huì)使用一致性散列算法來(lái)分配緩存地址。賬戶服務(wù)(AccountServer):提供賬戶元數(shù)據(jù)和統(tǒng)計(jì)信息,并維護(hù)所含容器列表的服務(wù),每個(gè)賬戶的信息被存儲(chǔ)在一個(gè)SQLite數(shù)據(jù)庫(kù)中。容器服務(wù)(ContainerServer):提供容器元數(shù)據(jù)和統(tǒng)計(jì)信息,并維護(hù)所含對(duì)象列表的服務(wù),每個(gè)容器的信息也存儲(chǔ)在一個(gè)SQLite數(shù)據(jù)庫(kù)中。對(duì)象服務(wù)(ObjectServer):提供對(duì)象元數(shù)據(jù)和內(nèi)容服務(wù),每個(gè)對(duì)象的內(nèi)容會(huì)以文件的形式存儲(chǔ)在文件系統(tǒng)中,元數(shù)據(jù)會(huì)作為文件屬性來(lái)存儲(chǔ),建議采用支持?jǐn)U展屬性的XFS文件系統(tǒng)。復(fù)制服務(wù)(Replicator):會(huì)檢測(cè)本地分區(qū)副本和遠(yuǎn)程副本是否一致,具體是通過(guò)對(duì)比散列文件和高級(jí)水印來(lái)完成,發(fā)現(xiàn)不一致時(shí)會(huì)采用推式(Push)更新遠(yuǎn)程副本,例如對(duì)象復(fù)制服務(wù)會(huì)使用遠(yuǎn)程文件拷貝工具rsync來(lái)同步;另外一個(gè)任務(wù)是確保被標(biāo)記刪除的對(duì)象從文件系統(tǒng)中移除。更新服務(wù)(Updater):當(dāng)對(duì)象由于高負(fù)載的原因而無(wú)法立即更新時(shí),任務(wù)將會(huì)被序列化到在本地文件系統(tǒng)中進(jìn)行排隊(duì),以便服務(wù)恢復(fù)后進(jìn)行異步更新;例如成功創(chuàng)建對(duì)象后容器服務(wù)器沒有及時(shí)更新對(duì)象列表,這個(gè)時(shí)候容器的更新操作就會(huì)進(jìn)入排隊(duì)中,更新服務(wù)會(huì)在系統(tǒng)恢復(fù)正常后掃描隊(duì)列并進(jìn)行相應(yīng)的更新處理。審計(jì)服務(wù)(Auditor):檢查對(duì)象,容器和賬戶的完整性,如果發(fā)現(xiàn)比特級(jí)的錯(cuò)誤,文件將被隔離,并復(fù)制其他的副本以覆蓋本地?fù)p壞的副本;其他類型的錯(cuò)誤會(huì)被記錄到日志中。賬戶清理服務(wù)(AccountReaper):移除被標(biāo)記為刪除的賬戶,刪除其所包含的所有容器和對(duì)象。第30頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift系統(tǒng)支持的操作SwiftRESTfulAPI總結(jié)資源類型URLGETPUTPOSTDELETEHEAD賬戶/account/獲取容器列表---獲取賬戶元數(shù)據(jù)容器/account/container獲取對(duì)象列表創(chuàng)建容器更新容器元數(shù)據(jù)刪除容器獲取容器元數(shù)據(jù)對(duì)象/account/container/object獲取對(duì)象內(nèi)容和元數(shù)據(jù)創(chuàng)建、更新或拷貝對(duì)象更新對(duì)象元數(shù)據(jù)刪除對(duì)象獲取對(duì)象元數(shù)據(jù)第31頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift補(bǔ)充第32頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift補(bǔ)充第33頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift補(bǔ)充—SINA的經(jīng)驗(yàn)主要組件ProxyServerProxyServer是提供SwiftAPI的服務(wù)器進(jìn)程,負(fù)責(zé)Swift其余組件間的相互通信。對(duì)于每個(gè)客戶端的請(qǐng)求,它將在Ring中查詢Account、Container或Object的位置,并且相應(yīng)地轉(zhuǎn)發(fā)請(qǐng)求。Proxy提供了Rest-fullAPI,并且符合標(biāo)準(zhǔn)的HTTP協(xié)議規(guī)范,這使得開發(fā)者可以快捷構(gòu)建定制的Client與Swift交互。StorageServerStorageServer提供了磁盤設(shè)備上的存儲(chǔ)服務(wù)。在Swift中有三類存儲(chǔ)服務(wù)器:Account、Container和Object。其中Container服務(wù)器負(fù)責(zé)處理Object的列表,Container服務(wù)器并不知道對(duì)象存放位置,只知道指定Container里存的哪些Object。這些Object信息以sqlite數(shù)據(jù)庫(kù)文件的形式存儲(chǔ)。Container服務(wù)器也做一些跟蹤統(tǒng)計(jì),例如Object的總數(shù)、Container的使用情況。ConsistencyServers在磁盤上存儲(chǔ)數(shù)據(jù)并向外提供Rest-fulAPI并不是難以解決的問題,最主要的問題在于故障處理。Swift的ConsistencyServers的目的是查找并解決由數(shù)據(jù)損壞和硬件故障引起的錯(cuò)誤。主要存在三個(gè)Server:Auditor、Updater和Replicator。Auditor運(yùn)行在每個(gè)Swift服務(wù)器的后臺(tái)持續(xù)地掃描磁盤來(lái)檢測(cè)對(duì)象、Container和賬號(hào)的完整性。如果發(fā)現(xiàn)數(shù)據(jù)損壞,Auditor就會(huì)將該文件移動(dòng)到隔離區(qū)域,然后由Replicator負(fù)責(zé)用一個(gè)完好的拷貝來(lái)替代該數(shù)據(jù)。圖2給出了隔離對(duì)象的處理流圖。在系統(tǒng)高負(fù)荷或者發(fā)生故障的情況下,Container或賬號(hào)中的數(shù)據(jù)不會(huì)被立即更新。如果更新失敗,該次更新在本地文件系統(tǒng)上會(huì)被加入隊(duì)列,然后Updaters會(huì)繼續(xù)處理這些失敗了的更新工作,其中由AccountUpdater和ContainerUpdater分別負(fù)責(zé)Account和Object列表的更新。Replicator的功能是處理數(shù)據(jù)的存放位置是否正確并且保持?jǐn)?shù)據(jù)的合理拷貝數(shù),它的設(shè)計(jì)目的是Swift服務(wù)器在面臨如網(wǎng)絡(luò)中斷或者驅(qū)動(dòng)器故障等臨時(shí)性故障情況時(shí)可以保持系統(tǒng)的一致性。Swift主要有三個(gè)組成部分:ProxyServer、StorageServer和ConsistencyServer。其架構(gòu)如圖1所示,其中Storage和Consistency服務(wù)均允許在StorageNode上。Auth認(rèn)證服務(wù)目前已從Swift中剝離出來(lái),使用OpenStack的認(rèn)證服務(wù)Keystone,目的在于實(shí)現(xiàn)統(tǒng)一OpenStack各個(gè)項(xiàng)目間的認(rèn)證管理第34頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift補(bǔ)充—SINA的經(jīng)驗(yàn)RingRing是Swift最重要的組件,用于記錄存儲(chǔ)對(duì)象與物理位置間的映射關(guān)系。在涉及查詢Account、Container、Object信息時(shí),就需要查詢集群的Ring信息。Ring使用Zone、Device、Partition和Replica來(lái)維護(hù)這些映射信息。Ring中每個(gè)Partition在集群中都(默認(rèn))有3個(gè)Replica。每個(gè)Partition的位置由Ring來(lái)維護(hù),并存儲(chǔ)在映射中。Ring文件在系統(tǒng)初始化時(shí)創(chuàng)建,之后每次增減存儲(chǔ)節(jié)點(diǎn)時(shí),需要重新平衡一下Ring文件中的項(xiàng)目,以保證增減節(jié)點(diǎn)時(shí),系統(tǒng)因此而發(fā)生遷移的文件數(shù)量最少。原理Swift用到的算法和存儲(chǔ)理論并不復(fù)雜,主要有幾下幾個(gè)概念。一致性哈希算法Swift利用一致性哈希算法構(gòu)建了一個(gè)冗余的可擴(kuò)展的分布式對(duì)象存儲(chǔ)集群。Swift采用一致性哈希的主要目的是在改變集群的Node數(shù)量時(shí),能夠盡可能少地改變已存在Key和Node的映射關(guān)系。該算法的思路分為以下三個(gè)步驟。首先計(jì)算每個(gè)節(jié)點(diǎn)的哈希值,并將其分配到一個(gè)0~232的圓環(huán)區(qū)間上。其次使用相同方法計(jì)算存儲(chǔ)對(duì)象的哈希值,也將其分配到這個(gè)圓環(huán)上。隨后從數(shù)據(jù)映射到的位置開始順時(shí)針查找,將數(shù)據(jù)保存到找到的第一個(gè)節(jié)點(diǎn)上。如果超過(guò)232仍然找不到節(jié)點(diǎn),就會(huì)保存到第一個(gè)節(jié)點(diǎn)上。假設(shè)在這個(gè)環(huán)形哈??臻g中存在4臺(tái)Node,若增加一臺(tái)Node5,根據(jù)算法得出Node5被映射在Node3和Node4之間,那么受影響的將僅是沿Node5逆時(shí)針遍歷到Node3之間的對(duì)象(它們本來(lái)映射到Node4上)。其分布如圖3所示。第35頁(yè)/共55頁(yè)對(duì)象存儲(chǔ)Swift補(bǔ)充—SINA的經(jīng)驗(yàn)Replica如果集群中的數(shù)據(jù)在本地節(jié)點(diǎn)上只有一份,一旦發(fā)生故障就可能會(huì)造成數(shù)據(jù)的永久性丟失。因此,需要有冗余的副本來(lái)保證數(shù)據(jù)安全。Swift中引入了Replica的概念,其默認(rèn)值為3,理論依據(jù)主要來(lái)源于NWR策略(也叫Quorum協(xié)議)。NWR是一種在分布式存儲(chǔ)系統(tǒng)中用于控制一致性級(jí)別的策略。在Amazon的Dynamo云存儲(chǔ)系統(tǒng)中,使用了NWR來(lái)控制一致性。其中,N代表同一份數(shù)據(jù)的Replica的份數(shù),W是更新一個(gè)數(shù)據(jù)對(duì)象時(shí)需要確保成功更新的份數(shù);R代表讀取一個(gè)數(shù)據(jù)需要讀取的Replica的份數(shù)。公式W+R>N,保證某個(gè)數(shù)據(jù)不被兩個(gè)不同的事務(wù)同時(shí)讀和寫;公式W>N/2保證兩個(gè)事務(wù)不能并發(fā)寫某一個(gè)數(shù)據(jù)。在分布式系統(tǒng)中,數(shù)據(jù)的單點(diǎn)是不允許存在的。即線上正常存在的Replica數(shù)量為1的情況是非常危險(xiǎn)的,因?yàn)橐坏┻@個(gè)Replica再次出錯(cuò),就可能發(fā)生數(shù)據(jù)的永久性錯(cuò)誤。假如我們把N設(shè)置成為2,那么只要有一個(gè)存儲(chǔ)節(jié)點(diǎn)發(fā)生損壞,就會(huì)有單點(diǎn)的存在,所以N必須大于2。N越高,系統(tǒng)的維護(hù)成本和整體成本就越高。工業(yè)界通常把N設(shè)置為3。例如,對(duì)于MySQL主從結(jié)構(gòu),其NWR數(shù)值分別是N=2,W=1,R=1,沒有滿足NWR策略。而Swift的N=3,W=2,R=2,完全符合NWR策略,因此Swift系統(tǒng)是可靠的,沒有單點(diǎn)故障。Zone如果所有的Node都在一個(gè)機(jī)架或一個(gè)機(jī)房中,那么一旦發(fā)生斷電、網(wǎng)絡(luò)故障等,都將造成用戶無(wú)法訪問。因此需要一種機(jī)制對(duì)機(jī)器的物理位置進(jìn)行隔離,以滿足分區(qū)容忍性(CAP理論中的P)。因此,Ring中引入了Zone的概念,把集群的Node分配到每個(gè)Zone中。其中同一個(gè)Partition的Replica不能同時(shí)放在同一個(gè)Node上或同一個(gè)Zone內(nèi)。注意,Zone的大小可以根據(jù)業(yè)務(wù)需求和硬件條件自定義,可以是一塊磁盤、一臺(tái)存儲(chǔ)服務(wù)器,也可以是一個(gè)機(jī)架甚至一個(gè)IDC。WeightRing引入Weight的目的是解決未來(lái)添加存儲(chǔ)能力更大的Node時(shí),分配到更多的Partition。例如,2TB容量的Node的Partition數(shù)為1TB的兩倍,那么就可以設(shè)置2TB的Weight為200,而1TB的為100。第36頁(yè)/共55頁(yè)OpenStack主要邏輯模塊–Glance鏡像服務(wù)Glance是OpenStack鏡像服務(wù),用來(lái)注冊(cè)、登陸和檢索虛擬機(jī)鏡像。Glance服務(wù)提供了一個(gè)RESTAPI,使你能夠查詢虛擬機(jī)鏡像元數(shù)據(jù)和檢索的實(shí)際鏡像。通過(guò)鏡像服務(wù)提供的虛擬機(jī)鏡像可以存儲(chǔ)在不同的位置,從簡(jiǎn)單的文件系統(tǒng)對(duì)象存儲(chǔ)到類似OpeenStack對(duì)象存儲(chǔ)系統(tǒng)。鏡像服務(wù)組件:Glance-API
:接收最終用戶或Noav對(duì)鏡像的請(qǐng)求,檢索和存儲(chǔ)鏡像的相關(guān)API調(diào)用。Glance-registry:
存儲(chǔ),處理和檢索有關(guān)鏡像的元數(shù)據(jù),元數(shù)據(jù)大小、類型等等。Database
:存儲(chǔ)鏡像元數(shù)據(jù),可以支持多種數(shù)據(jù)庫(kù),現(xiàn)在使用比較廣泛的是mysql和sqlite.第37頁(yè)/共55頁(yè)Glance與Openstack其他模塊的關(guān)系HorizonImage可視化Swift存儲(chǔ)ImageKeystoneImage權(quán)限控制Nova調(diào)用ImageGlance模塊(鏡像功能)第38頁(yè)/共55頁(yè)Glance支持的Image格式ariqcow2ovfvdirawvmdkvhd添加標(biāo)題添加標(biāo)題添加標(biāo)題raw–非結(jié)構(gòu)化的鏡像格式vhd–一種通用的虛擬機(jī)磁盤格式,可用于Vmware、Xen、MicrosoftVirtualPC/VirtualServer/Hyper-V、VirtualBox等vmdk–Vmware的虛擬機(jī)磁盤格式,同樣也支持多種Hypervisorvdi–VirtualBox、QEMU等支持的虛擬機(jī)磁盤格式qcow2–一種支持QEMU并且可以動(dòng)態(tài)擴(kuò)展的磁盤格式aki–AmazonKernel鏡像ari–AmazonRamdisk鏡像ami–Amazon虛擬機(jī)鏡像akiami第39頁(yè)/共55頁(yè)網(wǎng)絡(luò)服務(wù)(codenamed
“Quantum/Neutron”)提供在被管理設(shè)備之間的網(wǎng)絡(luò)連接服務(wù).允許用戶自己創(chuàng)建自己的網(wǎng)絡(luò)并attach端口使用.通過(guò)開發(fā)的Plugins支持SDN和OpenFlow用戶自定義子網(wǎng)地址,私有網(wǎng)絡(luò)/公有網(wǎng)絡(luò)以及FloatingIP分配規(guī)則OpenStack主要邏輯模塊–Quantum/Neutron網(wǎng)絡(luò)服務(wù)NeutronDrivers第40頁(yè)/共55頁(yè)Neutron服務(wù)模塊層次NeutronDrivers
NeutronAPI提供Openstack其他服務(wù)或管理員及用戶訪問的接口抽象層網(wǎng)絡(luò)資源抽象化,包括網(wǎng)絡(luò),子網(wǎng),端口及路由。將底層各種各樣的網(wǎng)絡(luò)資源按照openstack定義的網(wǎng)絡(luò)描述規(guī)則化
Plug-in通過(guò)Plug-in方式可以整合更多的高級(jí)的功能以及與底層網(wǎng)絡(luò)廠商的設(shè)備實(shí)現(xiàn)更好的集成第41頁(yè)/共55頁(yè)Quantum/Neutron的關(guān)鍵概念網(wǎng)絡(luò)Network一個(gè)L2二層網(wǎng)絡(luò)單元
租戶可通過(guò)Quantum/NeutronAPI創(chuàng)建自己的網(wǎng)絡(luò)子網(wǎng)Subnet一段IPV4/IPV6地址段
為Instance提供私網(wǎng)或公網(wǎng)地址
路由器Router三層路由器為租戶的Instance提供路由功能
端口Port虛擬交換機(jī)上的端口管理Instance的網(wǎng)卡第42頁(yè)/共55頁(yè)簡(jiǎn)單網(wǎng)絡(luò)架構(gòu)及解釋網(wǎng)絡(luò)AgentPlug-inagent:本地虛擬交換配置Dhcpagent:為tenant網(wǎng)絡(luò)提供DHCP服務(wù)L3agent:提供l3/NAT轉(zhuǎn)發(fā)功能,為tenant網(wǎng)絡(luò)中的vm提供外網(wǎng)訪問Meteringagent:提供l3流量監(jiān)控和計(jì)量網(wǎng)絡(luò)描述:管理網(wǎng)絡(luò):用于OpenStack各組件之間的內(nèi)部通信。數(shù)據(jù)網(wǎng)絡(luò):用于云部署中虛擬數(shù)據(jù)之間的通信。外部網(wǎng)絡(luò):公共網(wǎng)絡(luò),外部或internet可以訪問的網(wǎng)絡(luò)。API網(wǎng)絡(luò):暴露所有的OpenStackAPIs,包括OpenStack網(wǎng)絡(luò)API給租戶第43頁(yè)/共55頁(yè)Openstack網(wǎng)絡(luò)服務(wù)歷程OpenStacknova-network網(wǎng)絡(luò)模型在OpenStack網(wǎng)絡(luò)組件沒有獨(dú)立出來(lái)之前,OpenStack最初的nova-network網(wǎng)絡(luò)模型單一平面網(wǎng)絡(luò)的缺點(diǎn):存在單一網(wǎng)絡(luò)瓶頸,缺乏可伸縮性。缺乏合適的多租戶隔離單一網(wǎng)絡(luò)平面第44頁(yè)/共55頁(yè)Openstack網(wǎng)絡(luò)服務(wù)歷程OpenStackNeutron網(wǎng)絡(luò)模型OpenStacknova-network獨(dú)立成為單獨(dú)的組件Neutron后,形象的網(wǎng)絡(luò)模型的多平面網(wǎng)絡(luò)、混合平面私有網(wǎng)絡(luò)多平面網(wǎng)絡(luò)混合平面私有網(wǎng)絡(luò)通過(guò)私有網(wǎng)絡(luò)實(shí)現(xiàn)運(yùn)營(yíng)商路由功能通過(guò)私有網(wǎng)絡(luò)實(shí)現(xiàn)每個(gè)租戶創(chuàng)建自己專屬的網(wǎng)絡(luò)區(qū)段第45頁(yè)/共55頁(yè)Neutron服務(wù)網(wǎng)絡(luò)管理的三種模式,兩種IPFlat模式FlatDHCP模式VLAN模式固定IP(Fixed-IP):分配給虛擬機(jī)實(shí)例使用浮動(dòng)IP(FloatingIP):分配給虛擬機(jī)實(shí)例的外網(wǎng)地址,通過(guò)NAT方式實(shí)現(xiàn)。兩種IP三種模式第46頁(yè)/共55頁(yè)Flat模式Flat模式是最簡(jiǎn)單的一種聯(lián)網(wǎng)模式。每個(gè)實(shí)例接收一個(gè)來(lái)自池的固定IP。所有實(shí)例均默認(rèn)附加到相同的橋(br100)。橋必須進(jìn)行手動(dòng)配置。聯(lián)網(wǎng)配置在實(shí)例引導(dǎo)前插入到實(shí)例中。在這種模式中,沒有浮動(dòng)IP特性。第47頁(yè)/共55頁(yè)FlatDHCP模式:
用于測(cè)試環(huán)境這種模式下與Flat模式不同的地方在于有一個(gè)DHCP進(jìn)程,每一個(gè)運(yùn)行nova-network進(jìn)程的節(jié)點(diǎn)(網(wǎng)絡(luò)控制節(jié)點(diǎn)/nove-network主機(jī))就是一個(gè)單獨(dú)的網(wǎng)絡(luò)。Nova會(huì)在nova-network主機(jī)建立網(wǎng)橋(默認(rèn)名稱br100,配置項(xiàng)flat_network_bridge=br100),并給該網(wǎng)橋指定該網(wǎng)絡(luò)的網(wǎng)關(guān)IP,同時(shí)Nova在網(wǎng)橋處起一個(gè)DHCP進(jìn)程,最后,會(huì)建立iptables規(guī)則(SNAT/DNAT)使虛擬機(jī)能夠與外界通信,同時(shí)與一個(gè)metadata服務(wù)器通信以取得cloud內(nèi)的信息。計(jì)算節(jié)點(diǎn)負(fù)責(zé)創(chuàng)建對(duì)應(yīng)節(jié)點(diǎn)的網(wǎng)橋,此時(shí)的計(jì)算節(jié)點(diǎn)網(wǎng)卡可以不需要IP地址,因?yàn)榫W(wǎng)橋把虛擬機(jī)與nove-network主機(jī)連接在一個(gè)邏輯網(wǎng)絡(luò)內(nèi)。虛擬機(jī)啟動(dòng)時(shí)會(huì)發(fā)送dhcpdiscover以獲取IP地址。虛擬機(jī)通往外界的數(shù)據(jù)都要通過(guò)nova-network主機(jī),DHCP在網(wǎng)橋處監(jiān)聽,分配fixed_range指定的IP段。這種部署方式的缺點(diǎn)----單節(jié)點(diǎn)故障、無(wú)二層隔離(即所有的虛擬機(jī)都在一個(gè)廣播域)第48頁(yè)/共55頁(yè)Vlan模式:
用于生產(chǎn)環(huán)境VLAN模式的目的是為每個(gè)項(xiàng)目提供受保護(hù)的網(wǎng)段,具有以下特點(diǎn):NAT實(shí)現(xiàn)publicip除了publicNAT外沒有其它途徑進(jìn)入每個(gè)lan受限的流出網(wǎng)絡(luò),project-admin可以控制受限的項(xiàng)目之間的訪問,同樣project-admin控制所以實(shí)例和api的連接通過(guò)vpn第49頁(yè)/共55頁(yè)FlatDHCP模式下網(wǎng)絡(luò)流:?jiǎn)尉W(wǎng)卡單節(jié)點(diǎn)單網(wǎng)卡單節(jié)點(diǎn)OpenStack網(wǎng)絡(luò)流在普通部署方式下,只有一個(gè)控制節(jié)點(diǎn)(或網(wǎng)絡(luò)控制器),dhcp和外網(wǎng)訪問都需要經(jīng)過(guò)它。dhcp時(shí):1)網(wǎng)絡(luò)控制器(運(yùn)行nova-network服務(wù)的節(jié)點(diǎn))一直運(yùn)行dusmasq作為DHCP服務(wù)器監(jiān)聽網(wǎng)橋(br100);2)實(shí)例做一次dhcpdiscover操作,發(fā)送請(qǐng)求;3)網(wǎng)絡(luò)控制器把從一個(gè)指定的子網(wǎng)中獲得的IP地址響應(yīng)給虛擬機(jī)實(shí)例。實(shí)例訪問外網(wǎng)時(shí):1)實(shí)例經(jīng)過(guò)所在主機(jī)的flat_interface(這是一個(gè)flat網(wǎng)絡(luò)),連接到nova-network所在的主機(jī)(控制節(jié)點(diǎn));2)網(wǎng)絡(luò)控制器對(duì)外出網(wǎng)絡(luò)流進(jìn)行轉(zhuǎn)發(fā)。外網(wǎng)訪問實(shí)例時(shí):1)網(wǎng)絡(luò)控制器對(duì)floatingip進(jìn)行nat;2)通過(guò)flat網(wǎng)絡(luò)將流入數(shù)據(jù)路由給對(duì)應(yīng)的實(shí)例。第50頁(yè)/共55頁(yè)單網(wǎng)卡多節(jié)點(diǎn)OpenStack網(wǎng)絡(luò)流
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 機(jī)械原理 CH03學(xué)習(xí)資料
- 2025年度解除技術(shù)合作項(xiàng)目的聲明文件
- 二零二五年度帶車司機(jī)勞務(wù)管理與車輛使用合同
- 2025年度班組綠色生產(chǎn)與可持續(xù)發(fā)展合同
- 二零二五年度實(shí)習(xí)生入職培訓(xùn)及勞動(dòng)合同簽訂指南
- 二零二五年度商業(yè)地產(chǎn)商用租房租賃及人才引進(jìn)支持協(xié)議
- 洗車店兼并合同2025年度綠色經(jīng)營(yíng)責(zé)任承諾書
- 個(gè)人教育培訓(xùn)機(jī)構(gòu)貸款合同(2025年度)
- 2025年度個(gè)人股權(quán)質(zhì)押登記與變更合同
- 2025年度二手房翻修貸款合同
- 兒科課件:急性細(xì)菌性腦膜炎
- 《紐約國(guó)際介紹》課件
- 部編版語(yǔ)文七年級(jí)下冊(cè)期中專項(xiàng)復(fù)習(xí)-標(biāo)點(diǎn)符號(hào) 試卷(含答案)
- 更年期綜合癥研究白皮書
- 《學(xué)習(xí)共同體-走向深度學(xué)習(xí)》讀書分享
- 互聯(lián)網(wǎng)視域下微紀(jì)錄片情感化敘事研究-以《早餐中國(guó)》為例
- 芋頭種植技術(shù)要點(diǎn)
- 【基于近五年數(shù)據(jù)的鴻星爾克財(cái)務(wù)報(bào)表分析15000字】
- 公司員工獎(jiǎng)懲制度流程
- 靜脈炎預(yù)防和處理課件
- 船舶種類與特點(diǎn)
評(píng)論
0/150
提交評(píng)論