4台服务器

192.168.136.128 主

192.168.136.129 从

192.168.136.130 从

192.168.136.131 管理服务器

一主2从,一管理,安装mysql并配置一主两从,设置mysqlbinlog和mysql系统 内核软连接

# ln -s /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog
# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

1. 配置管理节点131,使4台都可以用ssh免密码彼此登录

管理节点131

ssh-keygen -t rsa 

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.136.128 把生成的密钥传到 128,129,130 三台服务器上

ssh 192.168.136.128 测试登录是否成功

2.安装MHA

0.1 依赖安装:

节点依赖安装

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

yum install perl-DBD-MySQL

在manager节点上

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

yum install perl-DBD-MySQL

yum install perl-Config-Tiny

yum install perl-Log-Dispatch

yum install perl-Parallel-ForkManager

yum install -y rrdtool perl-rrdtool rrdtool-devel perl-Params-Validate

0.2 rpm包安装: rpm包下载地址(https://pan.baidu.com/s/1jIILpXW)

manager节点:

# rpm -ivh mha4mysql-manager-0.56-0.el6.noarch.rpm
# rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm

node节点:

# rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm

3 配置

mkdir -p /etc/masterha  存放配置文件

mkdir -p /var/log/masterha 存放日志

[server default]
manager_workdir=/var/log/masterha/app1 //设置manager的工作目录
manager_log=/var/log/masterha/app1/manager.log //设置manager的日志
user=root 设置监控用户root
password=wangxiaohu //设置mysql中root用户的密码
repl_user=root //设置复制环境中的复制用户名
repl_password=wangxiaohu //设置复制用户的密码
ssh_user=root //设置ssh的登录用户名
ping_interval=1
shutdown_script=""
master_ip_online_change_script=""
report_script=""
master_binlog_dir=/www/server/data //节点binlog的位置 [server1]
hostname=192.168.136.128
port=3306 [server2]
hostname=192.168.136.129
port=3306 [server3]
hostname=192.168.136.130
port=3306

测试一下ssh

masterha_check_ssh --conf=/etc/masterha/app1.cnf

测试一下复制:

masterha_check_repl --conf=/etc/masterha/app1.cnf

开启masterha_manager

nohup masterha_manager --conf=/etc/masterha/app1.cnf > /tmp/mha_manager.log  2>&1 &

看一下状态

masterha_check_status --conf=/etc/masterha/app1.cnf

masterha_check_ssh              检查MHA的SSH配置状况
masterha_check_repl 检查MySQL复制状况
masterha_manger 启动MHA
masterha_check_status 检测当前MHA运行状态
masterha_master_monitor 检测master是否宕机
masterha_master_switch 控制故障转移(自动或者手动)
masterha_conf_host 添加或删除配置的server信息

  

看一下日志

tail -f /var/log/masterha/app1/manager.log

测试

停掉192.168.136.128 主mysql    service mysql stop

发现 129 成为主,130的主改成129,说明配置成功

mha 处理完故障会自动停止,让用户处理完故障,在打开,解除128故障后,把128设置成从库,修改mha的配置文件中的server1,启动mha,又一切恢复正常

更多资料

http://www.cnblogs.com/wingsless/p/4033093.html

MHA高可用集群安装配置的更多相关文章

  1. ActiveMQ 高可用集群安装、配置(ZooKeeper + LevelDB)

    ActiveMQ 高可用集群安装.配置(ZooKeeper + LevelDB) 1.ActiveMQ 集群部署规划: 环境: JDK7 版本:ActiveMQ 5.11.1 ZooKeeper 集群 ...

  2. MHA 高可用集群搭建(二)

    MHA 高可用集群搭建安装scp远程控制http://www.cnblogs.com/kevingrace/p/5662839.html yum install openssh-clients mys ...

  3. MySQL MHA 高可用集群部署及故障切换

    MySQL MHA 高可用集群部署及故障切换 1.概念 2.搭建MySQL + MHA 1.概念: a)MHA概念 : MHA(MasterHigh Availability)是一套优秀的MySQL高 ...

  4. activemq+Zookeper高可用集群方案配置

    在高并发.对稳定性要求极高的系统中,高可用的是必不可少的,当然ActiveMQ也有自己的集群方案.从ActiveMQ 5.9开始,ActiveMQ的集群实现方式取消了传统的Master-Slave方式 ...

  5. ClickHouse高可用集群的配置

    上一篇文章写过centos 7下clickhouse rpm包安装和基本的目录结构,这里主要介绍clickhouse高可用集群的部署方案,因为对于默认的分布式表的配置,每个分片只有一份,这样如果挂掉一 ...

  6. Redis Cluster 4.0高可用集群安装、在线迁移操作记录

    之前介绍了redis cluster的结构及高可用集群部署过程,今天这里简单说下redis集群的迁移.由于之前的redis cluster集群环境部署的服务器性能有限,需要迁移到高配置的服务器上.考虑 ...

  7. hadoop+yarn+hbase+storm+kafka+spark+zookeeper)高可用集群详细配置

    配置 hadoop+yarn+hbase+storm+kafka+spark+zookeeper 高可用集群,同时安装相关组建:JDK,MySQL,Hive,Flume 文章目录 环境介绍 节点介绍 ...

  8. Hadoop完全高可用集群安装

    架构图(HA模型没有SNN节点) 用vm规划了8台机器,用到了7台,SNN节点没用   NN DN SN ZKFC ZK JNN RM NM node1 *     *         node2 * ...

  9. Neo4j 高可用集群安装

    安装neo4j高可用集群,抓图安装过程 http://www.ibm.com/developerworks/cn/java/j-lo-neo4j/ Step1.下载neo4j商业版并解压,复制为neo ...

随机推荐

  1. Hadoop 配置及hadoop HA 的配置

    注:本文中提到的ochadoop 不要感到奇怪,是亚信公司内部自己合成的一个包.把全部的组件都放在一个包内了.免去了组件的下载过程和解决兼容问题.事实上也能够自己下载的.不要受到影响. 另,转载请注明 ...

  2. 使用javac,手动编译一个java文件的方法

    参考<Tomcat与Java Web开发技术详解>中的命令: javac -classpath c:\tomcat\lib\servlet-api.jar                  ...

  3. 详解path和classpath的区别

    详解path和classpath的区别 path的作用 path是系统用来指定可执行文件的完整路径,即使不在path中设置JDK的路径也可执行JAVA文件,但必须把完整的路径写出来,如C:\Progr ...

  4. 实战c++中的vector系列--creating vector of local structure、vector of structs initialization

    之前一直没有使用过vector<struct>,如今就写一个简短的代码: #include <vector> #include <iostream> int mai ...

  5. billboard因为合批导致出问题的一个想法

    由于unity中距离较近的2个billboard物体会动态合批,如果缩放不同,显示就有问题.还得在shader中"DisableBatching"="true" ...

  6. 源码安装Apache,报错:Cannot use an external APR with the bundled APR-util

    一般在第一次源码安装是没有问题的,在版本变化情况下在次源码安装可能会遇到此问题: apache2.0.x与apache2.2.x在apr有很大区别,前者为依赖公用apr,后者依赖于自身的apr.一般前 ...

  7. iOS将Unity导出的Xcode工程导入到另一个Xcode项目, 及常见报错的解决方法

    demo下载地址 http://pan.baidu.com/s/1pLcpKpl 1.Unity导出工程时设置bundle id要与项目一致 2.修改bit code为NO 3.删除Main.stor ...

  8. Lumen开发:添加手机验证,中文验证与Validator验证的“半个”生命周期

    版权声明:本文为博主原创文章,未经博主允许不得转载. 添加手机验证方法可直接看这里:https://www.cnblogs.com/cxscode/p/9609828.html 今天来讲一下,Lume ...

  9. tomcat下发布项目,遇到的问题总结

    以前一直是在eclipse下启动tomcat,然后访问web项目.今天脑门一热,就想用tomcat的bin目录下的startup.bat来启动tomcat,虽然tomcat的启动很顺利,但是访问网页的 ...

  10. SVN流程图协作图