您的位置:首页 > 数据库 > SQL

高性能业务架构解决方案(Keepalive+MySQL)

2017-02-20 10:57 387 查看
高性能业务架构解决方案(Keepalive+MySQL)

高性能业务架构解决方案(Keepalive+MySQL)

一、 概况
二、 相关理论
三、 架构拓扑
四、 资源规划
五、 实施部署
5.1初始化配置
5.2 Mysql主从同步配置
5.3 配置keepalived实现热备
5.3.1 Keepalived的安装
5.3.2 Keepalived的配置
5.3.3 监测脚本
六、 测试
6.1 测试主从同步
6.2 高可用测试
七、注意事项
7.1 LVS安装注意事项
7.2 将相关开机自启服务
一、概况
关于MySQL-HA,目前存在多种解决方案,例如如heartbeat、drbd、mmm、共享存储,但是它们各有优缺点。heartbeat、drbd配置较为复杂,需要自己写脚本才能实现MySQL自动切换,脚步编写对应无编程功底的人来说存在很大的难度;对于mmm,生产环境中很少有人用,且mmm 管理端需要单独运行一台服务器上,要是想实现高可用,就得对mmm管理端做HA,这样无疑又增加了硬件开支;对于共享存储,MySQL数据还是放在本地较为安全,存储设备毕竟存在单点隐患。使用MySQL双master+keepalived是一种非常好的解决方案,在MySQL-HA环境中,MySQL互为主从关系,这样就保证了两台MySQL数据的一致性,然后用keepalived实现虚拟IP,通过keepalived自带的服务监控功能来实现MySQL障时自动切换。二、相关理论
keepalived:顾名思义是保持存活,常用来搭建设备的高可用,防止业务核心设备出现单点故障。keepalived基于VRRP协议来实现高可用,主要用作realserver的健康检查以及负载均衡主机和backup主机之间的故障漂移。如果将TCP/IP划分为5层,则Keepalived就是一个类似于3~5层交换机制的软件,具有3~5层交换功能,其主要作用是检测web服务器的状态,如果某台web服务器故障,Keepalived将检测到并将其从系统中剔除,当该web服务器工作正常后Keepalived自动将其加入到服务器群中,这些工作全部自动完成,而不需要人工干预,只需要人工修复故障的web服务器即可。三层机理是发送ICMP数据包即PING给某台服务器,如果不通,则认为其故障,并从服务器群中剔除;四层机理是检测TCP端口号状态来判断某台服务器是否故障,如果检测端口存在异常,则从服务器群中剔除;五层机理是根据用户的设定检查某个服务器应用程序是否正常运行,如果不正常,则从服务器群中剔除。三、架构拓扑

四、资源规划
主机名称内网IP操作系统
SQL-Master10.10.10.11Centos 6.5 64位
SQL-Backup10.10.10.12Centos 6.5 64位
VIP10.10.10.50\
五、实施部署5.1初始化配置l getenforce 0关闭SeLinuxl 修改主机名l 防火墙开放22/3306端口l 测试网络连通性l 更新YUM源
5.2Mysql主从同步配置
主从均需要修改my.cnfMysql-Master的配置文件如下vim /etc/my.cnf
Mysql-Backup需要需要一下,其余与主保持一致server-id=2auto_increment_offset=2查看此时查看mysql-Master与mysql-Backup的File与Position值




Mysql-Master配置如下:
Mysql-Backup配置如下:
查看结果


5.3 配置keepalived实现热备5.3.1 Keepalived的安装
在master与backup上面均需要配置安装开发组环境工具
安装相应软件包
如果/usr/src/kernels/下面没文件使用yum 安装 kernel-devel#下载keepalive
(注意这个步骤要看到以下字样才是正常的)Use IPVS Framework : YesIPVS sync daemon support : Yes

至此keepalive就已经安装完毕。5.3.2 Keepalived的配置vim /etc/keepalived
测试




测试VIP连通性


5.3.2 Keepalived的配置
vim /usr/mysql_check.sh
六、测试6.1 测试主从同步主服务器创建数据库

查看slave


测试主从同步已经成功。6.2 高可用测试
停止mysql-M的keepalived

查看VIP:10.10.10.50已经迁移至mysql-B

停止mysql-M上的mysql

VIP已经迁移到mysql-B

七、注意事项7.1 LVS安装注意事项
ln -s /usr/src/kernels/2.6.32-642.1.1.el6.x86_64 /usr/src/linux #此处要根据实际操作系统最高版本的kernel 为准./configure --with-kernel-dir=/usr/src/kernels/2.6.32-642.1.1.el6.x86_64(注意这个步骤要看到以下字样才是正常的)Use IPVS Framework : YesIPVS sync daemon support : Yes

7.2 将相关开机自启服务
开机自启服务
开机自启脚本

本文出自 “KaliArch” 博客,请务必保留此出处http://kaliarch.blog.51cto.com/8966921/1897474
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql 高可用 keepalived