欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

openstack云計(jì)算cinder架構(gòu)及各組件功能介紹

 更新時(shí)間:2022年04月20日 09:03:05   作者:林海峰  
這篇文章主要為大家介紹了openstack云計(jì)算之cinder架構(gòu)及各組件功能介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

一 cinder各組件

1、cinder主要組成:

#cinder-api
#cinder-scheduler
#cinder-volume

2、cinder各組件功能:

Cinder-api 是 cinder 服務(wù)的 endpoint,提供 rest 接口,負(fù)責(zé)處理 client 請求,并將 RPC 請求發(fā)送至 cinder-scheduler 組件。

Cinder-scheduler 負(fù)責(zé) cinder 請求調(diào)度,其核心部分就是 scheduler_driver, 作為 scheduler manager 的 driver,負(fù)責(zé) cinder-volume 具體的調(diào)度處理,發(fā)送 cinder RPC 請求到選擇的 cinder-volume。

Cinder-volume 負(fù)責(zé)具體的 volume 請求處理,由不同后端存儲提供 volume 存儲空間。目前各大存儲廠商已經(jīng)積極地將存儲產(chǎn)品的 driver 貢獻(xiàn)到 cinder 社區(qū)

3、nova與cinder的工作原理類似

nova主要組成:

#nova-api
#nova-scheduler
#nova-compute
#nova-conductor

二 cinder架構(gòu)圖

openstack組件間通信:調(diào)用各組件api提供的rest接口,組件內(nèi)通信:基于rpc(遠(yuǎn)程過程調(diào)用)機(jī)制,而rpc機(jī)制是基于AMQP模型實(shí)現(xiàn)的

從rpc使用的角度出發(fā),nova,neutron,和cinder的流程是相似的,我們以cinder為例闡述rpc機(jī)制

參考鏈接:https://developer.ibm.com/

三 RPC機(jī)制

Openstack 組件內(nèi)部的 RPC(Remote Producer Call)機(jī)制的實(shí)現(xiàn)是基于 AMQP(Advanced Message Queuing Protocol)作為通訊模型,從而滿足組件內(nèi)部的松耦合性。AMQP 是用于異步消息通訊的消息中間件協(xié)議

AMQP 模型有四個(gè)重要的角色:

Exchange:根據(jù) Routing key 轉(zhuǎn)發(fā)消息到對應(yīng)的 Message Queue 中

Routing key:用于 Exchange 判斷哪些消息需要發(fā)送對應(yīng)的 Message Queue

Publisher:消息發(fā)送者,將消息發(fā)送的 Exchange 并指明 Routing Key,以便 Message Queue 可以正確的收到消息

Consumer:消息接受者,從 Message Queue 獲取消息

消息發(fā)布者 Publisher 將 Message 發(fā)送給 Exchange 并且說明 Routing Key。Exchange 負(fù)責(zé)根據(jù) Message 的 Routing Key 進(jìn)行路由,將 Message 正確地轉(zhuǎn)發(fā)給相應(yīng)的 Message Queue。監(jiān)聽在 Message Queue 上的 Consumer 將會從 Queue 中讀取消息。

Routing Key 是 Exchange 轉(zhuǎn)發(fā)信息的依據(jù),因此每個(gè)消息都有一個(gè) Routing Key 表明可以接受消息的目的地址,而每個(gè) Message Queue 都可以通過將自己想要接收的 Routing Key 告訴 Exchange 進(jìn)行 binding,這樣 Exchange 就可以將消息正確地轉(zhuǎn)發(fā)給相應(yīng)的 Message Queue。

Publisher可以分為4類:

  • Direct Publisher發(fā)送點(diǎn)對點(diǎn)的消息;
  • Topic Publisher采用“發(fā)布——訂閱”模式發(fā)送消息;
  • Fanout Publisher發(fā)送廣播消息的發(fā)送;
  • Notify Publisher同Topic Publisher,發(fā)送 Notification 相關(guān)的消息。

Exchange可以分為3類:

  • 1.Direct Exchange根據(jù)Routing Key進(jìn)行精確匹配,只有對應(yīng)的 Message Queue 會接受到消息;
  • 2.Topic Exchange根據(jù)Routing Key進(jìn)行模式匹配,只要符合模式匹配的Message Queue都會收到消息;
  • 3.Fanout Exchange將消息轉(zhuǎn)發(fā)給所有綁定的Message Queue。

AMQP消息模型

RPC 發(fā)送請求

Client 端發(fā)送 RPC 請求由 publisher 發(fā)送消息并聲明消息地址,consumer 接收消息并進(jìn)行消息處理,如果需要消息應(yīng)答則返回處理請求的結(jié)果消息。

OpenStack RPC 模塊提供了 rpc.call,rpc.cast, rpc.fanout_cast 三種 RPC 調(diào)用方法,發(fā)送和接收 RPC 請求。

1.rpc.call 發(fā)送 RPC 請求并返回請求處理結(jié)果,請求處理流程如圖 5 所示,由 Topic Publisher 發(fā)送消息,Topic Exchange 根據(jù)消息地址進(jìn)行消息轉(zhuǎn)發(fā)至對應(yīng)的 Message Queue 中,Topic Consumer 監(jiān)聽 Message Queue,發(fā)現(xiàn)需要處理的消息則進(jìn)行消息處理,并由 Direct Publisher 將請求處理結(jié)果消息,請求發(fā)送方創(chuàng)建 Direct Consumer 監(jiān)聽消息的返回結(jié)果

圖5.RPC.call消息流程

2.rpc.cast 發(fā)送 RPC 請求無返回,請求處理流程如圖 6 所示,與 rpc.call 不同之處在于,不需要請求處理結(jié)果的返回,因此沒有 Direct Publisher 和 Direct Consumer 處理。

圖 6. RPC.cast 消息流程

3.rpc.fanout_cast 用于發(fā)送 RPC 廣播信息無返回結(jié)果

圖 7. RPC.fanout 消息處理

以上就是openstack云計(jì)算cinder架構(gòu)及各組件功能介紹的詳細(xì)內(nèi)容,更多關(guān)于openstack云計(jì)算cinder架構(gòu)組件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論