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故障切换过程中 ...
随机推荐
- Android stadio 模板 liveTemplate不管用
今天自己弄了模板,发现不生效.后来才知道要在下面设置在哪里应用:如下图: Android satdio 制作自己的todo 有时候,别人都使用todo,使得自己个人的todo不好用了.那么怎么弄?自己 ...
- loj2174 「FJOI2016」神秘数
先考虑一下一个集合怎么用 \(O(n)\) 时间求出来,然后用主席树推广到一个序列就可以了.大致思想就是考虑一个数的权值和它前面的数的和的关系. #include <algorithm> ...
- Android保持屏幕常亮唤醒状态
第一步: 首先添加权限: <uses-permission android:name="android.permission.WAKE_LOCK"></uses ...
- 《Cracking the Coding Interview》——第18章:难题——题目2
2014-04-29 00:59 题目:设计一个洗牌算法,效率尽量快点,必须等概率. 解法:每次随机抽一张牌出来,最后都抽完了,也就洗好了.时间复杂度O(n^2),请看代码. 代码: // 18.2 ...
- MySQL高可用之MHA安装
Preface MasterHA is a tool which can be used in MySQL HA architecture.I'm gonna implement it ...
- day06_06 字典操作01
1.0 字典操作 dic1 = {'name':'alex'} dic1['age'] = 18 print(dic1) #>>>{'age': 18, 'name': 'alex' ...
- win10系统安装之GHOST还原(转+编辑)
注意*:在以下操作中,你可能需要分区你的原来系统盘,如果是重装的话.现在我们使用SSD固态做系统盘盘,这个分区的话,点选mbr重新引导,以及对齐复选框. 如果前面过程都没问题,在安装过程中出现 ...
- (原)Unreal 渲染模块 渲染流程
@author:白袍小道 浏览分享随缘,评论不喷亦可. 扯淡部分: 在temp中,乱七八糟的说了下大致的UE过程.下面我们还是稍微别那么任性,一步步来吧. UE渲染模块牵扯到场景遍历. ...
- VMware下Linux配置局域网和外网访问
我想尝试的是利用本机的ip+port来访问虚拟机上的web服务器,因为这样的话,我就能够将我的web服务器部署成为一个能让外网访问的服务器了,首先说下我的环境: 主机:系统win7,ip地址172.1 ...
- 【现代程序设计】homework-01
HOMEWORK-01 1) 建立 GitHub 账户, 把课上做的 “最大子数组之和” 程序签入 已完成. 2) 在 cnblogs.com 建立自己的博客. 写博客介绍自己的 GitHub 账户. ...