Home  >  Article  >  Database  >  Mysql中间件代理 Atlas

Mysql中间件代理 Atlas

WBOY
WBOYOriginal
2016-06-07 16:48:211106browse

本文接上文介绍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

wKiom1RQnn3DMFxSAAZhA29duaA866.jpg

# 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 fi

1: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脚本

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn