iT邦幫忙

2024 iThome 鐵人賽

DAY 16
0
自我挑戰組

VMware vSAN 儲存架構從看懂到看開系列 第 16

Day16 - CMMDS (Cluster monitoring, membership, and directory service)

  • 分享至 

  • xImage
  •  

vSAN的四大Component - CMMDS、DOM、CLOM、LSOM,他們四個從最底層與物理硬碟交互到最上層協同各個Cluster裡的Nodes,彼此各司其職,大致上的交互邏輯如下圖所示,本篇將介紹的是vSAN CMMDS。

https://ithelp.ithome.com.tw/upload/images/20240903/20130271IRObNAooZI.png

vSAN CMMDS(Cluster Monitoring, Membership, and Directory Service)主要運作在ESXi的kernel層。負責在vSAN Cluster和vSAN Node之間,進行探索、維護等監控任務,並管理Cluster裡的各項資源,例如網路、儲存空間、Component數量等。這些Cluster metadata會以key-value形式存在directory中。

由於vSAN是一個分散式儲存系統,directory上面的資料難免會有碰撞和衝突。vSAN CMMDS採取的是master-agent架構,vSAN Cluster會透過Paxos演算法選舉出master node,其他node則為agent。當Object訊息發生異動時,agent會向master node提供更新訊息,由master決定是否要更新。同時,master也會單播(unicast)這些metadata訊息給其他節點。節點彼此間會透過經典的heartbeat傳輸以保證Cluster內的所有node都是健康的。

vSAN CMMDS為最終一致性架構,意思是如果A對一個Object做寫入或修改,同時B讀取Object的metadata時可能會有過期的資訊。一般來說,1毫秒內可以消除這個資訊不對稱的問題。

到目前為止,vSAN CMMDS聽起來像是vSAN內部的一個Backend Service,專門搜集Cluster的metadata然後存著。那麼,vSAN的哪個Component會對CMMDS發出request呢?是DOM(Distribute Object Manager)。我們會在下一篇提到DOM。

總結

  • CMMDS負責搜集Cluster的metadata,例如網路、儲存空間、Component數量等。
  • CMMDS以key-value的形式儲存metadata,各個ESXi host可以query這些資料。
  • CMMDS是分散式系統架構,每個node可擔任master、agent或backup的角色。agent向master提供Cluster metadata,master決定是否更新,backup則作為master的備份,萬一master掛掉可以替代。
  • CMMDS為最終一致性架構,但Cluster裡的metadata通常可以保證1毫秒內達成一致。

更多vSAN相關的文章歡迎參閱我的部落格: https://kaichiachen.github.io/2023/09/15/vsan/ioworkflow_cmmds/


上一篇
Day15 - FileService & iSCSI
下一篇
Day17 - DOM (Distributed Object Manager)
系列文
VMware vSAN 儲存架構從看懂到看開24
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言