返回列表 发帖

CentOS8_Keepalived双机热备+MariaDB

笺注:这是在 CentOS8_Keepalived双机热备+Apache 的基础上进行的。

其实也可以不安装Apache,只安装Keepalived和MariaDB,从而实现MariaDB的双机热备。

图片1.png
2020-5-7 13:58



主调度器master:192.168.168.154/24
备用调度器 slave::192.168.168.155/24

实验中,设置了一个(VIP)虚拟IP地址:(可以有多个的)
VIP:192.168.168.180




master:
MariaDB [(none)]> grant all on *.* to zhuohua@'%' identified by '888';
MariaDB [(none)]> create database db1;
图片2.png
2020-5-7 14:01




slave:
MariaDB [(none)]> grant all on *.* to zhuohua@'%' identified by '888';
MariaDB [(none)]> create database db2;
图片3.png
2020-5-7 14:01




两台服务器的防火墙配置(firewalld):
systemctl restart firewalld
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload



其他客户端访问虚拟IP的TCP 3306端口:
[root@oracle-linux6 ~]# mysql -uzhuohua -p888 -h192.168.168.180 -P3306
图片4.png
2020-5-7 14:01



图片5.png
2020-5-7 14:02

注释:可以看到客户端此时在slave上。


slave停止MariaDB服务:
[root@python ~]# systemctl stop mysqld


客户端不能访问虚拟IP的TCP 3306端口了:
[root@oracle-linux6 ~]# mysql -uzhuohua -p888 -h192.168.168.180 -P3306
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.168.180' (111)

注释:调度服务器关闭MariaDB服务,其实并不能触发keepalived的切换。



slave停止keepalived服务:
[root@python ~]# systemctl stop keepalived


keepalived自动切换了,此时master为活跃状态:
图片6.png
2020-5-7 14:02

返回列表