OpenStack 常用部署
內容描述
OpenStack是當今用於構建和集成公有雲和私有雲的技術,本書是一個完整且實用的OpenStack部署指南,讓讀者理解如何部署OpenStack的同時瞭解它的內部結構。書中先概述雲計算和OpenStack的概念和OpenStack單服務器部署工具DevStack,並介紹OpenStack關鍵組件,包括儀表盤(Horizon)、計算(Nova)、身份(Keystone)、網絡(Neutron)、鏡像服務(Glance)、塊存儲(Cinder)、對象存儲(Swift)、遙測(Ceilometer)、裸機(Ironic)、編排(Heat)、容器(Magnum)等;接著通過介紹多種類型的OpenStack部署實例,講解不同雲環境(公有雲、私有雲、塊儲存雲和對象存儲雲)的部署,以及在功能豐富的雲環境中集成多個組件的方法;介紹更為廣泛的OpenStack生態系統及增強功能,這些增強功能使OpenStack平臺變得更加成熟且完備。
本書的目標讀者是致力於學習OpenStack基礎知識,並嘗試各種部署場景的Linux和Unix系統管理員和網絡工程師,本書將成為其工作中應用OpenStack的理想資源和必不可少的學習材料。
目錄大綱
第1章OpenStack是什麼1
1.1雲1
1.2搭建自己的雲3
1.3用法3
1.4關鍵組件3
1.4.1實例3
1.4.2隊列4
1.4.3儀錶盤(Horizon) 4
1.4.4計算(Nova) 6
1.4.5身份(Keystone) 8
1.4.6網絡(Neutron) 8
1.4.7鏡像服務(Glance) 9
1.4.8塊存儲(Cinder) 9
1.4.9對象存儲(Swift) 10
1.4.10遙測(Ceilometer ) 10
1.4.11裸機(Ironic) 11
1.4.12編排(Heat) 11
1.4.13容器(Magnum) 11
1.4.14其他項目12
1.5發布週期12
1.5.1 Ubuntu長期支持13
1.5.2 Ubuntu Cloud Archive 13
1.5.3 Puppet模塊14
1.6小結15
第一部分初次部署
第2章DevStack 19
2.1 DevStack是什麼19
2.1.1開發者用途20
2.1.2培訓用途20
2.1.3持續集成用途20
2.2 DevStack需求21
2.3部署DevStack 21
2.3.1儀錶盤:作為用戶登錄23
2.3.2儀錶盤:作為管理員登錄26
2.3 .3命令行上使用主機27
2.4 DevStack選項29
2.4.1 “穩定的”DevStack 29
2.4.2定制DevStack 30
2.5小結31
第3章網絡32
3.1關鍵概念32
3.1.1操作的分層32
3.1.2提供商網絡33
3.1.3租戶網絡34
3.1.4最大傳輸單元(MTU) 35
3.2部署條件36
3.3流量流39
3.3.1控制器節點40
3.3.2計算節點44
3.4其他資源45
3.5小結45
第4章首個OpenStack 46
4.1系統要求46
4.2初始設置47
4.2.1網絡47
4.2.2操作系統49
4.2.3系統配置49
4.3 OpenStack組件53
4.3.1控制器節點53
4.3.2計算節點79
4.4管理實例81
4.5小結83
第二部分部署
第5章部署的基礎87
5.1系統要求87
5.1.1參考部署88
5.1.2網絡89
5.1.3選擇部署機制89
5.2初始設置90
5.3選擇組件91
5.3.1身份(Keystone) 91
5.3.2數據庫(MySQL) 92
5.3.3消息隊列(RabbitMQ) 92
5.3.4網絡(Neutron) 92
5.3.5計算(Nova ) 93
5.3.6鏡像(Glance) 93
5.3.7儀錶盤(Horizon) 93
5.4基礎場景94
5.4.1控制器節點94
5.4.2計算節點106
5.4.3故障排除111
5.5小結112
第6章私有計算雲113
6.1使用113
6.1.1政府機構114
6.1.2主要公司114
6.2系統要求114
6.3場景115
6.3.1啟動實例:儀錶盤115
6.3.2啟動實例:OpenStack
客戶端124
6.3.3運行服務131
6.3.4 SDK與OpenStack API 133
6.4小結134
第7章公有計算雲135
7.1使用135
7.1.1傳統技術公司136
7.1.2網絡託管公司136
7.2系統要求136
7.3架構概覽137
7.4場景138
7.4.1控制器節點設置138
7.4.2計算節點設置139
7.4.3查看統計數據:儀錶盤140
7.4.4查看統計數據:命令行
客戶端141
7.5處理測量值與警報144
7.6小結144
第8章塊存儲雲145
8.1使用145
8.1.1雲提供商145
8.1.2數據處理146
8.1.3保持備份147
8.2系統要求147
8.3架構概覽148
8.4場景149
8.4 .1控制器節點設置149
8.4.2創建和附加卷:儀錶盤151
8.4.3創建和附加卷:OpenStack
客戶端154
8.4.4使用卷157
8.4.5自動化159
8.5小結159
第9章對象存儲雲160
9.1使用160
9.1.1網絡託管公司161
9.1.2文件同步與共享161
9.1.3日誌存儲161
9.2系統要求162
9.2 .1選擇組件162
9.2.2關鍵概念162
9.3場景165
9.3.1控制器節點設置166
9.3.2創建容器和對象:儀錶盤169
9.3.3創建容器和對象:OpenStack
客戶端172
9.3.4使用對象173
9.4除Swift之外176
9.5小結176
第10章裸機配置177
10.1使用177
10.1.1雲託管公司178
10.1.2內部雲178
10.1.3數據庫託管178
10.1.4高性能計算178
10.2架構概覽179
10.2 .1安裝180
10.2.2使用Ironic 180
10.2.3管理Ironic 183
10.3社區184
10.4小結184
第11章控制容器185
11.1什麼是容器185
11.2使用186
11.2.1公有云公司186
11.2.2在線遊戲公司186
11.3針對Nova的容器驅動187
11.4 Magnum 187
11.4.1 Magnum概念188
11.4.2安裝Magnum 189
11.5小結189
第三部分擴展與故障排除
第12章一個完整的雲193
12.1使用193
12.2系統要求193
12.3場景194
12.3.1控制器節點設置194
12.3.2計算節點設置195
12.3.3探索部署:儀表盤195
12.3.4探索部署:命令行客戶端196
12.4更大的雲197
12.4.1高可用性和擴展性197
12.4.2額外組件198
12.5小結199
第13章故障排除200
13.1閱讀顯示的錯誤200
13.2日誌203
13.2.1調試模式203
13.2.2理解日誌消息204
13.3關鍵服務205
13.4網絡205
13.4.1網絡調試工具206
13.4.2 ip和網絡名稱空間206
13.4.3 tcpdump 207
13.4.4 MTU 208
13.4.5 Open vSwitch和Linux
網橋208
13.4.6 iptables 209
13.5配置文件209
13.6 Puppet 210
13.6. 1探索模塊210
13.6.2更多的Puppet幫助211
13.7緩解中斷211
13.8請求幫助212
13.9小結212
第14章廠商與混合雲213
14.1廠商生產系統213
14.2公有云與混合雲214
14.2.1公有云214
14.2.2混合雲216
14.3廠商鎖定217
14.3.1遷移自己運行的新雲上217
14.3.2遷移由廠商運行的雲上217
14.4小結218
附錄A參考部署219
附錄B其他部署機制222
附錄C經久耐用的Puppet 224
附錄D為OpenStack貢獻代碼229
附錄E OpenStack客戶端(OSC) 235
附錄F 通過OpenStack尋求幫助239
作者介紹
作者:[美]伊麗莎白K.約瑟夫(Elizabeth K. Joseph)馬修·費希爾(Matthew Fischer)譯者:陳琳華
伊麗莎白K.約瑟夫(Elizabeth K. Joseph)作為OpenStack基礎設施項目的系統管理員,一直在為OpenStack工作人員提供支持。她在OpenStack開發郵件列表中非常活躍,並且在OpenStack TripleO項目中負責測試工程。此外,她還經常為舊金山灣區等地的公司提供OpenStack指導,定期參加一年兩次的OpenStack設計峰會,並在全球會議中針對開源主題發表演講。
馬修·費希爾(Matthew Fischer)擁有超過15年的軟件開發經驗,從事過UNIX內核、移動開發、DevOps等方面的工作,目前為一個部署和運行OpenStack的團隊工作。他自2013年起開始使用Puppet部署OpenStack。