高可用儲存架構 集群和分割槽

2022-09-10 20:21:32 字數 1802 閱讀 5563

兩種常見的高可用儲存架構:資料集群和資料分割槽。

1、資料集群

使用多台伺服器來儲存資料即為資料集群架構,集群指的是多台(至少三颱)機器組合在一起形成乙個統一的系統,根據集群中機器承擔的不同角色可分為兩類:資料集中集群資料分散集群。

1)資料集中集群

類似於主備、主從架構,資料都往主機中寫,讀操作可參考主備、主從架構靈活多變。如下圖:

2). 資料分散集群

資料分散集群指多個伺服器組成乙個集群,每台伺服器都會負責儲存一部分資料;同時,為了提公升硬體利用率,每台伺服器又會備份一部分資料。

資料分散集群的複雜點在於如何將資料分配到不同的伺服器上,演算法需要考慮這些設計點:

資料分散集群和資料集中集群的不同點在於資料分散集群中的每台伺服器都可以處理讀寫請求,因此不存在資料集中集群中負責寫的主機那樣的角色。但在資料分散集群中,必須有乙個角色來負責執行資料分配演算法,這個角色可以是獨立的一台伺服器,也可以是集群自己選舉出的一台伺服器。如果是集群伺服器選舉出來一台機器承擔資料分割槽分配的職責,則這台伺服器一般也會叫作主機,但我們需要知道這裡的「主機」和資料集中集群中的「主機」,其職責是有差異的。

資料集中集群架構中,客戶端只能將資料寫到主機;資料分散集群架構中,客戶端可以向任意伺服器中讀寫資料。正是因為這個關鍵的差異,決定了兩種集群的應用場景不同。一般來說,資料集中集群適合資料量不大,集群機器數量不多的場景。例如,zookeeper 集群,一般推薦 5 臺機器左右,資料量是單台伺服器就能夠支撐;而資料分散集群,由於其良好的可伸縮性,適合業務資料量巨大、集群機器數量龐大的業務場景。例如,hadoop 集群、hbase 集群,大規模的集群可以達到上百臺甚至上千臺伺服器。

2、資料分割槽

因自然災害等不可抗因素,需要基於地理級別的故障來設計高可用架構,這就是資料分割槽架構產生的背景。

資料分割槽指將資料按照一定的規則進行分割槽,不同分割槽分布在不同的地理位置上,每個分割槽儲存一部分資料,通過這種方式來規避地理級別的故障所造成的巨大影響。採用了資料分割槽的架構後,即使某個地區發生嚴重的自然災害或者事故,受影響的也只是一部分資料,而不是全部資料都不可用;當故障恢復後,其他地區備份的資料也可以幫助故障地區快速恢復業務。

設計乙個良好的資料分割槽架構,需要從多方面去考慮。

集中式集中式備份指存在乙個總的備份中心,所有的分割槽都將資料備份到備份中心,其基本架構如下:

集中式備份架構的優缺點是:

互備式互備式備份指每個分割槽備份另外乙個分割槽的資料,其基本架構如下:

互備式備份架構的優缺點是:

獨立式獨立式備份指每個分割槽自己有獨立的備份中心,其基本架構如下:

特別注意,各個分割槽的備份並不和原來的分割槽在乙個地方。這樣做的主要目的是規避同城或者相同地理位置同時發生災難性故障的極端情況。

獨立式備份架構的優缺點是:

mysql集群高可用架構

前言 高可用架構對於網際網路服務基本是標配,無論是應用服務還是資料庫服務都需要做到高可用。對於乙個系統而言,可能包含很多模組,比如前端應用,快取,資料庫,搜尋,訊息佇列等,每個模組都需要做到高可用,才能保證整個系統的高可用。對於資料庫服務而言,高可用可能更複雜,對使用者的服務可用,不僅僅是能訪問,還...

mysql高可用集群 MHA架構

或者 新增乙個yum源 wget ease 5 4.noarch.rpm 系統核心 mysql版本 記憶體centos release 5.8 linux 2.6.18 308.el5xen mysql 5.5.352g 2.架構 伺服器列表 ip機器名 角色192.168.2.7 haproxy0...

高可用集群

高可用集群主要實現自動偵測 auto detect 故障 自動切換 故障轉移 failover 和自動恢復 failback 簡單來說就是,用高可用集群軟體實現故障檢查和故障轉移 故障 備份主機切換 的自動化,當然像負載均衡 dns分發也可提供高可性。active passive 主備模型 acti...