




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
8.2計算服務Nova8.2.1Nova組件介紹8.2.2Libvirt簡介8.2.3Nova中的RabbitMQ解析28.2計算服務NovaNova中的RabbitMQ解析消息隊列(Queue)與數據庫(Database)終端用戶(DevOps、Developers、OpenStack)Nova守護進程系統內消息傳遞和信息共享任務之間、模塊之間、接口之間的異步部署NovaAPI與OpenStack系統的互動消息隊列和數據庫完成終端用戶的云服務請求38.2計算服務NovaRabbitMQRabbitMQ是一種處理消息驗證、消息轉換和消息路由的架構模式,它協調應用程序之間的信息通信,并使得應用程序或者軟件模塊之間的相互意識最小化,有效實現解耦。OpenStackNova系統信息交換中樞RabbitMQ48.2計算服務NovaRabbitMQRabbitMQ適合部署在一個拓撲靈活易擴展的規模化系統環境中,有效保證不同模塊、不同節點、不同進程之間消息通信的時效性;RabbitMQ特有的集群HA安全保障能力可以實現信息樞紐中心的系統級備份,同時單節點具備消息恢復能力功能性時效性安全可靠性SLA方面58.2計算服務NovaAMQPAMQP是應用層協議的一個開放標準,為面向消息的中間件而設計RabbitMQ是AMQP協議的一個開源實現OpenStackNova各軟件模塊通過AMQP協議實現信息通信AMQP協議的設計理念可歸納為基于狀態的面向無連接通信系統模式對于AMQP來講,消息隊列的狀態信息決定通信系統的轉發路徑IP數據包根據路由表實現報文的本地存儲與逐級轉發68.2計算服務NovaAMQPAMQP目標實現端到端的信息通信AMQP實現通信的因素是什么兩個基本的概念AMQP實現通信的實體以及機制是什么78.2計算服務NovaAMQP交換器(Exchange)交換器由消費者應用程序創建,并且可與其他應用程序實現共享服務接收消息之后通過路由表將消息準確且安全地轉發至相應的消息隊列每個交換器通過唯一的ExchangeID進行識別持久交換器臨時交換器自動刪除交換器持久交換器并不會因為系統重啟或者應用程序終止而消除駐留在內存中,隨著系統的關閉而消失隨著宿主應用程序的中止而自動消亡隊列(Queue)88.2計算服務NovaAMQP主要用于實現存儲與轉發交換器發送來的消息,隊列同時也具備靈活的生命周期屬性配置,可實現隊列的持久保存、臨時駐留與自動刪除。消息隊列交換器AMQP的三個關鍵組件任何一個組件的失效都會導致信息通信的中斷,因此鑒于三個關鍵組件的重要性,系統在創建三個組件的同時會打上“Durable”標簽,表明在系統重啟之后立即恢復業務功能。98.2計算服務NovaAMQP構成AMQP的三個關鍵要素的工作方式如圖所示。消息生產者消息生產者交換器消息隊列-1消息隊列-2消息隊列-3……消息隊列-N消息消費者消息消費者108.2計算服務NovaAMQP三種不同類型的交換器廣播式交換器(FanoutExchange)直接式交換器(DirectExchange)主題式交換器(TopicExchange)118.2計算服務NovaNova中的RabbitMQ應用目前Nova中的各個模塊通過RabbitMQ服務器以RPC(遠程過程調用)的方式實現通信,而且各模塊之間形成松耦合關聯關系,在擴展性、安全性以及性能方面均體現優勢。Nova系統信息中樞RabbitMQ128.2計算服務NovaNova中的RabbitMQ應用1)交換器2)隊列3)綁定接受消息并且將消息轉發給隊列。應用程序在它的權限范圍之內可以創建、刪除、使用和共享交換器實例。交換器可以是持久的、臨時的或者自動刪除的“消息隊列”,它是一個具名緩沖區,它代表一組消費者應用程序保存消息。這些應用程序在它們的權限范圍內可以創建、使用、共享消息隊列。可以理解為交換器和消息隊列之間的一種關系,綁定之后交換器會知道應該把消息發給哪個隊列,綁定的關鍵字稱為binding_key。138.2計算服務NovaNova中的RabbitMQ應用該類交換器不分析所接收到消息中的RoutingKey,默認將消息轉發到所有與該交換器綁定的隊列中去。廣播式交換器轉發效率最高,但是安全性較低,消費者應用程序可獲取本不屬于自己的消息。廣播交換器是最簡單的一種類型,就像我們從字面上理解到的一樣,它把所有接收到的消息廣播到所有它所知道的隊列中去,不論消息的關鍵字是什么,消息都會被路由到和該交換器綁定的隊列中去。1)廣播式交換器類型(fanout)148.2計算服務NovaNova中的RabbitMQ應用在程序中申明一個廣播式交換器的代碼如下:PX1)廣播式交換器類型(fanout)channel.exchange_declare(exchange='fanout',type='fanout')158.2計算服務NovaNova中的RabbitMQ應用直接式交換器的轉發效率較高,安全性較好,但是缺乏靈活性,系統配置量較大。相對廣播交換器來說,直接交換器可以給我們帶來更多的靈活性。直接交換器的路由算法很簡單:一個消息的routing_key完全匹配一個隊列的binding_key,就將這個消息路由到該隊列。綁定的關鍵字將隊列和交換器綁定到一起。當消息的routing_key和多個綁定關鍵字匹配時消息可能會被發送到多個隊列中。2)直接式交換器類型(direct)168.2計算服務NovaNova中的RabbitMQ應用PXC2C2Q1Q2orangegreenblackType=direct直接交換器的工作方式2)直接式交換器類型(direct)178.2計算服務NovaNova中的RabbitMQ應用PXC2C2Q1Q2*.orange*Lazy.#*.*rabbitType=topic3)主題式交換器(TopicExchange)188.2計算服務NovaNova中的RabbitMQ應用Nova基于RabbitMQ實現兩種RPC調用RPC.CALLRPC.CAST基于請求與響應方式只是提供單向請求Nova的各個模塊在邏輯功能上可以劃分為兩種Invoker模塊Worker模塊主要功能是向消息隊列中發送系統請求消息,如Nova-API和Nova-Scheduler;從消息隊列中獲取Invoker模塊發送的系統請求消息以及向Invoker模塊回復系統響應消息,如Nova-Compute、Nova-Volume和Nova-Network。198.2計算服務NovaTopic消息生產者Nova中的RabbitMQ應用Direct消息消費者Direct消息隊列點對點消息隊列共享消息隊列交換機Direct消息生產者Topic消息生產者1Topic消息生產者2Topic消息生產者3交換器RoutingKey=NODE-TYPE.NODE-IDRoutingKey=NODE-TYPE.Topic交換域Direct交換域RabbitMQ服務器InvokerWorker208.2計算服務NovaNova中的RabbitMQ應用Topic消息生產者Direct消息消費者Direct消息隊列點對點消息隊列交換機Direct消息生產者Topic消息消費者1交換器RoutingKey=NODE-TYPE.NODE-IDTopic交換域Direct交換域RabbitMQ服務器InvokerWorkerRoutingKey=MSG-ID218.2計算服務NovaNova中的RabbitMQ應用Invoker端生成一個Topic消息生產者和一個Direct消息消費者。其中,Topic消息生產者發送系統請求消息到Topic交換器,Direct消息消費者等待響應消息。Topic交換器根據消息的RoutingKey轉發消息,Topic消費者從相應的消息隊列中接收消息,并傳遞給負責執行相關任務的Worker。Worker根據請求消息執行完任務之后,分配一個Direct消息生產者,Direct消息生產者將響應消息發送到Direct交換器。Direct交換器根據響應消息的RoutingKey轉發至相應的消息隊列,Direct消費者接收并把它傳
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- NB/T 11634-2024煤礦用局部通風機低噪聲結構設計與噪聲限定要求
- 2025年職業培訓師考試試題及答案
- 2025年中小學教師職稱考試試題及答案
- 2025年信息與計算科學專業考試試題及答案
- 四道題性格測試題及答案
- 西方政治制度下的教育政策影響試題及答案
- 網絡流量識別技巧試題及答案
- 機電工程新興市場分析試題及答案
- 西方政治制度中的法治精神與實踐探討試題及答案
- 影響立法過程的關鍵因素試題及答案
- 建設項目用地預審管理課件
- 孕前優生知識課件
- 各級醫療機構醫院耐多藥肺結核臨床路徑標準住院流程及表單(2020年版)
- 海姆立克急救操作考核評分標準
- 事業單位管理崗位職員等級晉升審批表
- GB∕T 19017-2020 質量管理 技術狀態管理指南
- 道路施工項目施工期間環境影響分析及環保措施
- 2022年學校開展安全隱患排查整治工作總結范文3篇
- 視聽語言 第二講 景別與角度
- 6.8相遇問題(課件) 數學四年級下冊(共15張PPT)人教版
- 第5章(第一節菊花)
評論
0/150
提交評論