一.mysql主从复制的配置
master:172.X.X.115
slave: 172.X.X.114
172.X.X.111
略......(这里我采用yum直接安装的mysql,然后进行一些简单的配置)
二.安装atlas:在slave上 172.X.X.115(master)
安装atlas:
rpm -ivh Atlas-2.2.1.el5.x86_64.rpm
问题:
解决方法:
yum install openssl*
问题:
解决方法:
修改配置文件
vim /usr/local/mysql-proxy/conf/test.cnf
验证atlas读写分离,略
三:安装atlas高可用(Keepalived)
master:172.X.X.115(atlas主)
slave: 172.X.X.114(atlas从)
安装前准备依赖包:
atlas主配置:
vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
}
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
mcast_src_ip 172.X.X.115
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
Monitor_Atlas
}
virtual_ipaddress {
172.X.X.113 #虚拟ip
}
}
提供atlas监控脚本:
# vim /usr/local/mysql-proxy/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
service keepalived stop
service network restart
fi
fi
chmod +x
/usr/local/mysql-proxy/monitor_atlas.sh
atlas从配置:
复制以上两个文件到从节点,并修改keepalived配置文件
state BACKUP
mcast_src_ip 172.X.X.114
priority 95
启动keepalived服务以及测试:
主: 172.X.X.115 从:172.X.X.114
/etc/init.d/keepalived start /etc/init.d/keepalived start
主:
从:
连接atlas测试:
测试atlas高可用:
停掉主的
keepalived
服务后VIP飘到了从上:
四.安装MHA
master:172.X.X.115(node)
slave: 172.X.X.114(manager)
172.X.X.111(node)
安装mha:
所有节点都要安装
yum install -y perl-DBD-MySQL
mha4mysql-node
-0.56.tar.gz
tar -zvxf mha4mysql-node-0.56.tar.gz
cd mha4mysql-node-0.56 perl Makefile.PL make make install
此时可能出现很多依赖包缺少,需要安装
管理节点:
yum install -y perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager
mha4mysql-manager-0.56.tar.gz
cd mha4mysql-manager-0.56 perl Makefile.PL make make install
此时可能出现很多依赖包缺少,需要安装
注意:manager和node节点的版本可以不一样
服务器间,无密码ssh登录:
master:172.X.X.115
cd .ssh/
每个机子都要做以上设置
检查下SSH公钥免密码登录:
检查MySQL复制:
遇到问题:
1:
解决方法:
修改三个数据库的配置文件/etc/my.cnf
binlog-do-db=ZBJ
replicate-ignore-db=mysql
以上两个在三个数据库保持相同,否则MHA 在启动时候会检测过滤规则,如果过滤规则不同,MHA 不启动监控和故障转移。
2
此时在各个数据库已经创建并且对repl进行授权
解决方法:
这个问题有点搞笑,犯了很低级的错误,文件读错了,已解决;
3.
解决方法:
数据库同步出现问题,修改设为主从同步
4
一.mysql主从复制的配置
master:172.18.11.115
slave: 172.18.11.114
172.18.11.111
略......
二.安装atlas:在slave上 172.18.11.115(master)
安装atlas:
rpm -ivh Atlas-2.2.1.el5.x86_64.rpm
问题:
解决方法:
yum install openssl*
问题:
解决方法:
修改配置文件
vim /usr/local/mysql-proxy/conf/test.cnf
验证atlas读写分离,略
三:安装atlas高可用(Keepalived)
master:172.18.11.115(atlas主)
slave: 172.18.11.114(atlas从)
安装前准备依赖包:
atlas主配置:
vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
}
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
mcast_src_ip 172.18.11.115
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
Monitor_Atlas
}
virtual_ipaddress {
172.18.11.113 #虚拟ip
}
}
提供atlas监控脚本:
# vim /usr/local/mysql-proxy/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
service keepalived stop
service network restart
fi
fi
chmod +x
/usr/local/mysql-proxy/monitor_atlas.sh
atlas从配置:
复制以上两个文件到从节点,并修改keepalived配置文件
state BACKUP
mcast_src_ip 172.18.11.114
priority 95
启动keepalived服务以及测试:
主: 172.18.11.115 从:172.18.11.114
/etc/init.d/keepalived start /etc/init.d/keepalived start
主:
从:
连接atlas测试:
测试atlas高可用:
停掉主的
keepalived
服务后VIP飘到了从上:
四.安装MHA
master:172.18.11.115(node)
slave: 172.18.11.114(manager)
172.18.11.111(node)
安装mha:
所有节点都要安装
yum install -y perl-DBD-MySQL
mha4mysql-node
-0.56.tar.gz
tar -zvxf mha4mysql-node-0.56.tar.gz
cd mha4mysql-node-0.56 perl Makefile.PL make make install
此时可能出现很多依赖包缺少,需要安装
管理节点:
yum install -y perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager
mha4mysql-manager-0.56.tar.gz
cd mha4mysql-manager-0.56 perl Makefile.PL make make install
此时可能出现很多依赖包缺少,需要安装
注意:manager和node节点的版本可以不一样
服务器间,无密码ssh登录:
master:172.18.11.115
cd .ssh/
每个机子都要做以上设置
检查下SSH公钥免密码登录:
检查MySQL复制:
遇到问题:
1:
解决方法:
修改三个数据库的配置文件/etc/my.cnf
binlog-do-db=ZBJ
replicate-ignore-db=mysql
以上两个在三个数据库保持相同,否则MHA 在启动时候会检测过滤规则,如果过滤规则不同,MHA 不启动监控和故障转移。
2
此时在各个数据库已经创建并且对repl进行授权
解决方法:
这个问题有点搞笑,犯了很低级的错误,文件读错了,已解决;
3.
解决方法:
数据库同步出现问题,修改设为主从同步
4