mysql-MHA 故障收集
在manager 主机上开启监控服务,启动不了
[root@manager ~]# managerStart
[]
[root@manager ~]# managerStatus
app1 is stopped(:NOT_RUNNING).
[]+ Exit nohup masterha_manager --conf=/etc/masterha/app1.cnf --remove_dead_master_conf --ignore_last_failover < /dev/null > /var/log/masterha/app1/manager.log >&1
#说明: 这里我对启动服务的命令做了 别名命令。
#查看日志 发现有这么一句话:
Sun Mar :: - [error][/usr/local/share/perl5/MHA/ServerManager.pm, ln781] Multi-master configuration is detected,
but two or more masters are either writable (read-only is not set) or dead! Check configurations for details. Master configurations are as below:
Master 10.0.0.50(10.0.0.50:)
Master 10.0.0.60(10.0.0.60:), replicating from 10.0.0.50(10.0.0.50:)
这句话的大概意思,有两个成为主,而且两个都可写,按照原则同一时间只能有一台主机可以数据写入,不然可能会造成数据不一致的灾难性故障!
在10.0.0.60 上开启mysql设置开启只读
mysql -e 'set global read_only=1'
设置完,还没完依旧开启不了这个监控程序,错误依旧存在
Sun Mar :: - [info] Multi-master configuration is detected. Current primary(writable) master is 10.0.0.50(10.0.0.50:)
Sun Mar :: - [info] Master configurations are as below:
Master 10.0.0.50(10.0.0.50:)
Master 10.0.0.60(10.0.0.60:), replicating from 10.0.0.50(10.0.0.50:), read-only Sun Mar :: - [error][/usr/local/share/perl5/MHA/ServerManager.pm, ln726] Slave 10.0.0.70(10.0.0.70:) replicates from 10.0.0.60:, but real master is 10.0.0.50(10.0.0.50:)!
Sun Mar :: - [error][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln424] Error happened on checking configurations. at /usr/local/share/perl5/MHA/MasterMonitor.pm line
Sun Mar :: - [error][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln523] Error happened on monitoring servers.
Sun Mar :: - [info] Got exit code (Not master dead).
分析了 下,为什么会出现两个master呢? 因为之前模拟master宕机故障之后,vip飘到60并且60主机被提升为主,70主机本来是50主机的小弟,现在成为了60主机的小弟,这就导致了出现两个master,
为了验证我这样的猜想,我强行设置,70跟随50 混,就change master to 指定 主机是50 什么位置信息和binlog文件也是50主机的信息
( ̄▽ ̄)"哈哈,猜中。。。开森了下。。
[root@manager ~]# managerStatus
app1 monitoring program is now on initialization phase(:INITIALIZING_MONITOR). Wait for a while and try checking again.
[root@manager ~]# managerStatus
app1 (pid:) is running(:PING_OK), master:10.0.0.50
Sun Mar :: - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Sun Mar :: - [info] Reading application default configuration from /etc/masterha/app1.cnf..
Sun Mar :: - [info] Reading server configuration from /etc/masterha/app1.cnf..
Sun Mar :: - [info] MHA::MasterMonitor version 0.56.
Sun Mar :: - [info] GTID failover mode =
Sun Mar :: - [info] Dead Servers:
Sun Mar :: - [info] Alive Servers:
Sun Mar :: - [info] 10.0.0.50(10.0.0.50:)
Sun Mar :: - [info] 10.0.0.60(10.0.0.60:)
Sun Mar :: - [info] 10.0.0.70(10.0.0.70:)
Sun Mar :: - [info] Alive Slaves:
Sun Mar :: - [info] 10.0.0.60(10.0.0.60:) Version=5.6.-log (oldest major version between slaves) log-bin:enabled
Sun Mar :: - [info] Replicating from 10.0.0.50(10.0.0.50:)
Sun Mar :: - [info] Primary candidate for the new Master (candidate_master is set)
Sun Mar :: - [info] 10.0.0.70(10.0.0.70:) Version=5.6. (oldest major version between slaves) log-bin:disabled
Sun Mar :: - [info] Replicating from 10.0.0.50(10.0.0.50:)
Sun Mar :: - [info] Current Alive Master: 10.0.0.50(10.0.0.50:)
Sun Mar :: - [info] Checking slave configurations..
Sun Mar :: - [warning] relay_log_purge= is not set on slave 10.0.0.60(10.0.0.60:).
Sun Mar :: - [warning] relay_log_purge= is not set on slave 10.0.0.70(10.0.0.70:).
Sun Mar :: - [warning] log-bin is not set on slave 10.0.0.70(10.0.0.70:). This host cannot be a master.
Sun Mar :: - [info] Checking replication filtering settings..
Sun Mar :: - [info] binlog_do_db= , binlog_ignore_db=
Sun Mar :: - [info] Replication filtering check ok.
Sun Mar :: - [info] GTID (with auto-pos) is not supported
Sun Mar :: - [info] Starting SSH connection tests..
Sun Mar :: - [info] All SSH connection tests passed successfully.
Sun Mar :: - [info] Checking MHA Node version..
Sun Mar :: - [info] Version check ok.
Sun Mar :: - [info] Checking SSH publickey authentication settings on the current master..
Sun Mar :: - [info] HealthCheck: SSH to 10.0.0.50 is reachable.
Sun Mar :: - [info] Master MHA Node version is 0.56.
Sun Mar :: - [info] Checking recovery script configurations on 10.0.0.50(10.0.0.50:)..
Sun Mar :: - [info] Executing command: save_binary_logs --command=test --start_pos= --binlog_dir=/mysql/data --output_file=/tmp/save_binary_logs_test --manager_version=0.56 --start_file=mysql-bin.
Sun Mar :: - [info] Connecting to root@10.0.0.50(10.0.0.50:)..
Creating /tmp if not exists.. ok.
Checking output directory is accessible or not..
ok.
Binlog found at /mysql/data, up to mysql-bin.
Sun Mar :: - [info] Binlog setting check done.
Sun Mar :: - [info] Checking SSH publickey authentication and checking recovery script configurations on all alive slave servers..
Sun Mar :: - [info] Executing command : apply_diff_relay_logs --command=test --slave_user='root' --slave_host=10.0.0.60 --slave_ip=10.0.0.60 --slave_port= --workdir=/tmp --target_version=5.6.-log --manager_version=0.56 --relay_log_info=/mysql/data/relay-log.info --relay_dir=/mysql/data/ --slave_pass=xxx
Sun Mar :: - [info] Connecting to root@10.0.0.60(10.0.0.60:)..
Checking slave recovery environment settings..
Opening /mysql/data/relay-log.info ... ok.
Relay log found at /mysql/data, up to cadicate-master-relay-bin.
Temporary relay log file is /mysql/data/cadicate-master-relay-bin.
Testing mysql connection and privileges..Warning: Using a password on the command line interface can be insecure.
done.
Testing mysqlbinlog output.. done.
Cleaning up test file(s).. done.
Sun Mar :: - [info] Executing command : apply_diff_relay_logs --command=test --slave_user='root' --slave_host=10.0.0.70 --slave_ip=10.0.0.70 --slave_port= --workdir=/tmp --target_version=5.6. --manager_version=0.56 --relay_log_info=/mysql/data/relay-log.info --relay_dir=/mysql/data/ --slave_pass=xxx
Sun Mar :: - [info] Connecting to root@10.0.0.70(10.0.0.70:)..
Checking slave recovery environment settings..
Opening /mysql/data/relay-log.info ... ok.
Relay log found at /mysql/data, up to slave-relay-bin.
Temporary relay log file is /mysql/data/slave-relay-bin.
Testing mysql connection and privileges..Warning: Using a password on the command line interface can be insecure.
done.
Testing mysqlbinlog output.. done.
Cleaning up test file(s).. done.
Sun Mar :: - [info] Slaves settings check done.
Sun Mar :: - [info]
10.0.0.50(10.0.0.50:) (current master)
+--10.0.0.60(10.0.0.60:)
+--10.0.0.70(10.0.0.70:) Sun Mar :: - [info] Checking master_ip_failover_script status:
Sun Mar :: - [info] /usr/local/bin/master_ip_failover --command=status --ssh_user=root --orig_master_host=10.0.0.50 --orig_master_ip=10.0.0.50 --orig_master_port= IN SCRIPT TEST====/etc/init.d/keepalived stop==/etc/init.d/keepalived start=== Checking the Status of the script.. OK
Sun Mar :: - [info] OK.
Sun Mar :: - [warning] shutdown_script is not defined.
Sun Mar :: - [info] Set master ping interval seconds.
Sun Mar :: - [info] Set secondary check script: /usr/local/bin/masterha_secondary_check -s server03 -s server02
Sun Mar :: - [info] Starting ping health check on 10.0.0.50(10.0.0.50:)..
Sun Mar :: - [info] Ping(SELECT) succeeded, waiting until MySQL doesn't respond..
分析日志,分析日志,分析日志,重要事情强调3遍!
mysql-MHA 故障收集的更多相关文章
- MySQL MHA 运行状态监控
一 项目描述 1.1 背景 MHA(Master HA)是一款开源的 MySQL 的高可用程序,它为 MySQL 主从复制架构提供了 automating master failover 功能.MHA ...
- MYSQL MHA
MYSQL MHA 简介: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于 Face ...
- CENTOS6.6 下mysql MHA架构搭建
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: 本篇是自己搭建的一篇mysql MHA文章 前面的安装步骤基 ...
- CentOS6.8下MySQL MHA架构搭建笔记
转载请注明出处,本文地址:http://www.cnblogs.com/ajiangg/p/6552855.html 以下是CentOS6.8下MySQL MHA架构搭建笔记 IP资源规划: 192. ...
- MySQL MHA 搭建&测试(环境:CentOS7 + MySQL5.7.23)
MySQL MHA架构介绍: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Face ...
- MySQL MHA+Keepalived
一.MHA的简单介绍MHA是由perl语言编写的,用外挂脚本的方式实现mysql主从复制的高可用性.MHA可以自动检测mysql是否宕机,如果宕机,在10-30s内完成new master的选举,应用 ...
- 基于MySQL+MHA+Haproxy部署高可用负载均衡集群
一.MHA 概述 MHA(Master High Availability)是可以在MySQL上使用的一套高可用方案.所编写的语言为Perl 从名字上我们可以看到.MHA的目的就是为了维护Master ...
- mysql+MHA高可用 (一主双从)
1.准备三台服务器 10.0.0.12 10.0.0.13 10.0.0.14 2.在三台服务器上执行操作 时间同步 [root@ c7m01 ~]# echo "*/5* * * * /u ...
- 【线上测试之后的应用】基于MySQL+MHA+Haproxy构建高可用负载均衡数据库集群(详解)
这里我们先介绍一下MHA是什么,其次就是它的应用与测试,同时为了大家呈现了数据备份案例,最后总结了使用情况以及注意事项和解决办法 一.MHA 概述 MHA(Master High Availabili ...
- MySQL MHA高可用集群部署及故障切换
一.MHA概念MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件.MHA 的出现就是解决MySQL 单点的问题.MySQL故障切换过程中 ...
随机推荐
- 关于update 表名 set 字段1 = 值1 and 字段2 = 值2的执行结果说明
技术交流群: 233513714 如果执行了以下的语句,则brand等于‘OPPO’条件所对应的数据不会做改变,但是sequence_brand列除brand = 'OPPO'之外的所有数据都会变为0 ...
- loj2174 「FJOI2016」神秘数
先考虑一下一个集合怎么用 \(O(n)\) 时间求出来,然后用主席树推广到一个序列就可以了.大致思想就是考虑一个数的权值和它前面的数的和的关系. #include <algorithm> ...
- 剑指Offer - 九度1524 - 复杂链表的复制
剑指Offer - 九度1524 - 复杂链表的复制2014-02-07 01:30 题目描述: 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点 ...
- day-python入门3
本节内容 鸡汤.电影 IDE介绍 知识回顾 数据类型 For循环 while循环 列表及常用操作 IDE介绍 IDE即集成开发环境 常见IDE Visualstudio : w ...
- Python 自学 Day1
作业二:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 #!/usr/bin/env python import getpass def log(): uname = input ...
- [译]16-spring基于注解的配置元数据
从spring2.5起spring框架开始支持java注解的配置元数据.所以除了使用xml配置文件来描述bean的装配之外,你还 可以使用基于java注解的配置元数据来完成同样的功能. spring框 ...
- (原)Unreal渲染模块 管线 - 程序和场景查询
@author: 白袍小道 查看随意,转载随缘 第一部分: 这里主要关心加速算法,和该阶段相关的UE模块的结构和组件的处理. What-HOW-Why-HOW-What(嘿嘿,老规矩) 1.渲 ...
- java jdbc与odbc数据库的连接mysql数据库
1.jdbc连接数据库要添加mysql-connector-java-5.1.38-bin.jar库 2.odbc连接数据库要添加odbc数据源 3.测试代码 DBHelper.java代码jdbc连 ...
- linux备忘录-档案与文件系统的压缩与打包
知识点 文件扩展名与压缩解压缩工具 .Z -> compress程序压缩的档案 .gz -> gzip程序压缩的档案 .bz2 -> bzip2程序压缩的档案 .tar -> ...
- 爬虫:Scrapy11 - Logging
Scrapy 提供了 log 功能.可以通过 scrapy.log 模块使用.当前底层实现使用了 Twisted logging,不过可能在之后会有所变化. log 服务必须通过显式调用 scrapy ...