搭建mysql集群+keepalived高可用
2017-10-19 16:23
585 查看
准备
当前使用服务器:192.168.131.130(管理节点)
192.168.131.131(数据节点1,sql节点1)
192.168.131.132(数据节点2,sql节点2)
vip(虚拟ip):192.168.131.150
分别在两台主机192.168.131.131与192.168.131.132服务器中添加vip,192.168.131.150(注:主机服务器ip,虚拟ip均应在同一网段) — ubuntu下添加虚拟ip
搭建mysql集群
ubuntu下mysql_cluster基础搭建搭建keepalived
// 若未安装先进行安装 sudo apt-get install keepalived // 新建并编辑keepalived.conf文件 vi /etc/keepalived/keepalived.conf
主服务器(192.168.131.132)keepalived.conf配置:
global_defs { notification_email { //可以添加邮件提醒 } notification_email_from root@localhost smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id LVS_DEVEL } vrrp_instance VI_1 { state MASTER //主服务器 interface ens33 virtual_router_id 51 mcast_src_ip 192.168.131.132 priority 150 advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 192.168.131.150 } } virtual_server 192.168.131.150 3306 { delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 60 protocol TCP real_server 192.168.131.131 3 4000 306 { weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } real_server 192.168.131.132 3306 { weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } }
备服务器(192.168.131.131)的keepalived.conf配置:
global_defs { notification_email { //可以添加邮件提醒 } notification_email_from root@localhost smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id LVS_DEVEL } vrrp_instance VI_1 { state BACKUP //从服务器 interface ens33 virtual_router_id 51 mcast_src_ip 192.168.131.131 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 192.168.131.150 } } virtual_server 192.168.131.150 3306 { delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 60 protocol TCP real_server 192.168.131.131 3306 { weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } real_server 192.168.131.132 3306 { weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } }
// 运行keepalived(运行keepalived先确保mysql集群是开启状态) sudo /etc/init.d/keepalived start(start开启,stop停止,reload重启) // 可以查看keepalived的运行日志 sudo tail /var/log/syslog
安装 ipvsadm
sudo apt-get install ipvsadm // IPVSADM验证 sudo ipvsadm -Ln
若以上步骤没有出错,应出现下方输出:
测试
1、在192.168.131.132通过vip登录mysql// 通过虚拟ip可以随机选择131或132主机进行数据库连接(负载均衡) mysql -h 192.168.131.150 -u root -p
可能出现如下情况
或者
解决方法 -> 解决mysql远程连接Host ‘*’ is not allowed to connect to this MySQL server
2、成功登录后(默认mysql集群已经成功)
// 退出mysql quit // 关闭192.168.131.132(主)的mysql服务 pkill ndbd pkill mysql // 在客户机尝试进入mysql(主从备份,客户机需要有mysql服务) mysql -h 192.168.131.150 -u root -p
在客户机中对数据库进行修改后,正常情况下可以看到在192.168.131.132查看数据已经同步。
则代表实现了keepalived的高可用。
相关文章推荐
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- Nginx+Keepalived+Tomcat高可用负载均衡,Zookeeper集群配置,Mysql(MariaDB)搭建,Redis安装,FTP配置
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用
- 搭建mysql集群+keepalived高可用