標籤:percona mode 工作流程 資料庫 透明 複製 mysq vpd bin
一、galera cluster 簡介1、Galera Cluster:
整合了Galera外掛程式的MySQL叢集,是一種新型的,資料不共用的,高度冗餘的高可用方案,目前Galera Cluster有兩個版本,分別是Percona Xtradb Cluster及MariaDB Cluster,Galera本身是具有多主特性的,即採用multi-master的叢集架構,是一個既穩健,又在資料一致性、完整性及高效能方面有出色表現的高可用解決方案。 示:三個節點群組成了一個叢集,與普通的主從架構不同,它們都可以作為主節點,三個節點是對等的,稱為multi-master架構,當有用戶端要寫入或者讀取資料時,串連哪個執行個體都是一樣的,讀到的資料是相同的,寫入某一個節點之後,叢集自己會將新資料同步到其它節點上面,這種架構不共用任何資料,是一種高冗餘架構。
2、特點
- 多主架構:真正的多點讀寫的叢集,在任何時候讀寫資料,都是最新的。
- 同步複製:叢集不同節點之間資料同步,沒有延遲,在資料庫掛掉之後,資料不會丟失
- 並發複製:從節點APPLY資料時,支援並存執行,更好的效能
- 故障切換:在出現資料庫故障時,因支援多點寫入,切換容易
- 熱插拔:在服務期間,如果資料庫掛了,只要監控程式發現的夠快,不可服務時間就會非常少。在節點故障期間,節點本身對叢集的影響非常小
- 自動節點複製:在新增節點,或者停機維護時,增量資料或者基礎資料不需要人工手動備份提供,Galera Cluster會自動拉取線上節點資料,最終叢集會變為一致
- 對應用透明:叢集的維護,對應用程式是透明的
3、工作流程圖
4、Galera Cluster包括兩個組件
- Galera replication library (galera-3)
- WSREP:MySQL extended with the Write Set Replication
WSREP複製實現:percona-cluster MariaDB-Cluster
二、實驗環境1、準備好3台虛擬機器主機,centos7系統,配置好epel源2、vim dvd.repo加入下面的倉庫
[mariadb]
name = MariaDB
baseurl = https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-5.5.60/yum/centos7-amd64/
gpgcheck=0
3、直接yum安裝
yum install MariaDB-Galera-server
三、實驗步驟1、修改設定檔,三個節點一樣vim /etc/my.cnf.d/server.cnf
wsrep_provider = /usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.190.129,192.168.190.130.192.168.190.131"
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
bind-address=0.0.0.0
下面配置可選項
wsrep_cluster_name = ‘mycluster‘預設my_wsrep_cluster
wsrep_node_name = ‘node1‘
wsrep_node_address = ‘192.168.190.129‘
2、初次開機時,需要初始化叢集,在其中一個節點上執行命令:
/etc/init.d/mysql start --wsrep-new-cluster
3、正常啟動其它節點
service mysql start
4、查看叢集中相關係統變數和狀態變數:
SHOW VARIABLES LIKE ‘wsrep_%‘;
SHOW STATUS LIKE ‘wsrep_%‘;
SHOW STATUS LIKE ‘wsrep_cluster_size‘;
基於galera cluster叢集實現mysql資料庫的高可用