MySQL 高可用 MHA check scripts

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 高可用 MHA check scripts相关的知识,希望对你有一定的参考价值。

介绍几个MHA check 命令,输出如下

[[email protected] bin]# pwd
/usr/local/bin
[[email protected] bin]# ls -l
total 104
-r-xr-xr-x. 1 root root 16367 Sep  7 09:43 apply_diff_relay_logs
-r-xr-xr-x. 1 root root  4807 Sep  7 09:43 filter_mysqlbinlog
-r-xr-xr-x. 1 root root  1995 Sep  7 09:22 masterha_check_repl
-r-xr-xr-x. 1 root root  1779 Sep  7 09:22 masterha_check_ssh
-r-xr-xr-x. 1 root root  1865 Sep  7 09:22 masterha_check_status
-r-xr-xr-x. 1 root root  3201 Sep  7 09:22 masterha_conf_host
-r-xr-xr-x. 1 root root  2517 Sep  7 09:22 masterha_manager
-r-xr-xr-x. 1 root root  2165 Sep  7 09:22 masterha_master_monitor
-r-xr-xr-x. 1 root root  2373 Sep  7 09:22 masterha_master_switch
-r-xr-xr-x. 1 root root  5171 Sep  7 09:22 masterha_secondary_check
-r-xr-xr-x. 1 root root  1739 Sep  7 09:22 masterha_stop
-rwxr-xr-x. 1 root root  4598 Sep  7 14:20 master_ip_failover
-rwxr-xr-x. 1 root root 10101 Sep  7 14:32 master_ip_online_change
-r-xr-xr-x. 1 root root  8261 Sep  7 09:43 purge_relay_logs
-r-xr-xr-x. 1 root root  7525 Sep  7 09:43 save_binary_logs
[[email protected] bin]# masterha_check_ssh --conf=/etc/app1.cnf 
Sun Sep  9 08:27:02 2018 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Sun Sep  9 08:27:02 2018 - [info] Reading application default configuration from /etc/app1.cnf..
Sun Sep  9 08:27:02 2018 - [info] Reading server configuration from /etc/app1.cnf..
Sun Sep  9 08:27:02 2018 - [info] Starting SSH connection tests..
Sun Sep  9 08:27:02 2018 - [debug] 
Sun Sep  9 08:27:02 2018 - [debug]  Connecting via SSH from [email protected](192.168.56.101:22) to [email protected](192.168.56.102:22)..
Sun Sep  9 08:27:02 2018 - [debug]   ok.
Sun Sep  9 08:27:02 2018 - [debug]  Connecting via SSH from [email protected](192.168.56.101:22) to [email protected](192.168.56.103:22)..
Sun Sep  9 08:27:02 2018 - [debug]   ok.
Sun Sep  9 08:27:03 2018 - [debug] 
Sun Sep  9 08:27:02 2018 - [debug]  Connecting via SSH from [email protected](192.168.56.102:22) to [email protected](192.168.56.101:22)..
Sun Sep  9 08:27:03 2018 - [debug]   ok.
Sun Sep  9 08:27:03 2018 - [debug]  Connecting via SSH from [email protected](192.168.56.102:22) to [email protected](192.168.56.103:22)..
Sun Sep  9 08:27:03 2018 - [debug]   ok.
Sun Sep  9 08:27:03 2018 - [debug] 
Sun Sep  9 08:27:03 2018 - [debug]  Connecting via SSH from [email protected](192.168.56.103:22) to [email protected](192.168.56.101:22)..
Sun Sep  9 08:27:03 2018 - [debug]   ok.
Sun Sep  9 08:27:03 2018 - [debug]  Connecting via SSH from [email protected](192.168.56.103:22) to [email protected](192.168.56.102:22)..
Sun Sep  9 08:27:03 2018 - [debug]   ok.
Sun Sep  9 08:27:03 2018 - [info] All SSH connection tests passed successfully.
[[email protected] bin]# masterha_check_repl --conf=/etc/app1.cnf 
Sun Sep  9 08:27:15 2018 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Sun Sep  9 08:27:15 2018 - [info] Reading application default configuration from /etc/app1.cnf..
Sun Sep  9 08:27:15 2018 - [info] Reading server configuration from /etc/app1.cnf..
Sun Sep  9 08:27:15 2018 - [info] MHA::MasterMonitor version 0.56.
Sun Sep  9 08:27:16 2018 - [info] GTID failover mode = 0
Sun Sep  9 08:27:16 2018 - [info] Dead Servers:
Sun Sep  9 08:27:16 2018 - [info] Alive Servers:
Sun Sep  9 08:27:16 2018 - [info]   master(192.168.56.101:3306)
Sun Sep  9 08:27:16 2018 - [info]   slave1(192.168.56.102:3306)
Sun Sep  9 08:27:16 2018 - [info]   slave2(192.168.56.103:3306)
Sun Sep  9 08:27:16 2018 - [info] Alive Slaves:
Sun Sep  9 08:27:16 2018 - [info]   slave1(192.168.56.102:3306)  Version=10.1.35-MariaDB (oldest major version between slaves) log-bin:enabled
Sun Sep  9 08:27:16 2018 - [info]     Replicating from 192.168.56.101(192.168.56.101:3306)
Sun Sep  9 08:27:16 2018 - [info]   slave2(192.168.56.103:3306)  Version=10.1.35-MariaDB (oldest major version between slaves) log-bin:enabled
Sun Sep  9 08:27:16 2018 - [info]     Replicating from 192.168.56.101(192.168.56.101:3306)
Sun Sep  9 08:27:16 2018 - [info] Current Alive Master: master(192.168.56.101:3306)
Sun Sep  9 08:27:16 2018 - [info] Checking slave configurations..
Sun Sep  9 08:27:16 2018 - [info] Checking replication filtering settings..
Sun Sep  9 08:27:16 2018 - [info]  binlog_do_db= , binlog_ignore_db= 
Sun Sep  9 08:27:16 2018 - [info]  Replication filtering check ok.
Sun Sep  9 08:27:16 2018 - [info] GTID (with auto-pos) is not supported
Sun Sep  9 08:27:16 2018 - [info] Starting SSH connection tests..
Sun Sep  9 08:27:17 2018 - [info] All SSH connection tests passed successfully.
Sun Sep  9 08:27:17 2018 - [info] Checking MHA Node version..
Sun Sep  9 08:27:18 2018 - [info]  Version check ok.
Sun Sep  9 08:27:18 2018 - [info] Checking SSH publickey authentication settings on the current master..
Sun Sep  9 08:27:18 2018 - [info] HealthCheck: SSH to master is reachable.
Sun Sep  9 08:27:18 2018 - [info] Master MHA Node version is 0.56.
Sun Sep  9 08:27:18 2018 - [info] Checking recovery script configurations on master(192.168.56.101:3306)..
Sun Sep  9 08:27:18 2018 - [info]   Executing command: save_binary_logs --command=test --start_pos=4 --binlog_dir=/data/binlogs --output_file=/var/log/masterha//save_binary_logs_test --manager_version=0.56 --start_file=mysql-bin.000005 
Sun Sep  9 08:27:18 2018 - [info]   Connecting to [email protected](master:22).. 
  Creating /var/log/masterha if not exists..    ok.
  Checking output directory is accessible or not..
   ok.
  Binlog found at /data/binlogs, up to mysql-bin.000005
Sun Sep  9 08:27:19 2018 - [info] Binlog setting check done.
Sun Sep  9 08:27:19 2018 - [info] Checking SSH publickey authentication and checking recovery script configurations on all alive slave servers..
Sun Sep  9 08:27:19 2018 - [info]   Executing command : apply_diff_relay_logs --command=test --slave_user=‘admin‘ --slave_host=slave1 --slave_ip=192.168.56.102 --slave_port=3306 --workdir=/var/log/masterha/ --target_version=10.1.35-MariaDB --manager_version=0.56 --relay_log_info=/data/mysql/relay-log.info  --relay_dir=/data/mysql/  --slave_pass=xxx
Sun Sep  9 08:27:19 2018 - [info]   Connecting to [email protected](slave1:22).. 
  Checking slave recovery environment settings..
    Opening /data/mysql/relay-log.info ... ok.
    Relay log found at /data/relaylogs, up to relay-bin.000015
    Temporary relay log file is /data/relaylogs/relay-bin.000015
    Testing mysql connection and privileges.. done.
    Testing mysqlbinlog output.. done.
    Cleaning up test file(s).. done.
Sun Sep  9 08:27:19 2018 - [info]   Executing command : apply_diff_relay_logs --command=test --slave_user=‘admin‘ --slave_host=slave2 --slave_ip=192.168.56.103 --slave_port=3306 --workdir=/var/log/masterha/ --target_version=10.1.35-MariaDB --manager_version=0.56 --relay_log_info=/data/mysql/relay-log.info  --relay_dir=/data/mysql/  --slave_pass=xxx
Sun Sep  9 08:27:19 2018 - [info]   Connecting to [email protected](slave2:22).. 
  Checking slave recovery environment settings..
    Opening /data/mysql/relay-log.info ... ok.
    Relay log found at /data/relaylogs, up to relay-bin.000015
    Temporary relay log file is /data/relaylogs/relay-bin.000015
    Testing mysql connection and privileges.. done.
    Testing mysqlbinlog output.. done.
    Cleaning up test file(s).. done.
Sun Sep  9 08:27:19 2018 - [info] Slaves settings check done.
Sun Sep  9 08:27:19 2018 - [info] 
master(192.168.56.101:3306) (current master)
 +--slave1(192.168.56.102:3306)
 +--slave2(192.168.56.103:3306)

Sun Sep  9 08:27:19 2018 - [info] Checking replication health on slave1..
Sun Sep  9 08:27:19 2018 - [info]  ok.
Sun Sep  9 08:27:19 2018 - [info] Checking replication health on slave2..
Sun Sep  9 08:27:19 2018 - [info]  ok.
Sun Sep  9 08:27:19 2018 - [info] Checking master_ip_failover_script status:
Sun Sep  9 08:27:19 2018 - [info]   /usr/local/bin/master_ip_failover --command=status --ssh_user=root --orig_master_host=master --orig_master_ip=192.168.56.101 --orig_master_port=3306 
    inet 192.168.56.105/32 scope global eth1
INFO: VIP 192.168.1.100 found on Master
Sun Sep  9 08:27:19 2018 - [info]  OK.
Sun Sep  9 08:27:19 2018 - [warning] shutdown_script is not defined.
Sun Sep  9 08:27:19 2018 - [info] Got exit code 0 (Not master dead).

MySQL Replication Health is OK.
[[email protected] bin]# 
[[email protected] bin]# masterha_check_s
masterha_check_ssh     masterha_check_status  
[[email protected] bin]# masterha_check_status --conf=/etc/app1.cnf 
app1 is stopped(2:NOT_RUNNING).
[[email protected] bin]# masterha_check_status 
Either --conf or --status_dir must be set.
 at /usr/local/share/perl5/MHA/ManagerAdminWrapper.pm line 121
[[email protected] bin]# 

以上是关于MySQL 高可用 MHA check scripts的主要内容,如果未能解决你的问题,请参考以下文章

8.MHA高可用集群搭建

8.MHA高可用集群搭建

MySQL高可用之MHA—MHA介绍

Mha-Atlas-MySQL高可用

MySQL高可用集群之MHA

MySQL高可用之MHA—部署MHA