本書系統(tǒng)介紹了云平臺(tái)的概念、類型、架構(gòu),并以開源云平臺(tái) OpenStack 為例,介紹了OpenStack 云平臺(tái)各組件的架構(gòu)、部署安裝和管理使用。本書注重云平臺(tái)基礎(chǔ)概念的講解,同時(shí)又注重實(shí)踐部署和應(yīng)用,內(nèi)容具有一定的前瞻性。本書共 6 章,主要內(nèi)容包括云平臺(tái)的架構(gòu)、開源云管理平臺(tái) OpenStack、 OpenStack 的安裝和配置、 OpenStack 平臺(tái)的管理等。本書適合作為計(jì)算機(jī)相關(guān)專業(yè)云計(jì)算方向的云平臺(tái)課程教材,也可作為云平臺(tái)開發(fā)、云計(jì)算研發(fā)和運(yùn)維的相關(guān)技術(shù)人員參考書。
隨著云計(jì)算時(shí)代的到來,云計(jì)算服務(wù)已經(jīng)成為各行業(yè)實(shí)現(xiàn)信息化的基礎(chǔ)性服務(wù)。這種
日漸流行的技術(shù),正推動(dòng)著這個(gè)行業(yè)的革命性變化和第三次 IT 浪潮。當(dāng)下一些完備的云
計(jì)算商業(yè)產(chǎn)業(yè)鏈已逐漸形成,如亞馬遜的 EC2、VMware 公司的一系列產(chǎn)品等,使得云
計(jì)算不僅成為一項(xiàng)優(yōu)秀的 IT 技術(shù),也逐漸成為一種新的商業(yè)計(jì)算模型和 IT 服務(wù)運(yùn)營模式,
特別是在移動(dòng)互聯(lián)網(wǎng)日漸成熟的今天,云計(jì)算使人們像使用自家的水、電一樣方便快
捷地使用運(yùn)營商提供的任何形式的計(jì)算、網(wǎng)絡(luò)等資源,而不需要在這些硬件等基礎(chǔ)設(shè)備上
增加投入。
在諸多云計(jì)算相關(guān)產(chǎn)品中,云平臺(tái)是一種相對(duì)典型而成熟的云產(chǎn)品。它采用云計(jì)算 3
種模式中的基礎(chǔ)設(shè)施即服務(wù)(IaaS)模式,能夠靈活地配置用戶需要的計(jì)算資源等基礎(chǔ)
設(shè)施,用戶能夠按需使用云平臺(tái)上的一切虛擬資源。OpenStack 是由 NASA(美國國家
航空航天局)和 Rackspace 合作研發(fā)并發(fā)起的一個(gè)開源的云計(jì)算管理平臺(tái)項(xiàng)目,它是
IaaS 云計(jì)算解決方案。通過使用 KVM 等虛擬化技術(shù),將服務(wù)器的硬件進(jìn)行虛擬,根據(jù)用
戶的需求可以隨意配置,從而能夠?qū)ν馓峁⿵?qiáng)大的計(jì)算能力。用戶通過網(wǎng)絡(luò)可以使用
OpenStack 平臺(tái)中的虛擬計(jì)算機(jī),平臺(tái)管理員可以通過后臺(tái)或管理頁面進(jìn)行整個(gè)云平臺(tái)
資源的管理和配置。
OpenStack 的部署是一個(gè)較為煩瑣的過程,其本身包含的組件是以插件的形式組合
后部署在 OpenStack 的計(jì)算節(jié)點(diǎn)和控制節(jié)點(diǎn)上,對(duì)于初學(xué)者完成這一階段的學(xué)習(xí)較為困
難。本書針對(duì) OpenStack 架構(gòu)進(jìn)行深入分析,對(duì) OpenStack 組件的構(gòu)成及協(xié)作流程進(jìn)行
介紹,
從 N 版 OpenStack 的各個(gè)組件的工作原理出發(fā),
介紹不同組件的作用及工作過程。
書中以 N 版 OpenStack 的部署過程為分析案例,同時(shí)本書還介紹云平臺(tái)底層使用的虛擬
化技術(shù)的原理和實(shí)踐。
本書主要適用于云平臺(tái)初學(xué)者對(duì)云平臺(tái)的技術(shù)的理解與認(rèn)識(shí),培養(yǎng)學(xué)員 OpenStack
部署的實(shí)踐能力,在實(shí)踐中提高學(xué)員對(duì)理論的理解與認(rèn)識(shí),培養(yǎng)初學(xué)者的工程部署經(jīng)驗(yàn)和
習(xí)慣,使其能夠進(jìn)行云計(jì)算其他領(lǐng)域的技術(shù)使用與開發(fā)。云平臺(tái)構(gòu)建與管理
2
本書內(nèi)容主要涵蓋 OpenStack 核心組件的工作原理和云管理平臺(tái)的部署安裝,為了
遵循教、學(xué)、做一體化教學(xué)模式,在每章內(nèi)容的編排上,能夠按照學(xué)以致用,理論
結(jié)合實(shí)踐,以培養(yǎng)實(shí)踐能力為目標(biāo),在保證 OpenStack 基本理論的認(rèn)知基礎(chǔ)上,注重
OpenStack 工程實(shí)踐中的配置、安裝及虛擬化技術(shù)的使用和理解。
本書共 6 章,主要內(nèi)容包括云平臺(tái)架構(gòu)、開源云管理平臺(tái) OpenStack、OpenStack
的安裝和配置、OpenStack 平臺(tái)的管理等。在第 1 章和第 2 章的學(xué)習(xí)過程中,通過云計(jì)
算與云平臺(tái)的基本概念、云平臺(tái)的整體架構(gòu),使讀者對(duì)云平臺(tái)具有一個(gè)初步的整體認(rèn)識(shí);
第 3 章至第 5 章,針對(duì) OpenStack 的計(jì)算組件 Nova、認(rèn)證組件 Keystone、鏡像組件
Glance、存儲(chǔ)組件 Cinder、網(wǎng)絡(luò)組件 Quantum
以及儀表盤組件 Horizon 進(jìn)行介紹,特別
是在對(duì)每個(gè)組件的介紹過程中,首先從原理上對(duì) OpenStack 的各個(gè)核心組件進(jìn)行分析,
然后通過具體的部署、配置和管理,使讀者在了解相關(guān)理論基礎(chǔ)的同時(shí)培養(yǎng)讀者的實(shí)際動(dòng)
手能力。第 6 章通過一個(gè)綜合實(shí)例,講解使用 OpenStack 搭建多節(jié)點(diǎn)私有云的方法。
本書由李永鋼、尚鵬、王丁磊任主編,劉銘、劉軍、蔡曉龍、賈偉峰、田喜平任副主
編。編寫分工如下:第 1 章由尚鵬編寫,第 2 章由劉銘編寫,第 3 章由王丁磊編寫,第 4
章由李永鋼編寫,第 5 章由劉軍和蔡曉龍編寫,第 6 章由賈偉峰和田喜平編寫。全書由
南京大學(xué)徐潔磐教授主審,由李永鋼統(tǒng)稿。
由于編者水平有限,加之時(shí)間倉促,書中難免存在疏漏和不足之處,懇請(qǐng)讀者批評(píng)和
指正。
編
者
2018 年 1 月
第 1 章
云平臺(tái)概述 ............................. 1
1.1 云平臺(tái)簡介
............................. 1
1.1.1 云計(jì)算
.................................1
1.1.2 云計(jì)算的服務(wù)模式...............3
1.1.3 云平臺(tái)的發(fā)展
......................4
1.1.4 云平臺(tái)的特點(diǎn)
......................4
1.1.5 云平臺(tái)的優(yōu)勢(shì)與劣勢(shì)
...........5
1.2 云平臺(tái)的類型..........................
7
1.2.1 數(shù)據(jù)密集型云平臺(tái)...............7
1.2.2 計(jì)算密集型云平臺(tái)...............7
1.2.3 綜合云平臺(tái)..........................8
1.3 云管理平臺(tái)
............................. 8
1.3.1 商用云管理平臺(tái) ..................9
1.3.2 開源云管理平臺(tái)
................ 10
小結(jié) .............................................. 14
習(xí)題 .............................................. 14
第 2 章
云平臺(tái)架構(gòu) ............................15
2.1 云平臺(tái)基本框架
.................... 15
2.1.1 云平臺(tái)架構(gòu)分層 ................
15
2.1.2 架構(gòu)層次之間的關(guān)系 .........
16
2.2 顯示層
.................................. 16
2.2.1 HTML 技術(shù)........................
16
2.2.2 JavaScript 技術(shù)
.................. 18
2.2.3 CSS 技術(shù)
........................... 20
2.2.4 Flash 技術(shù)
.......................... 21
2.2.5 Silverlight 技術(shù)..................
24
2.3 中間件層
.............................. 25
2.3.1 REST 技術(shù).........................
25
2.3.2 多租戶技術(shù)
....................... 29
2.3.3 并行處理技術(shù)
.................... 32
2.3.4 應(yīng)用服務(wù)器技術(shù)
................ 36
2.3.5 分布式緩存技術(shù)
................ 38
2.4 基礎(chǔ)設(shè)施層
........................... 40
2.4.1 虛擬化技術(shù)
....................... 42
2.4.2 分布式存儲(chǔ)
....................... 47
2.4.3 關(guān)系型數(shù)據(jù)庫
.................... 50
2.4.4 NoSQL 技術(shù)
...................... 52
2.5 管理層
.................................. 58
2.5.1 賬號(hào)管理技術(shù)
.................... 59
2.5.2 SLA 監(jiān)控技術(shù)
................... 60
2.5.3 計(jì)費(fèi)管理技術(shù)
.................... 65
2.5.4 安全管理技術(shù)
.................... 68
2.5.5 運(yùn)維管理技術(shù)
.................... 72
2.5.6 負(fù)載均衡技術(shù) ....................
77
小結(jié) .............................................. 84
習(xí)題 .............................................. 85
第 3 章
開源云管理平臺(tái) OpenStack....86
3.1 OpenStack 簡介....................
86
3.1.1 OpenStack 起源
................. 86
3.1.2 OpenStack 運(yùn)用范圍
.......... 86
3.1.3 OpenStack 發(fā)展歷史
.......... 88云平臺(tái)構(gòu)建與管理
2
3.2 OpenStack 架構(gòu)....................
90
3.2.1 整體架構(gòu)解析
.................... 90
3.2.2 Nova 組件
.......................... 95
3.2.3 Cinder 組件
........................ 96
3.2.4 Neutron 組件....................
100
3.2.5 Keystone 組件
.................. 102
3.2.6 Horizon 組件....................
103
小結(jié) ............................................ 107
習(xí)題 ............................................ 108
第 4 章 OpenStack 的安裝和配置 ....109
4.1 OpenStack 核心模塊
........... 109
4.1.1 Nova 詳解
........................ 109
4.1.2 Glance 詳解
..................... 123
4.1.3 Keystone 詳解
.................. 129
4.1.4 Neutron 詳解....................
133
4.2 組件的安裝和配置
............... 139
4.2.1 Ubuntu 系統(tǒng)及
環(huán)境安裝 ......................... 139
4.2.2 安裝 MariaDB 和創(chuàng)建
相關(guān)數(shù)據(jù)庫...................... 146
4.2.3 安裝和配置 Keystone.......
149
4.2.4 安裝和配置 Glance
.......... 154
4.2.5 安裝配置 Nova
................ 157
4.2.6 安裝配置 Dashboard
........ 162
小結(jié) ............................................ 164
習(xí)題 ............................................ 165
第 5 章 OpenStack 平臺(tái)的管理........166
5.1 認(rèn)證管理(Keystone).........
166
5.1.1 租戶(項(xiàng)目)管理...........
166
5.1.2 用戶管理
......................... 167
5.1.3 角色管理
......................... 167
5.2 鏡像管理(Glance)
............ 167
5.3 計(jì)算管理(Nova)
.............. 168
5.3.1 資源管理
......................... 168
5.3.2 實(shí)例管理
......................... 169
5.3.3 服務(wù)管理
......................... 170
5.3.4 flavor 管理.......................
170
5.3.5 密鑰管理 .........................
171
5.3.6 安全組管理
..................... 171
5.4 網(wǎng)絡(luò)管理(Neutron) ..........
172
5.4.1 內(nèi)部網(wǎng)絡(luò)管理
.................. 172
5.4.2 外部網(wǎng)絡(luò)管理
.................. 172
5.4.3 路由管理
......................... 173
5.5 塊存儲(chǔ)管理(Cinder).........
174
5.5.1 卷管理 .............................
174
5.5.2 磁盤配額管理
.................. 175
5.6 對(duì)象存儲(chǔ)管理(Swift) ....... 175
小結(jié) ............................................ 176
習(xí)題 ............................................ 176
第 6 章
綜合實(shí)例:使用 OpenStack
搭建多節(jié)點(diǎn)私有云 ...............177
6.1 多節(jié)點(diǎn)配置 .........................
177
6.1.1 配置計(jì)算節(jié)點(diǎn)
.................. 177
6.1.2 配置網(wǎng)絡(luò)
......................... 179
6.1.3 配置存儲(chǔ)
......................... 180
6.2 搭建私有云
......................... 182
6.2.1 創(chuàng)建實(shí)例
......................... 182
6.2.2 查看實(shí)例信息
.................. 184
6.2.3 創(chuàng)建浮動(dòng) IP
..................... 184
6.2.4 綁定虛擬機(jī)
..................... 184
6.2.5 圖形化操作
..................... 185
小結(jié) ............................................ 189
習(xí)題 ............................................ 189
參考文獻(xiàn) .............................................190