GI 中新的基礎架構 --MDNS, gipc 和 gpnp 是如何協同工作的
最近一直有朋友來詢問oracle 的叢集管理軟體從11.2 這個版本開始開始出現的新的元件mdns, gpic,和gpnp 是做什麼的,以及他們是如何協調工作的。所以就花了時間寫了這篇文章來解釋一下這些新元件的基本功能和它們之間是如何協同工作的。
首先來回顧一下歷史。對於10g版本的oracle 叢集管理軟體(CRS),當叢集啟動的時候,叢集節點的列表和每個節點的公網地址,私網地址是可以從OCR當中獲得的,而且如果叢集包含多塊私有網路卡的話,是需要依賴於OS層面的網路卡繫結軟體(例如:linux 的bonding)的,也就是說叢集的私網網路卡數量是對CRS透明的,叢集只需要知道經過聚合之後的網路卡名稱就可以了。
但是,在11.2 這個版本開始,oracle的叢集管理軟體(GI)開始需要自己來管理集的網路卡,也就是說GI要能夠管理多塊私網網路卡;另外,由於叢集啟動的流程發生了改變,OLR的出現改變了11.2 叢集啟動的行為,OCR在叢集最初啟動時不再被使用了,而完全變成了叢集應用資源層的一個登錄檔(registry)。所以,就需要一些元件來完成節點發現,叢集節點列表構建的工作(這部分資訊在10.2中都是在OCR中寫好的)。所以,就出現了:
1. mdns:這個元件以mdmsd.bin 的方式出現,他負責在叢集啟動時找到本地節點叢集需要使用的所有網路卡,以便為節點發現提供基本的網路通訊功能。
2. gpnpd:這個元件以gpnpd.bin 的方式出現,它透過維護gpnpd profile 的方式把構建叢集所需要的核心資訊在節點之間進行同步。當然,這種資訊同步的過程是需要藉助mdns來實現的。具體說,gpnpd再啟動之後會:
步驟1:讀取本地的gpnp profile得到構建叢集的核心資訊。
步驟2:和mdns進行通行,透過mdns發現的網路卡向網路中傳送訊息,找到叢集中的其他節點。
步驟3:和其他的節點建立連結,同步彼此的gpnp profile 檔案。
注意:詳細的gpnpd 的功能,請參考之前的文章 “11gR2新特性---Gpnp守護程式“。當gpnp 正常啟動成功之後,實際上節點發現,叢集節點列表構建的工作就結束了。
3.gipc:這部分功能是以gipcd.bin 的方式出現的,它負責管理叢集中節點的私網網路卡。並建立節點和節點之間透過私網的點對點通訊。它相當於gpnp 的一個重要客戶,因為叢集的核心資訊是要透過gpnp來提供的。關於gipc的詳細功能,請參考我之前的文章“11gR2新特性---gipc守護程式”。
透過上面的三個元件,就可以完成節點發現,叢集節點列表構建的工作,以及管理節點私有網路的工作。而這種設計的另外一個好處在於,它能夠使叢集的結構更加的靈活和有彈性。如果簡單的解釋著三個元件的關係的話,可以認為,mdns 為gpnp 提供了網路通訊服務, gpnp相當於mdns的客戶;gpnp相當於叢集的其他上層資源的一個服務元件,它能夠向叢集的其它元件提供叢集的基本核心資訊。gipc相當於gpnpd的一個重要客戶,它負責管理叢集節點的私有網路。
望這篇文章對於大家理解這三個11.2新出現的元件有所幫助。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25462274/viewspace-2141846/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Ruby on Rails中的MVC架構是如何工作的AIMVC架構
- sdn專線架構是怎樣的?如何工作?——Vecloud架構Cloud
- 朱曄的網際網路架構實踐心得S2E7:漫談平臺架構的工作(基礎架構、基礎服務、基礎平臺、基礎中介軟體等等)架構
- IT架構的基礎實施架構
- 基於雲邊協同架構的五大應用場景革新架構
- 01 | 基礎架構:一條SQL查詢語句是如何執行的?架構SQL
- MySQL基礎架構和事務MySql架構
- Zoopkeeper基礎(一):架構和元件OOP架構元件
- Netty的基礎架構模型Netty架構模型
- Oracle架構的基礎知識Oracle架構
- 基於同網段的RAC架構VIP修改架構
- 基於sanic的微服務基礎架構微服務架構
- 下一代的微服務架構基礎是ServiceMesh?微服務架構
- 研發協同平臺架構演進架構
- MySQL基礎架構MySql架構
- Oracle基礎構架Oracle
- MySQL 基礎架構MySql架構
- mysql資料庫的基礎架構MySql資料庫架構
- oracle架構的基礎知識(轉)Oracle架構
- git的工作管理和基礎操作Git
- 構建多方協同的資料治理基礎,促進資料要素良性發展
- TCP和UDP是如何工作的TCPUDP
- 架構師的工作架構
- React Native 新架構是怎麼工作的?React Native架構
- 架構設計之一——基礎架構架構
- 企業架構師、解決方案架構師和技術架構師的異同 - Briqi架構
- 唯品會架構師是如何實現架構重構的架構
- redis哨兵架構基礎Redis架構
- MySQL基礎架構分析MySql架構
- 探索ABP基礎架構架構
- MySQL之基礎架構MySql架構
- 搭建基礎架構-Page架構
- 什麼是基礎架構即程式碼(IaC)-dev架構dev
- 如何理解VMware內建於IT基礎架構的原生安全能力?架構
- 美麗的架構,是用更少的機制做更多的工作架構
- IDC:混合雲和軟體定義是未來數字基礎架構的主流模式架構模式
- Spring Cloud雲架構-Restful 基礎架構SpringCloud架構REST
- 《架構基礎 從需求到架構》讀書架構