關(guān)于我們
書單推薦
新書推薦
|
OpenStack架構(gòu)分析與實(shí)踐
本書以實(shí)戰(zhàn)開發(fā)為原則,以關(guān)鍵模塊架構(gòu)分析及項(xiàng)目開發(fā)為主線,通過(guò)OpenStack開發(fā)中常用的8個(gè)典型組件和若干典型項(xiàng)目案例,詳細(xì)介紹了云平臺(tái)中的計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)、服務(wù)編排、智能運(yùn)維等模塊,并針對(duì)OpenStack中通用的關(guān)鍵技術(shù)進(jìn)行了詳細(xì)介紹。對(duì)于每一部分內(nèi)容的講解,章節(jié)的*后都會(huì)配備相應(yīng)的實(shí)戰(zhàn)案例供大家參考。
本書緣起 仿佛就在一夜之間,云計(jì)算火了,一躍成為業(yè)內(nèi)很受關(guān)注的熱點(diǎn)話題之一。如果讀者關(guān)注互聯(lián)網(wǎng)圈子的話,應(yīng)該聽說(shuō)過(guò)早在2011年時(shí),國(guó)內(nèi)大大小小的公司就瞄準(zhǔn)了云計(jì)算的百萬(wàn)級(jí)市場(chǎng),也就是從那時(shí)起,云計(jì)算成了互聯(lián)網(wǎng)上毫無(wú)疑問(wèn)的又一大風(fēng)口。 2018年新年伊始,小米就與微軟達(dá)成了云計(jì)算合作意向,進(jìn)一步深化戰(zhàn)略性合作伙伴關(guān)系,以微軟在云計(jì)算、人工智能等領(lǐng)域的先進(jìn)技術(shù)實(shí)力,與小米在多樣化的移動(dòng)、智能設(shè)備及服務(wù)領(lǐng)域的市場(chǎng)優(yōu)勢(shì)相結(jié)合,共同致力于打造更加優(yōu)質(zhì)的產(chǎn)品和服務(wù),并全力助推小米產(chǎn)品進(jìn)軍國(guó)際市場(chǎng)。 通信巨頭華為更是把云計(jì)算作為2018年的重點(diǎn)投入領(lǐng)域,并著力發(fā)展其公有云和私有云業(yè)務(wù)。 AWS推出的無(wú)服務(wù)器計(jì)算功能,從另一個(gè)方面助力于云計(jì)算的發(fā)展。無(wú)服務(wù)器計(jì)算,意味著開發(fā)人員不再需要擔(dān)心設(shè)置或管理服務(wù)器。相反,他們可以將代碼上傳到云上運(yùn)行。 萬(wàn)物互聯(lián)的物聯(lián)網(wǎng)(IOT)時(shí)代,更是要求云計(jì)算為基礎(chǔ)設(shè)施層提供更強(qiáng)大的能力和更加豐富的功能。從移動(dòng)互聯(lián)網(wǎng)向IoT的迅速轉(zhuǎn)變會(huì)對(duì)基礎(chǔ)設(shè)施帶來(lái)新一輪的挑戰(zhàn)。這個(gè)挑戰(zhàn)表現(xiàn)在幾個(gè)層面:第一個(gè)是敏捷性,第二個(gè)是成本,第三個(gè)是復(fù)雜性。以上三個(gè)層面的問(wèn)題可以通過(guò)云平臺(tái)輕松得以解決。 諸如此類,我們這里就不一一列舉了,但云計(jì)算的火爆程度,已然可見一斑。 OpenStack作為云計(jì)算領(lǐng)域大的開源項(xiàng)目,結(jié)構(gòu)復(fù)雜、內(nèi)容繁多,官網(wǎng)上給出的參考資料不足以讓初學(xué)者達(dá)到快速入門的目的;目前圖書市場(chǎng)上關(guān)于OpenStack的圖書不少,但寫作水平參差不齊,大部分書籍都是基于較低版本的OpenStack進(jìn)行寫作的,內(nèi)容上略顯陳舊,相較于OpenStack每年發(fā)布兩個(gè)新版本的速度而言,不足以讓讀者全面細(xì)致地了解OpenStack的新功能和它所采用的前沿技術(shù)。 除此之外,OpenStack對(duì)其中的一些組件做了較大的變動(dòng),如果不是專業(yè)的開發(fā)及架構(gòu)人員,很難全面把握應(yīng)用與實(shí)踐的方向。 考慮到以上因素,本書基于官方資料及個(gè)人相關(guān)從業(yè)經(jīng)驗(yàn),立足架構(gòu)、著眼開發(fā)、兼顧實(shí)踐,包含系統(tǒng)的OpenStack架構(gòu)原理與云平臺(tái)實(shí)踐方法,全面提高讀者的OpenStack實(shí)戰(zhàn)能力。 本書特色 盡管云計(jì)算引入我國(guó)不過(guò)七八年時(shí)間,但在這短短的時(shí)間里,其相關(guān)的教學(xué)和科研成果層出不窮,與云計(jì)算相關(guān)的書籍可謂是百花齊放,百家爭(zhēng)鳴,因此,讀者在學(xué)習(xí)云計(jì)算時(shí),可供選擇的參考資料更多了、可以研習(xí)的材料也更多了,在眾多的選擇中,卻讓人感到有些無(wú)所適從。 觀察目前市面上的云計(jì)算書籍,大部分教材注重原理介紹和理論闡述,在很大程度上忽略了相關(guān)知識(shí)的應(yīng)用與實(shí)現(xiàn),作為典型的理工類書籍,脫離實(shí)戰(zhàn)講理論,對(duì)于初學(xué)者而言,難免枯燥與晦澀,對(duì)于具備一定經(jīng)驗(yàn)的工程師而言,這樣的書籍又顯得毫無(wú)營(yíng)養(yǎng)可言。 本書力求避其短而揚(yáng)其長(zhǎng),以典型模塊、典型案例為研究與講解對(duì)象,將理論及原理介紹與實(shí)戰(zhàn)相結(jié)合,巧妙地將大量實(shí)戰(zhàn)經(jīng)驗(yàn)與原理介紹融入到本書的每一個(gè)章節(jié),大限度地提高本書的含金量,以給讀者奉上一頓云計(jì)算的營(yíng)養(yǎng)大餐。 筆者一直本著重點(diǎn)突出、結(jié)合實(shí)戰(zhàn)、求同存異的思想努力將本書寫好?傮w上而言,本書的主要特色有以下三點(diǎn): 1.深入淺出、通俗易懂 注意從實(shí)際生產(chǎn)中擇取典型問(wèn)題,針對(duì)關(guān)鍵模塊本著模塊分析,架構(gòu)先行的理念進(jìn)行重點(diǎn)分析,配備典型實(shí)戰(zhàn)案例,引導(dǎo)讀者一步一步學(xué)習(xí),以期達(dá)到學(xué)中做,做中學(xué)的學(xué)習(xí)效果。 2.問(wèn)題典型、案例經(jīng)典 始終本著關(guān)鍵問(wèn)題,重點(diǎn)分析的宗旨,本書介紹的基本理論知識(shí),都是使用非常貼近生活場(chǎng)景的實(shí)例來(lái)引導(dǎo)的,這樣就避免了知識(shí)講述過(guò)于抽象,非常易于理解。通過(guò)對(duì)典型問(wèn)題的分析和經(jīng)典案例的講解,增加了本書的趣味性和實(shí)效性,以期達(dá)到理論聯(lián)系實(shí)際的佳效果。 3.道法自然、內(nèi)外兼修 筆者在過(guò)去的工作當(dāng)中,累積了大量生產(chǎn)實(shí)踐經(jīng)驗(yàn),可以幫助學(xué)有所長(zhǎng)的讀者快速進(jìn)入到一個(gè)實(shí)際操作的場(chǎng)景中進(jìn)一步提高自己的實(shí)操能力,從而使得學(xué)習(xí)之路變得不那么坎坷。 4.基于OpenStack較新版本進(jìn)行寫作,技術(shù)實(shí)效性強(qiáng) 本書基于Ocata版本(個(gè)別章節(jié)會(huì)涉及P版本的內(nèi)容),從技術(shù)新穎度與成熟度而言,都極具參考性。P版本的OpenStack中新功能的添加并不是很多,更多的是針對(duì)OpenStack易用性的改進(jìn);而新版本Q版本中尚有許多不足之處,并且生產(chǎn)實(shí)踐中部署比較少。 5.描述清晰,講解透徹 書中盡量避免使用大量的文字進(jìn)行描述,能用圖表來(lái)說(shuō)明的地方盡量使用簡(jiǎn)單明了的圖表表示,堅(jiān)持一圖勝千言的原則。 本書愿景 在信息化飛速發(fā)展的今天,由于大量時(shí)間的碎片化,學(xué)完的東西總感覺不是那么的系統(tǒng),知識(shí)是學(xué)到了,但是結(jié)構(gòu)比較零散,遇到實(shí)際問(wèn)題的時(shí)候還是會(huì)有一種知之但難用之的感覺。 作為技術(shù)類的書籍,本書希望從淺顯易懂的知識(shí)切入,貫穿實(shí)操,做到既能滿足大家系統(tǒng)掌握基礎(chǔ)知識(shí)的欲望,也要能讓讀者在學(xué)習(xí)的過(guò)程中品嘗到新鮮有營(yíng)養(yǎng)的高規(guī)格饕餮盛宴。 授之以魚,不如授之以漁,看別人寫的書只是我們學(xué)習(xí)的一種途徑,我們更希望讀者在看完本書的內(nèi)容后,在實(shí)際工作中可以自行其書、不囿于書,將本書中學(xué)到的知識(shí)應(yīng)用到實(shí)際問(wèn)題的解決中去。讀其書會(huì)其書,是為法;學(xué)習(xí)其書用其書,是為道。這是我們對(duì)每一位讀者的期望,更是本書的真誠(chéng)愿景。 贈(zèng)君云梯 萬(wàn)丈高樓平地起,層層都會(huì)設(shè)樓梯。本書考慮到不同層次的讀者水平,在內(nèi)容組織方面也是有所考慮,目的是讓每一位小白都能一步一個(gè)臺(tái)階的登堂入室,踏實(shí)地邁向OpenStack高手的云中樓閣。 云中樓閣第一梯:成為圈中人。技術(shù)是開放的,開源的技術(shù)更是如此,談開源但又不邁入開源,那么只能是門外漢;開篇向大家介紹了如何更好更快地加入到OpenStack的開源社區(qū)中。 云中樓閣第二梯:云中拾零。武俠中我們經(jīng)常會(huì)看到這樣一幕:一位武林高手使出大招后,可以瞬間定勝負(fù)。這個(gè)大招其實(shí)并非簡(jiǎn)單的一招一式,而是經(jīng)過(guò)馬步、梅花樁等小技巧的點(diǎn)滴修煉共集而成。OpenStack就像是這個(gè)大招,它是一個(gè)龐大的系統(tǒng),但是無(wú)論系統(tǒng)多么的龐大,它也總是由一個(gè)個(gè)小的部分組成,在這里我們稱之為服務(wù)或組件。這里的云中拾零,拾的就是這些零零散散的組件,各個(gè)組件各個(gè)擊破。 云中樓閣第三梯:云中舞劍。本書的學(xué)習(xí)過(guò)程中,我們會(huì)嵌入有許許多多的實(shí)踐示例,意在讓大家能夠理論實(shí)踐相結(jié)合,在實(shí)踐中領(lǐng)略個(gè)中樂趣的同時(shí),還能將知識(shí)學(xué)扎實(shí)了。 云中樓閣高梯:云中望月。我們期望讀者在學(xué)完本書后,能在腦海中形成一幅相關(guān)OpenStack架構(gòu)和實(shí)踐的云天大圖,在實(shí)踐中游刃有余。 學(xué)習(xí)建議 書中個(gè)別章節(jié)相對(duì)獨(dú)立,目的在于顧及不同讀者需求的同時(shí),但又不失系統(tǒng)化。第一章節(jié)為入門章節(jié),主要介紹如何入門社區(qū)。后續(xù)章節(jié)是分別對(duì)OpenStack中不同的模塊進(jìn)行講解,理論講解的同時(shí)還有實(shí)操。 ● 如果您具有一定的開發(fā)經(jīng)驗(yàn)又對(duì)開源有過(guò)切身經(jīng)歷,那么第一章節(jié)可以略過(guò),直接開始正文的學(xué)習(xí)。 ● 如果你對(duì)OpenStack已經(jīng)輕車熟路,只是想學(xué)習(xí)了解其中的某一個(gè)模塊,那么您大可以單刀直入,直接進(jìn)入到您感興趣的章節(jié)。 ● 如果您是一名初學(xué)者,建議您從第一章節(jié)開始就仔細(xì)研讀所有的知識(shí)點(diǎn),這對(duì)后續(xù)的學(xué)習(xí)非常重要。 二維碼下載包 ● 書中源代碼 ● OpenStack Super User 本書讀者 ● IT部門首席信息官(CIO) ● 企業(yè)首席技術(shù)官(CTO) ● 云計(jì)算基礎(chǔ)設(shè)施建設(shè)者 ● IT主管 ● IT技術(shù)工程師 ● 互聯(lián)網(wǎng)公司員工 ● 網(wǎng)絡(luò)運(yùn)維人員 除以上關(guān)鍵人員,教育機(jī)構(gòu)的師生通過(guò)閱讀本書,可以很好地建構(gòu)自己的云計(jì)算知識(shí)體系?傊课蛔x者都能從中獲益,至少對(duì)云計(jì)算不再云里霧里了。 編者 2018年5月
管增輝 中國(guó)海洋大學(xué)碩士,曾先后在Alcatel-Lucent和金山云工作,現(xiàn)在供職于阿里巴巴。擁有豐富的IMS核心網(wǎng)和云計(jì)算設(shè)計(jì)開發(fā)經(jīng)驗(yàn),對(duì)云計(jì)算解決方案及AIOps擁有獨(dú)到見解,專注于云計(jì)算、容器及AIOps相關(guān)領(lǐng)域。熱衷開源,先后參與過(guò)MIT MOOS-IvP項(xiàng)目和OpenStack項(xiàng)目的開發(fā)。具有豐富的云平臺(tái)及K8S平臺(tái)開發(fā)經(jīng)驗(yàn),設(shè)計(jì)開發(fā)了電信級(jí)云存儲(chǔ)平臺(tái)、嵌套虛擬化云平臺(tái)、云平臺(tái)可視化資源管理、云平臺(tái)計(jì)算服務(wù)垃圾資源回收機(jī)制、云平臺(tái)智能運(yùn)維系統(tǒng)、基于K8S的SaaS平臺(tái)及輕量PaaS平臺(tái)。除此之外,對(duì)于云平臺(tái)的資源編排服務(wù)、彈性伸縮服務(wù)、負(fù)載均衡服務(wù)也有豐富的經(jīng)驗(yàn),F(xiàn)在主要負(fù)責(zé)阿里云SaaS平臺(tái)和PaaS平臺(tái)的設(shè)計(jì)與開發(fā)。 曾凡浪中南大學(xué)學(xué)士,曾先后在藝龍旅行網(wǎng)和聯(lián)想北京研究院擔(dān)任系統(tǒng)開發(fā)工程師和高級(jí)研究員,目前就職于神州優(yōu)車集團(tuán)總部。有多年的OpenStack和Kubernetes構(gòu)建、開發(fā)經(jīng)驗(yàn),專注于云計(jì)算相關(guān)領(lǐng)域。參與過(guò)多套私有云平臺(tái)的方案調(diào)研、技術(shù)選型和部署實(shí)施,以及OpenStack深度定制,OpenStack、Kubernetes、Ceph集中管理平臺(tái),統(tǒng)一認(rèn)證授權(quán)系統(tǒng)等項(xiàng)目開發(fā)工作。
第1章 走進(jìn)OpenStack 1.1 OpenStack是什么 1 1.1.1 OpenStack的作用 1 1.1.2 OpenStack的應(yīng)用場(chǎng)景 2 1.1.3 什么類型的工作要學(xué)OpenStack 3 1.2 為什么要學(xué)習(xí)OpenStack 3 1.2.1 OpenStack在云計(jì)算中的地位 3 1.2.2 云計(jì)算新時(shí)代:容器vs虛擬化 4 1.3 如何學(xué)習(xí)OpenStack 4 1.3.1 對(duì)學(xué)習(xí)者的技術(shù)要求 4 1.3.2 OpenStack的學(xué)習(xí)路線 4 1.4 OpenStack的基本架構(gòu) 5 1.5 OpenStack的核心組件 7 1.5.1 計(jì)算資源管理:Nova組件 7 1.5.2 存儲(chǔ)資源管理:Cinder/Swift組件 8 1.5.3 網(wǎng)絡(luò)資源管理:Neutron組件 9 第2章 OpenStack部署與社區(qū)貢獻(xiàn)流程 2.1 OpenStack部署方式 12 2.1.1 DevStack方式部署 13 2.1.2 手動(dòng)部署分布式OpenStack環(huán)境 18 2.1.3 RDO方式部署OpenStack 22 2.2 為OpenStack社區(qū)作貢獻(xiàn) 25 2.2.1 提交前的環(huán)境準(zhǔn)備 26 2.2.2 代碼貢獻(xiàn)流程 28 【示例2-1】代碼貢獻(xiàn)流程之bug Fix 28 2.2.3 文檔貢獻(xiàn)流程 30 【示例2-2】以heat為例來(lái)演示HTML的生成過(guò)程 31 2.2.4 其他內(nèi)容的貢獻(xiàn)流程 32 2.3 開發(fā)工具之Pycharm 33 2.3.1 Pycharm的安裝與配置 33 2.3.2 使用Pycharm對(duì)代碼進(jìn)行遠(yuǎn)程調(diào)試 34 【示例2-3】通過(guò)Pycharm調(diào)試OpenStack中nova list的代碼 34 2.3.3 Pycharm與PDB的選用比較 35 【示例2-4】開發(fā)工具之PDB斷點(diǎn)調(diào)試 35 第3章 虛擬化 3.1 虛擬化技術(shù)的現(xiàn)狀 37 3.2 KVM的管理工具Libvirt 38 3.2.1 Libvirt簡(jiǎn)介 38 【示例3-1】通過(guò)Libvirt提供的API virsh對(duì)虛擬機(jī)生命周期實(shí)現(xiàn)管理 39 3.2.2 Libvirt的體系結(jié)構(gòu) 40 3.3 OpenStack與虛擬化的結(jié)合 42 3.4 虛擬機(jī)配置libvirt.xml詳解 45 第4章 OpenStack通用技術(shù) 4.1 RPC服務(wù)實(shí)現(xiàn)分析 49 【示例4-1】在OpenStack RPC中創(chuàng)建Server并實(shí)現(xiàn)Client向Server發(fā)送請(qǐng)求 (以rpc、calll為例) 53 4.2 消息隊(duì)列服務(wù)分析 54 4.2.1 透徹理解中間件RabbitMQ 54 【示例4-2】通過(guò)Hello World演示如何RabbitMQ的消息收發(fā)過(guò)程 55 4.2.2 RabbitMQ實(shí)現(xiàn)RPC通信 58 【示例4-3】RabbitMQ之RPC通信案例 58 4.3 RESTful API開發(fā)框架 64 4.3.1 靈活但不易用:基于Pastedeploy和Routes的API框架 65 【示例4-4】通過(guò)nova list獲取虛擬機(jī)的命令,根據(jù)Nova的api-paste.ini來(lái)說(shuō)明 是如何路由的 68 4.3.2 基于Pecan的API框架 69 4.4 TaskFlow的實(shí)現(xiàn) 72 4.4.1 TaskFlow常見使用場(chǎng)景 72 4.4.2 TaskFlow中必須理解的重要概念 73 4.4.3 TaskFlow具體實(shí)現(xiàn) 74 【示例4-5】TaskFlow仔細(xì)看,重實(shí)踐得體感 74 【示例4-6】TaskFlow功能多,長(zhǎng)流程特別火 76 4.5 基于Eventlet的多線程技術(shù) 78 4.5.1 進(jìn)程、線程與協(xié)程 78 4.5.2 Eventlet依賴的兩個(gè)庫(kù):greenlet和select.epoll 79 【示例4-7】greenlet庫(kù)應(yīng)用之協(xié)程切換 79 4.5.3 創(chuàng)建協(xié)程的常用API 80 4.5.4 定時(shí)和監(jiān)聽:Hub 81 4.5.5 Eventlet中的并發(fā)機(jī)制 83 第5章 Nova計(jì)算組件 5.1 Nova架構(gòu) 84 5.1.1 Nova基本架構(gòu)及服務(wù)組成 85 5.1.2 Nova內(nèi)部服務(wù)間的通信機(jī)制 86 5.1.3 Nova內(nèi)部服務(wù)間協(xié)同工作 88 5.2 nova-api服務(wù) 89 5.2.1 nova-api服務(wù)的作用 89 5.2.2 nova-api服務(wù)的啟動(dòng)流程 91 5.3 nova-scheduler服務(wù) 95 5.3.1 基本原理及代碼結(jié)構(gòu) 96 5.3.2 調(diào)度過(guò)程 97 5.3.3 配置分析 100 5.4 nova-compute服務(wù) 101 5.4.1 nova-compute服務(wù)的作用 101 5.4.2 nova-compute服務(wù)的啟動(dòng)流程 103 5.4.3 nova-compute服務(wù)的日志分析 105 5.5 周期性任務(wù)的實(shí)現(xiàn) 106 5.5.1 什么是周期性任務(wù) 107 5.5.2 周期性任務(wù)的代碼 108 5.6 資源及服務(wù)刷新機(jī)制 111 5.6.1 服務(wù)上報(bào)機(jī)制 111 5.6.2 主機(jī)資源刷新機(jī)制 112 5.7 典型流程分析 117 5.7.1 nova-scheduler服務(wù)的啟動(dòng)流程 117 5.7.2 虛擬機(jī)創(chuàng)建的流程 120 5.8 案例實(shí)戰(zhàn)Nova以Ceph作為后端存儲(chǔ) 122 第6章 Neutron網(wǎng)絡(luò)組件 6.1 Neutron的發(fā)展歷程 126 6.2 網(wǎng)絡(luò)基礎(chǔ) 127 6.2.1 網(wǎng)絡(luò)的基本概念 127 6.2.2 常用的網(wǎng)絡(luò)設(shè)備 131 6.2.3 虛擬網(wǎng)絡(luò)技術(shù) 131 6.2.4 Neutron網(wǎng)絡(luò)的基本概念 133 6.3 Neutron核心架構(gòu) 135 6.3.1 Neutron部署結(jié)構(gòu) 135 6.3.2 Neutron組成部件 136 6.3.3 ML2 Core Plugin 138 6.3.4 DHCP服務(wù) 141 6.3.5 路由服務(wù) 142 6.3.6 元數(shù)據(jù)服務(wù) 144 6.3.8 Neutron使用示例 147 6.4 高級(jí)服務(wù)(Advanced Services) 149 6.4.1 Load Balancer as a Service(LBaaS) 149 6.4.2 Firewall as a Service(FWaaS) 153 6.4.3 VPN as a Service(VPNaaS) 155 6.5 典型網(wǎng)絡(luò)模型分析 156 6.5.1 Linux Bridge Flat/VLAN網(wǎng)絡(luò)模型 156 6.5.2 Open vSwitch VxLAN網(wǎng)絡(luò)模型 161 6.5.3 小結(jié) 171 第7章 Heat服務(wù)編排組件 7.1 Heat架構(gòu)分析 172 7.1.1 Heat組件的基本架構(gòu) 173 7.1.2 Heat對(duì)資源的管理 175 7.1.3 認(rèn)識(shí)HOT模板 177 7.1.4 小實(shí)例:通過(guò)HOT模板創(chuàng)建虛擬機(jī) 180 7.2 Heat中的鎖機(jī)制 182 7.3 Heat中的Hook機(jī)制 184 【示例7-1】在通過(guò)Heat進(jìn)行資源定義時(shí),應(yīng)該如何使用Hook(鉤子) 185 【示例7-2】通過(guò)Heat創(chuàng)建一個(gè)Stack,在創(chuàng)建Stack時(shí),需要通過(guò)Environment 來(lái)定義Hook(鉤子) 186 7.4 案例實(shí)戰(zhàn)Heat典型案例 189 7.4.1 通過(guò)Heat模板創(chuàng)建Stack 189 7.4.2 Heat Stack創(chuàng)建流程 195 第8章 Keystone認(rèn)證組件 8.1 Keystone的架構(gòu) 198 8.1.1 Keystone的作用 199 8.1.2 Keystone與其他組件間的關(guān)系 201 8.1.3 基本架構(gòu)解析 203 8.1.4 自定義Keystone Plugin 205 8.1.5 支持使用External Plugin 206 8.2 Keystone中的基本概念 207 8.2.1 API V2和API V3 207 8.2.2 其他常見概念 208 8.2.3 多區(qū)域multi-region 209 8.3 Keystone的安裝部署與基本操作 211 8.3.1 Keystone的安裝部署 211 8.3.2 Keystone基本操作 212 【示例8-1】使用OpenStack user create創(chuàng)建一個(gè)名為test的用戶 212 8.4 Keystone的認(rèn)證流程 215 8.4.1 認(rèn)證方式 215 【示例8-2】以查看虛擬機(jī)列表為例,使用X-Auth-Token構(gòu)造一個(gè) 合法的HTTP請(qǐng)求 215 8.4.2 令牌生成方式 216 8.4.3 Keystone工作流程 220 第9章 Cinder塊存儲(chǔ)組件 9.1 Cinder架構(gòu)分析 222 9.2 Cinder的安裝 225 9.2.1 安裝與配置存儲(chǔ)節(jié)點(diǎn) 225 9.2.2 安裝與配置控制節(jié)點(diǎn) 227 9.2.3 安裝與配置Backup服務(wù) 231 9.2.4 安裝正確性驗(yàn)證及Cinder基本操作 232 9.2.5 Cinder配置存儲(chǔ)后端 234 【示例9-1】LVM作為Cinder的后端存儲(chǔ) 234 9.3 案例實(shí)戰(zhàn)通過(guò)Heat模板創(chuàng)建Cinder Volume 235 9.4 Cinder API服務(wù)啟動(dòng)過(guò)程分析 238 9.4.1 cinder-api代碼目錄結(jié)構(gòu) 239 9.4.2 cinder-api服務(wù)啟動(dòng)流程 240 9.4.3 REST請(qǐng)求的路由 242 9.5 案例實(shí)戰(zhàn)關(guān)鍵代碼分析 245 9.5.1 Volume創(chuàng)建示例 245 9.5.2 代碼分析之cinder-api接收請(qǐng)求 247 9.5.3 代碼分析之cinder-scheduler進(jìn)行資源調(diào)度 249 9.5.4 代碼分析之cinder-volume調(diào)用Driver創(chuàng)建Volume 251 第10章 Ceilometer數(shù)據(jù)采集組件 10.1 Ceilometer架構(gòu)分析 254 10.1.1 Ceilometer中的基本概念 255 10.1.2 舊版Ceilometer架構(gòu) 256 10.1.3 新版Ceilometer架構(gòu) 258 10.2 數(shù)據(jù)處理 260 10.2.1 Notification Agents數(shù)據(jù)收集 261 10.2.2 Polling Agents數(shù)據(jù)收集 262 10.2.3 數(shù)據(jù)轉(zhuǎn)換與發(fā)布 263 10.3 Pipelines 265 10.4 計(jì)量項(xiàng) 267 10.5 Agent和Plugin 269 10.5.1 Polling Agents 270 10.5.2 Plugins 272 10.6 案例實(shí)戰(zhàn)Heat與Ceilometer結(jié)合,搭建一個(gè)彈性伸縮系統(tǒng) 274 10.6.1 系統(tǒng)介紹 274 10.6.2 準(zhǔn)備模板 275 10.6.3 創(chuàng)建系統(tǒng) 277 第11章 Glance鏡像組件 11.1 Glance架構(gòu)分析 279 11.2 狀態(tài)分析 280 11.3 代碼結(jié)構(gòu)與概念分析 281 11.3.1 Metadata定義 283 11.3.2 Domain模型 285 【示例11-1】自定義Gateway方法 285 11.3.3 Task定義 287 11.4 Glance的安裝與配置 287 11.4.1 Glance安裝部署 288 11.4.2 Glance基本配置 292 【示例11-2】修改Glance后端存儲(chǔ)為RBD 292 11.5 鏡像緩存 293 11.6 案例實(shí)戰(zhàn)Glance常見場(chǎng)景之鏡像創(chuàng)建 294 第12章 智能運(yùn)維VitrageRCA組件 12.1 Vitrage架構(gòu) 297 12.1.1 High Level架構(gòu)設(shè)計(jì) 298 12.1.2 Low Level架構(gòu)設(shè)計(jì) 300 12.2 Vitrage安裝部署 301 12.2.1 手動(dòng)方式安裝部署Vitrage 301 12.2.2 通過(guò)DevStack安裝Vitrage 303 12.3 Vitrage 模板 304 12.3.1 Templates(模板)的結(jié)構(gòu) 304 【示例12-1】Host處于ERROR狀態(tài)時(shí),觸發(fā)告警的模板 305 12.3.2 模板的加載過(guò)程 306 12.3.3 添加自定義模板 307 12.4 Vitrage Evaluator 310 12.5 自定義Datasources 312 12.6 案例實(shí)戰(zhàn)Vitrage中的告警解決方案 314 第13章 OpenStack其他組件及智能運(yùn)維方案 13.1 Mistral工作流組件 317 13.1.1 Mistral應(yīng)用場(chǎng)景 318 13.1.2 Mistral中的重要概念 318 13.1.3 Mistral功能介紹 320 13.1.4 Mistral架構(gòu)分析 322 13.1.5 Mistral實(shí)戰(zhàn)應(yīng)用 322 【示例13-1】為Mistral添加用戶自定義Action 322 【示例13-2】通過(guò)Mistral獲取虛擬機(jī)數(shù)據(jù) 323 13.2 OpenStack智能運(yùn)維解決方案 326 13.2.1 可視化的Dynatrace 327 13.2.2 VirtTool Networks 327 13.2.3 智能運(yùn)維Vitrage 329 第14章 OpenStack應(yīng)用實(shí)戰(zhàn):自動(dòng)編排和配置高可用Redis系統(tǒng) 14.1 利用cloud-init配置虛擬機(jī) 332 14.1.1 cloud-init的安裝與配置 333 14.1.2 cloud-init對(duì)VM進(jìn)行配置 338 【示例14-1】通過(guò)cloud-init配置虛擬機(jī) 341 14.1.3 cloud-init調(diào)試過(guò)程與問(wèn)題分析 343 14.2 Redis數(shù)據(jù)庫(kù)的HA實(shí)現(xiàn)及Redis集群的創(chuàng)建 347 14.2.1 Redis HA方案實(shí)現(xiàn) 347 14.2.2 Redis Cluster集群實(shí)現(xiàn) 358 第15章 OpenStack架構(gòu)與代碼實(shí)踐 15.1 OpenStack架構(gòu)設(shè)計(jì)思路 366 15.1.1 業(yè)務(wù)架構(gòu)設(shè)計(jì)思路 366 15.1.2 部署架構(gòu)設(shè)計(jì)思路 368 15.1.3 平臺(tái)用戶角色設(shè)計(jì) 369 15.2 案例實(shí)戰(zhàn)向Heat中添加自定義資源 370 15.2.1 實(shí)現(xiàn)原理及思路分析 370 15.2.2 向Heat中添加Zabbix資源 371 15.2.3 定義Zabbix Action 373 15.2.4 實(shí)現(xiàn)AutoScaling模板 375 15.2.5 資源查看 377
你還可能感興趣
我要評(píng)論
|