时间:2021-07-01 10:21:17 帮助过:44人阅读
本文接上文介绍atlas的安装配置,以及借助keepalive软件实现altas的ha,避免由于atlas故障,导致数据库服务中断的情况出现:一:环境介绍Atlas主:192.168.1.12/
# yum -y install openssl openssl-devel # wget https://github.com/Qihoo360/Atlas/releases/download/2.1/Atlas-2.1.el6.x86_64.rpm # rpm -ivh Atlas-2.1.el6.x86_64.rpm # cd /usr/local/mysql-proxy/conf/ # /usr/local/mysql-proxy/bin/encrypt 123456 /iZxz+0GRoA=# grep -v '^#' /usr/local/mysql-proxy/conf/test.cnf |grep -v '^$'
[mysql-proxy] admin-username = admin admin-password = admin proxy-backend-addresses = 192.168.1.231:3306 proxy-read-only-backend-addresses = 192.168.1.227:3306,192.168.1.228:3306 pwds = root:/iZxz+0GRoA= daemon = true keepalive = true event-threads = 8 log-level = message log-path = /usr/local/mysql-proxy/log proxy-address = 0.0.0.0:1234 admin-address = 0.0.0.0:2345# /usr/local/mysql-proxy/bin/mysql-proxyd test start
OK: MySQL-Proxy of test is started
# netstat -ntpl |grep mysql-proxy
tcp 0 0 0.0.0.0:2345 0.0.0.0:* LISTEN 29643/mysql-proxy
tcp 0 0 0.0.0.0:1234 0.0.0.0:* LISTEN 29643/mysql-proxy
# tail -f /usr/local/mysql-proxy/log/test.log
2014-10-29 11:12:11: (message) mysql-proxy 0.8.2 started - instance: test 2014-10-29 11:12:11: (message) proxy listening on port 0.0.0.0:1234 2014-10-29 11:12:11: (message) added read/write backend: 192.168.1.231:3306 2014-10-29 11:12:11: (message) added read-only backend: 192.168.1.227:3306 2014-10-29 11:12:11: (message) chassis-unix-daemon.c:138: [angel] we try to keep PID=29643 alive2014-10-29 11:12:11: (message) added read-only backend: 192.168.1.228:3306 2014-10-29 11:12:11: (message) chassis-event-thread.c:235: starting 8 threads# cd /usr/local/src/ # wget # tar -zxvpf keepalived-1.2.13.tar.gz # cd keepalived-1.2.13 # ./configure --prefix=/usr/local/keepalived && make && make install# cat /usr/local/keepalived/etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_script Monitor_Atlas { script "/usr/local/scripts/monitor_atlas.sh" interval 2 weight 2 } vrrp_instance VI_1{ state MASTER interface eth0 virtual_router_id 51 mcast_src_ip 192.168.1.12 priority 100 advert_int 1 authentication { auth_type PASS auth_pass password_123 } track_script { Monitor_Atlas } virtual_ipaddress { 192.168.1.230 } }# cat /usr/local/scripts/monitor_atlas.sh
#!/bin/bash if [ $(ps -ef |grep 'mysql-proxy' |grep -v 'grep' |wc -l) -eq "0" ];then /usr/local/mysql-proxy/bin/mysql-proxyd test start sleep 5 if [ $(ps -ef |grep 'mysql-proxy' |grep -v 'grep' |wc -l) -eq "0" ];then killall -9 keepalived service network restart fi fi1:keepalive主配置文件
# cat /usr/local/keepalived/etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_script Monitor_Atlas { script "/usr/local/scripts/monitor_atlas.sh" interval 2 weight 2 } vrrp_instance VI_1{ state BACKUP interface eth0 virtual_router_id 51 mcast_src_ip 192.168.1.81 priority 90 advert_int 1 authentication { auth_type PASS auth_pass password_123 } track_script { Monitor_Atlas } virtual_ipaddress { 192.168.1.230 } }2:监控atlas脚本