mysql集群高可用架構

2022-09-06 12:33:18 字數 2084 閱讀 9834

前言

高可用架構對於網際網路服務基本是標配,無論是應用服務還是資料庫服務都需要做到高可用。對於乙個系統而言,可能包含很多模組,比如前端應用,快取,資料庫,搜尋,訊息佇列等,每個模組都需要做到高可用,才能保證整個系統的高可用。對於資料庫服務而言,高可用可能更複雜,對使用者的服務可用,不僅僅是能訪問,還需要有正確性保證,因此資料庫的高可用方案是一直以來的討論熱點,今天就各種的高可用方案,談一下個人的一些看法,如有錯誤,還請指正!!

mysql主從架構

此種架構,一般初創企業比較常用,也便於後面步步的擴充套件

此架構特點:

1、成本低,佈署快速、方便

2、讀寫分離

3、還能通過及時增加從庫來減少讀庫壓力

4、主庫單點故障

5、資料一致性問題(同步延遲造成)

mysql+drdb架構

通過drbd基於block塊的複製模式,快速進行雙主故障切換,很大程度上解決主庫單點故障問題

此架構特點:

1、高可用軟體可使用heartbeat,全面負責vip、資料與drbd服務的管理

2、主故障後可自動快速切換,並且從庫仍然能通過vip與新主庫進行資料同步

3、從庫也支援讀寫分離,可使用中介軟體或程式實現

mysql+mha架構

mha目前在mysql高可用方案中應該也是比較成熟和常見的方案,它由日本人開發出來,在mysql故障切換過程中,mha能做到快速自動切換操作,而且還能最大限度保持資料的一致性

此架構特點:

1、安裝佈署簡單,不影響現有架構

2、自動監控和故障轉移

3、保障資料一致性

4、故障切換方式可使用手動或自動多向選擇

5、適應範圍大(適用任何儲存引擎)

mysql+mmm架構

mmm即master-master replication manager for mysql(mysql主主複製管理器),是關於mysql主主複製配置的監控、故障轉移和管理的一套可伸縮的指令碼套件(在任何時候只有乙個節點可以被寫入),這個套件也能基於標準的主從配置的任意數量的從伺服器進行讀負載均衡,所以你可以用它來在一組居於複製的伺服器啟動虛擬ip,除此之外,它還有實現資料備份、節點之間重新同步功能的指令碼。

mysql本身沒有提供replication failover的解決方案,通過mmm方案能實現伺服器的故障轉移,從而實現mysql的高可用。

此方案特點:

1、安全、穩定性較高,可擴充套件性好

2、 對伺服器數量要求至少三颱及以上

3、 對雙主(主從複製性要求較高)

4、 同樣可實現讀寫分離

mysql cluster架構

mysql官方推出的集群高可用方案,由於本人沒有用過,不好評價

摘自網路上的一段解釋

mysql cluster 由一組計算機構成,每台計算機上均執行著多種程序,包括 mysql伺服器,ndb cluster的資料節點,管理伺服器,以及(可能)專門的資料訪問程式。 

由於mysql cluster架構複雜,部署費時(通常需要dba幾個小時的時間才能完成搭建),而依靠 mysql cluster manager 只需乙個命令即可完成,但 mysql cluster manager 是收費的。並且業內資深人士認為ndb 不適合大多數業務場景,而且有安全問題。因此,使用的人數較少。

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...

高可用集群架構的演進

我們專案組是做企業資料匯流排的,一開始的架構是採用apache httpd mod jk 做負載均衡,應用則部署在tomcat集群上面,該架構方案雖然考慮了tomcat容器級別的高可用,但並未考慮httpd的高可用,該方案的拓撲圖如下 該方案的缺點顯而易見,一旦httpd宕機,使用者將無法訪問應用,...