Galera集群
一、galera-cluster 的介绍
Galera Cluster是Codership公司开发的一套免费开源的高可用方案,官网为http://galeracluster.com。Galera Cluster即为安装了Galera的Mariadb集群(本文只介绍Mariadb Garela集群)。其本身具有multi-master特性,支持多点写入。Galera Cluster的三个(或多个)节点是对等关系,每个节点均支持写入,集群内部会保证写入数据的一致性与完整性,具体实现原理会在本篇中做简要介绍。
官方给出的特性如下:
-
真正的多主集群,Active-Active架构;
-
同步复制,没有复制延迟;
-
多线程复制;
-
没有主从切换操作,无需使用虚IP;
-
热备份,单个节点故障期间不会影响数据库业务;
-
支持节点自动加入,无需手动拷贝数据;
-
支持InnoDB存储引擎;
-
对应用程序透明,原生MySQL接口;
-
无需做读写分离;
-
部署使用简单。
二、galera-cluster 的运行原理
主要关注点是数据一致性。 事务既可以应用于每个节点,也可以不全部应用。 所以,只要它们配置正确,数据库保持同步。
Galera复制插件不同于传统的MySQL复制,可以解决多个问题,包括多主写入冲突,复制滞后和主从不同步
由于galera集群 需要MySQL 服务器支持 wsrep API
所以我们需要下载一个有wsrepAPI的模块或者支持该模块的mysql
wsrep API 是数据库的通用复制插件接口,比较类似一种应用程序,主要针对写复制, 主要用于定义应用程序如何调用复制库实现回写
[http://galeracluster.com/downloads/]{.underline}
三、部署配置
- 准备环境**(准备4台机器,做好域名解析)**
node0:192.168.10.100 node1:192.168.10.101 node2:192.168.10.102 node3:192.168.10.103
1.官网下载安装包
[https://galeracluster.com/downloads/]{.underline}