【Galera Cluster 介绍集群】【开始部署Galera】【超级奈斯的一个集群】

Galera Cluster 介绍

Galera是一个MySQL(也支持MariaDB,Percona)的同步多主集群软件。

主要功能
同步复制
Active-active的多主拓扑结构
真正的multi-master,即所有节点可以同时读写数据库
自动成员资格控制,失败节点从群集中删除
新节点加入数据自动复制
真正的并行复制,行级

开始部署Galera

项目,4台虚拟机 我这里操作 3台
一定要固定ip地址 我这里测试就不进行设置静态ip地址拉
准备环境:准备三台干净的虚拟机
方法;[root@192 ~]# systemctl stop firewalld 关闭防火墙
方法;[root@192 ~]# setenforce 0 关闭内核防火墙
方法;[root@192 ~]# hostnamectl set-hostname galera1 改个名字
在这里插入图片描述
步骤2; 主机解析:
[root@mysql-1 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.150.147 galera1
192.168.150.148 galera2
192.168.150.149 galera3
在这里插入图片描述

准备时间服务器 找一个当做时间点

galera1上操作
方法;[root@mysql-1 ~]# yum -y install ntp //时间服务
方法;[root@mysql-1 ~]# vim /etc/ntp.conf //将下面两行添加进去
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
方法;systemctl restart ntpd 重启
在这里插入图片描述
步骤4;其余2台客户端同步时间
方法;[root@galera2 ~]# yum -y install ntp 其他2台也下载
方法;[root@galera2 ~]# ntpdate galera1 其他俩台进行同步
加粗样式
下载和安装Galera(每台都需要安装)
注意:Galera有独立的补丁包,也有在mysql基础上打好补丁的完整包
我们要下载带wsrep扩展补丁的版本,比如:
MySQL 5.7.20 extended with wsrep patch version 25.13

步骤5;配置yum源: 都要下载等下要用
方法;yum -y install epel-release 下载
方法;vim /etc/yum.repos.d/galera.repo 创建编写一下一下内容 每个都要
[galera]
name=galera
baseurl=http://releases.galeracluster.com/mysql-wsrep-5.7/centos/7/x86_64/
enabled=1
gpgcheck=0
这个上面是 galera是下载地址
在这里插入图片描述
此处可以省略 不做
[root@mysql-1 yum.repos.d]# yum list | grep ‘galera’ 查看有没有这个包
galera.x86_64 25.3.12-2.el7 epel
mysql-wsrep-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-client-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-common-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-devel-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-libs-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-libs-compat-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-server-5.7.x86_64 5.7.20-25.13.el7 galera
mysql-wsrep-test-5.7.x86_64 5.7.20-25.13.el7 galera
注意:需要epel源提供galera包

步骤6;安装:# yum install mysql-wsrep-5.7.x86_64 galera rsync -y 全部安装
全部启动 另外几台 全部一样操作
[root@mysql-1 ~]# systemctl start mysqld
[root@mysql-1 ~]# grep password /var/log/mysqld.log 过滤密码
mysqladmin -u root -p’:k/TBvl8/*/R’ password ‘QianFeng@123’ 修改密码
在这里插入图片描述
步骤7:分别创建同步数据的用户
[root@mysql-1 ~]# mysql -u root -p’Qianfeng123!’
mysql> grant all on . to ‘syncuser’@’%’ identified by ‘QianFeng@123’; 创建同步用户
mysql> flush privileges;
在这里插入图片描述
步骤8; 配置galera 文件 一下是4台的 我测试用的三台
vim /etc/my.cnf
配置Galera Replication:
galera1配置:主配置文件my.cnf追加如下内容
server-id=1
binlog_format=row
innodb_file_per_table=1
innodb_autoinc_lock_mode=2

wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name=‘galera’
wsrep_cluster_address=‘gcomm://’
wsrep_node_name=‘galera1’
wsrep_node_address=‘192.168.245.133’
wsrep_sst_auth=syncuser:‘Qianfeng123!@’
wsrep_sst_method=rsync

galera2配置:主配置文件my.cnf追加如下内容
server-id=2
binlog_format=row
innodb_file_per_table=1
innodb_autoinc_lock_mode=2

wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name=‘galera’
wsrep_cluster_address=‘gcomm://galera1,galera3,galera4’
wsrep_node_name=‘galera2’
wsrep_node_address=‘192.168.245.136’
wsrep_sst_auth=syncuser:‘Qianfeng123!@’
wsrep_sst_method=rsync

galera3配置:主配置文件my.cnf追加如下内容
server-id=3
binlog_format=row
innodb_file_per_table=1
innodb_autoinc_lock_mode=2

wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name=‘galera’
wsrep_cluster_address=‘gcomm://galera1,galera2,galera4’
wsrep_node_name=‘galera3’
wsrep_node_address=‘192.168.245.10’
wsrep_sst_auth=syncuser:‘Qianfeng123!@’
wsrep_sst_method=rsync

galera4配置:主配置文件my.cnf追加如下内容
server-id=4
binlog_format=row
innodb_file_per_table=1
innodb_autoinc_lock_mode=2

wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name=‘galera’
wsrep_cluster_address=‘gcomm://galera1,galera2,galera3’
wsrep_node_name=‘galera4’
wsrep_node_address=‘192.168.245.135’
wsrep_sst_auth=syncuser:‘Qianfeng123!@’
wsrep_sst_method=rsync

配置如下 请参考 galera1 配置
在这里插入图片描述
配置如下 请参考 galera2 配置
在这里插入图片描述
配置如下 请参考 galera3 配置
在这里插入图片描述
步骤9;重启服务:每台机器 查看端口:galera端口4567 mysql端口3306
方法;[root@mysql-1 ~]# systemctl restart mysqld 重启
方法;netstat -auntpl | grep -E ‘3306|4567’ 查看端口号 3306或4567
在这里插入图片描述
测试:

在任何一台机器上写入数据,其他机器全部会同步
galera1 测试
mysql> create database qf;

在这里插入图片描述
galera2 查看
在这里插入图片描述
galera3 查看
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值