Mysql + keepalive高可用搭建

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:
  Mysql + keepalive高可用搭建

系统环境:centos6.8
Ip:192.168.137.36 主库
192.168.137.38 从库

VIP(虚拟ip/浮动ip):192.168.137.100

软件版本:mysql 5.7.20
Keepalived 1.2.13

主从搭建略
Mysql1
vim /etc/my.cnf
binlog-do-db=test
log-bin=mysql-bin
server-id=1
gtid-mode=ON
enforce-gtid-consistency

Mysql2
Vim /etc/my.cnf
gtid-mode=ON
enforce-gtid-consistency
log-bin=mysql-bin
log-slave-updates=ON
server-id=3
binlog-do-db=test

安装keepalived
yum install keepalived

在192.168.137.36主库修改keepalived的配置文件
注意:加颜色部分为修改部分

[root@zabbix ~]# cat /etc/keepalived/keepalived.conf 
! Configuration File for keepalived
global_defs{ 
notification_email { 
root@localhost 

smtp_server 127.0.0.1 
smtp_connect_timeout 30 
router_id LVS_DEVEL 

#VIP1 
vrrp_instance VI_1 { 
state BACKUP 
interface eth0 
lvs_sync_daemon_inteface eth0 
virtual_router_id 151 
priority 100 
advert_int 5 
nopreempt 
authentication { 
auth_type PASS 
auth_pass 2222 

virtual_ipaddress { 
192.168.137.100 


virtual_server 192.168.137.100 3306 { 
delay_loop 6 
lb_algo wrr 
lb_kind DR 
persistence_timeout 60 
protocol TCP 
real_server 192.168.137.36 3306 { 
weight 100 
notify_down /data/sh/mysql.sh 
TCP_CHECK { 
connect_timeout 10 
nb_get_retry 3 
delay_before_retry 3 
connect_port 3306 


}

保存退出
在192.168.137.38从库修改keepalived的配置文件
[root@localhost sh]# cat /etc/keepalived/keepalived.conf 
! Configuration File for keepalived
global_defs{ 
notification_email { 
root@localhost 

smtp_server 127.0.0.1 
smtp_connect_timeout 30 
router_id LVS_DEVEL 

#VIP1 
vrrp_instance VI_1 { 
state BACKUP 
interface eth0 
lvs_sync_daemon_inteface eth0 
virtual_router_id 151 
priority 98 
advert_int 5 
nopreempt 
authentication { 
auth_type PASS 
auth_pass 2222 

virtual_ipaddress { 
192.168.137.100 


virtual_server 192.168.137.100 3306 { 
delay_loop 6 
lb_algo wrr 
lb_kind DR 
persistence_timeout 60 
protocol TCP 
real_server 192.168.137.38 3306 { 
weight 98 
notify_down /data/sh/mysql.sh 
TCP_CHECK { 
connect_timeout 10 
nb_get_retry 3 
delay_before_retry 3 
connect_port 3306 


}
保存退出
上面的配置简单说明:
state BACKUP  表示为备模式,nopreempt 为不抢占,双方都配为备模式,并且不抢占,可以避免“脑裂”问题,priority 100 为权重,数字越高,权重越高,当双方都配为BACKUP模式,并且配置nopreempt时,keepalived靠这个数字来判断谁是主,谁是备
主从都要创建/data/sh/mysql.sh脚本
mkdir /data/sh
vim /data/sh/mysql.sh 加入以下内容:
#!/bin/bash
/etc/init.d/keepalived  stop
 
chmod  755  /data/sh/mysql.sh
modprobe  ip_vs  #加载ip_vs模块 虚拟IP要用
lsmod |  grep  ip_vs  查看ip_vs模块有没有加载,如果看到下面的内容,就表示加载成功:
Mysql + keepalive高可用搭建

/etc/init.d/mysqld  start  #启动mysql
/etc/init.d/keepalive  start   #启动keepalived
在36上的操作和38上一样,只是keepalived.conf配置文件里priority 100 改为 priority 98
 
real_server 192.168.137.36 改为 real_server 192.168.137.38其他不变。
 
查看VIP情况命令: ip a
Mysql + keepalive高可用搭建
 
至此mysql的主从高可用就做好了,可以在36上测试挺掉mysql服务,看看vip会不会漂移到38上,一般来说都是没问题的,如果有问题,请检查你的配置,步骤是不是有错误,还有selinux,防火墙是否关闭等









本文转自去轻狂书生51CTO博客,原文链接: http://blog.51cto.com/8999a/2047477,如需转载请自行联系原作者



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3天前
|
存储 关系型数据库 MySQL
Mysql高可用|索引|事务 | 调优
Mysql高可用|索引|事务 | 调优
|
3天前
|
SQL 容灾 关系型数据库
rds容灾与高可用
rds容灾与高可用
37 4
|
3天前
|
关系型数据库 MySQL
电子好书发您分享《MySQL MGR 8.0高可用实战》
电子好书发您分享《MySQL MGR 8.0高可用实战》 电子好书发您分享《MySQL MGR 8.0高可用实战》
95 1
|
3天前
|
运维 负载均衡 关系型数据库
MySQL高可用解决方案演进:从主从复制到InnoDB Cluster架构
MySQL高可用解决方案演进:从主从复制到InnoDB Cluster架构
|
3天前
|
Kubernetes 关系型数据库 MySQL
MySQL在Kubernetes上的高可用实现
【5月更文挑战第1天】
|
3天前
|
缓存 关系型数据库 MySQL
【专栏】提升MySQL性能和高可用性的策略,包括索引优化、查询优化和事务管理
【4月更文挑战第27天】本文探讨了提升MySQL性能和高可用性的策略,包括索引优化、查询优化和事务管理。通过合理使用B-Tree和哈希索引,避免过度索引,以及优化查询语句和利用查询缓存,可以改善性能。事务管理中,应减小事务大小并及时提交,以保持系统效率。主从或双主复制可增强高可用性。综合运用这些方法,并根据实际需求调整,是优化MySQL的关键。
|
3天前
|
监控 关系型数据库 MySQL
MySQL高可用集群之MySQL-MMM
MySQL高可用集群之MySQL-MMM
|
3天前
|
存储 SQL 分布式计算
搭建Mysql Cluster集群实现高可用
搭建Mysql Cluster集群实现高可用
19 0
|
3天前
|
关系型数据库 MySQL Linux
centos7下 Mysql+Keepalived 双主热备高可用图文配置详解
centos7下 Mysql+Keepalived 双主热备高可用图文配置详解
30 0
|
3天前
|
监控 关系型数据库 MySQL
MySQL高可用MHA
MySQL高可用管理工具(MHA,Master High Availability)是一个用于自动管理MySQL主从复制的工具,它可以提供高可用性和自动故障转移。MHA由原版的MHA工具和MHA Manager组成,它们协同工作以实现自动主从切换和监控。
151 0

推荐镜像

更多