MariaDB Galera Cluster集群配置

  • A+
所属分类:MySQL数据库

集群环境介绍:

MariaDB Galera Cluster集群配置

注释:通常在使用MariaDB的过程中,也不难实现一种Multi-Master架构,但是一般需要上层应用来配合,比如先要约定每个表必须有自增列,并且如果是2个节点的情况,一个节点只能写偶数值,而另一个节点只能写奇数值,同时2个节点之间互相做复制,因为2个节点写入的东西不同,所以复制不会冲突,在这种约定之下,可以基本实现多Master架构,也可以保证数据的完整性与一致性。但这种方式使用起来还是有限制,同时还会出现复制延迟,且不具有扩展性,不是真正意义上的集群。

网络拓扑图:

MariaDB Galera Cluster集群配置

注释:这里因为同时做了MariaDBMySQL的高可用集群测试、MariaDB集群只用看左边MariaDB Galera Cluster的拓扑就可以了。

宿主机CentOS版本信息:

MariaDB Galera Cluster集群配置

基础工具安装:

yum -y install wget vim ntp net-tools tree openssh

关闭seLinux和防火墙:

systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
sed -i '/^SELINUX=.*/c SELINUX=disabled' /etc/selinux/config
sed -i 's/^SELINUXTYPE=.*/SELINUXTYPE=disabled/g' /etc/selinux/config
grep --color=auto '^SELINUX' /etc/selinux/config
setenforce 0

MariaDB Galera Cluster集群配置

配置网卡信息(修改网卡信息之前一定要先执行以下yum update让系统同步yum源、要不然你懂得)

MariaDB Galera Cluster集群配置

配置hostname:

MariaDB Galera Cluster集群配置

修改时区:

timedatectl list-timezones          # 列出所有时区,

timedatectl set-local-rtc 1          # 将硬件时钟调整为与本地时钟一致, 0 为设置为 UTC 时间

timedatectl set-timezone Asia/Shanghai           # 设置系统时区为上海

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime           # 系统底层修改时区

升级、重启:

yum update -y  && reboot

三台主机加入/etc/hosts使节点之间可以互相解析:

MariaDB Galera Cluster集群配置

设置MariaDBYum源并安装(所有节点):

MariaDB Galera Cluster集群配置

执行安装命令:

yum install MariaDB-server MariaDB-client galera  -y

安装完成之后初始化MariaDB:

systemctl start mariadb

mysql_secure_installation (按提示设置mysql密码)

systemctl stop mariadb

授权root用户可以远程访问数据库:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '980430' WITH GRANT OPTION;

root是登陆数据库的用户,980430是登陆数据库的密码,*就是意味着任何来源任何主机。

配置好权限之后,刷新使之生效:

配置命令:

flush privileges;

再次远程访问数据库就可以了。

配置Galera:

MariaDBA节点配置文件    /etc/my.cnf.d/server.cnf

MariaDB Galera Cluster集群配置

注释:将此文件复制到MariaDBBMariaDBC,注意要把 wsrep_node_name 和 wsrep_node_address 改成相应节点的 hostname 和 ip。

引导集群创建(启动之前一定要保证所有节点的MariaDB处于stop状态)

/usr/sbin/mysqld --wsrep-new-cluster --user=root &

查看集群状态:

MariaDB Galera Cluster集群配置

MariaDB Galera Cluster集群配置

启动其他节点的MariaDB(服务正常节点会自动添加进集群):

 systemctl start mariadb

MariaDB Galera Cluster集群配置

升级、重启:

MariaDB Galera Cluster集群配置

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: