使用masterha_check_ssh -conf=/etc/masterha/app1.cnf测试ssh无密码认证是出现的报错
[root@localhost ~]# masterha_check_ssh -conf=/etc/masterha/app1.cnf
Sat Sep 19 00:33:19 2020 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Sat Sep 19 00:33:19 2020 - [info] Reading application default configuration from /etc/masterha/app1.cnf..
Sat Sep 19 00:33:19 2020 - [info] Reading server configuration from /etc/masterha/app1.cnf..
Sat Sep 19 00:33:19 2020 - [error][/usr/local/share/perl5/MHA/Config.pm, ln383] Block name "_" is invalid. Block name must be "server default" or start from "server"(+ non-whitespace characters).
Block name "_" is invalid. Block name must be "server default" or start from "server"(+ non-whitespace characters). at /usr/local/share/perl5/MHA/SSHCheck.pm line 148.
报错原因
/etc/masterha/app1.cnf文件配置中区域名称错误
示例
错误配置
manager_log=/var/log/masterha/app1/manager.log
manager_workdir=/var/log/masterha/app1
master_binlog_dir=/usr/local/mysql/data
master_ip_failover_script=/usr/local/bin/master_ip_failover
……省略部分
[master]
hostname=20.0.0.12
port=3306
[slave]
hostname=20.0.0.18
port=3306
正确配置
[server default]
manager_log=/var/log/masterha/app1/manager.log
manager_workdir=/var/log/masterha/app1
master_binlog_dir=/usr/local/mysql/data
master_ip_failover_script=/usr/local/bin/master_ip_failover
master_ip_online_change_script=/usr/local/bin/master_ip_online_change
password=manager
ping_interval=1
remote_workdir=/tmp
repl_password=123456
repl_user=myslave
secondary_check_script=/usr/local/bin/masterha_secondary_check -s 20.0.0.18 -s 20.0.0.19
shutdown_script=""
ssh_user=root
user=mha
[server1]
hostname=20.0.0.12
port=3306
[server2]
hostname=20.0.0.18
port=3306
注意 [server default] [server1] [server2] 这些默认的区域名称不要随意改动,否则就会报错