千家信息网

Keepalived+MariaDB10配置+双主+高可用数据库

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,Keepalived+MariaDB10配置双主高可用数据库OSRS子网掩码路由网关Centos6.6MariaDB10KeepalivedEth0:192.168.26.210255.255.252
千家信息网最后更新 2024年12月12日Keepalived+MariaDB10配置+双主+高可用数据库

Keepalived+MariaDB10配置双主高可用数据库

OS

RS

子网掩码

路由网关

Centos6.6

MariaDB10

Keepalived

Eth0:192.168.26.210

255.255.252.0

192.168.25.3

VIP:192.168.27.210

255.255.255.252


Centos6.6

MariaDB10

Keepalived

Eth0:192.168.26.211

255.255.252.0

192.168.25.3

VIP:192.168.27.210

255.255.255.255


Win7(client)

IP:192.168.26.70

255.255.252.0

192.168.25.3

在两台服务器上分别安装MYSQL:

yum -y install MariaDB (这里略)
安装完后配置双主模型:

编辑配置文件26.210:vim /etc/my.cnf.d/server.cnf

在配置文件中加入以前几个参数设置:

log-bin=mysql-bin

server-id = 210

relay-log =relay-bin

编辑配置文件26.211:vim /etc/my.cnf.d/server.cnf

log-bin =mysql-bin

server-id = 211

relay-log = relay-bin

分别启动两台服务器的MYSQL服务:service mysql start

服务器设置双主:

26.210:

mysql

grant replication slave ,replication client on *.* to 'jerry'@'192.168.%.%' identified by 'jerrypass';

change master to master_host='192.168.26.211',master_user='jerrymy',master_password='jerrypass',master_log_file='mysql-bin.000006',master_log_pos=558;

start slave;

show slave status\G; #查看从状态IO和SQL 运行状态均为YES表示配置成功

26.211:

mysql

grant replication slave ,replication client on *.* to 'jerrymy'@'192.168.%.%' identified by 'jerrypass';

change master to master_host='192.168.26.210',master_user='jerry',master_password='jerrypass',master_log_file='mysql-bin.000007',master_log_pos=540;

start slave;
show slave status\G;
#查看从状态IO和SQL 运行状态均为YES表示配置成功


显示状态为成功,我们再创建数据库来测试,看看双主是否运行正常。

双主设置成功。

26.210:安装Keepalived

安装报错未安装gcc

yum -y install gcc

yum -y install openssl-devel

安装组件后编译成功:


编辑配置文件:vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived global_defs {

router_id mysql-ha

}

vrrp_instance VI_1 {

state MASTER

interface eth0

virtual_router_id 20

priority 100

advert_int 1

nopreempt

authentication {

auth_type PASS

auth_pass 123456

}

virtual_ipaddress {

192.168.27.210

}

}

virtual_server 192.168.27.210 3306 {

delay_loop 2

lb_algo rr

lb_kind DR

persistence_timeout 60

protocol TCP

real_server 192.168.26.210 3306 {

weight 1

notify_down /etc/keepalived/mysql.sh

TCP_CHECK {

connect_port 3306

connect_timeout 3

nb_get_retry 2

delay_before_retry 1

}

}

}

保存退出启动Keepalived服务。

service keepalived start

26.211:安装Keepalived。

编辑配置文件26.211: vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived global_defs {

router_id mysql-ha

}

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 20

priority 99

advert_int 1

nopreempt

authentication {

auth_type PASS

auth_pass 123456

}

virtual_ipaddress {

192.168.27.210

}

}

virtual_server 192.168.27.210 3306 {

delay_loop 2

lb_algo rr

lb_kind DR

persistence_timeout 60

protocol TCP

real_server 192.168.26.211 3306 {

weight 1

notify_down /etc/keepalived/mysql.sh

TCP_CHECK {

connect_port 3306

connect_timeout 3

nb_get_retry 2

delay_before_retry 1

}

}

}

保存退出启动26.211上的Keepalived

service keepalived start

测试VIP是否可用:ping 192.168.27.210 -t

回到26.210或211都可以 上,创建一个数据库访问测试用户账号密码。

grant all on *.* to 'jerrytest'@'192.168.%.%' identified by 'jerrypass';

下面通过 VIP访问数据库观察访问:

VIP在26.210这台服务器上,因此我们访问的26.210上的数据库。

下面停掉26.210上的MYSQL观察:

首先观察VIP网络出现波动后恢复。

数据库访问成功:

VIP已经转移动26.211服务器上了。

我们再恢复26.210上的MYSQL数据库服务观察。

0