将自己日常学习工作过程中的问题及心得记录下来
1 环境构建
Master -- master
1 server1
111.10.10.10(master1)
虚拟IP 111.10.10.11
2 server2
111.10.10.40 (master2)
虚拟IP 111.10.10.12
3 server3
111.10.10.20 (监控主机)
虚拟IP 111.10.10.13
server1 和 server2 互为主从
2 安装过程
yum install epel* -y
yum install mysql-mmm* -y
server1,server2 赋权:
grant replication client on *.* to 'mmm_monitor'@'111.10.10.%' identified by 'monitor_password';
grant super,replication client,process on *.* to 'mmm_agent'@'111.10.10.%' identified by 'agent_password';
flush privileges;
修改配置文件
/etc/mysql-mmm/mmm_common.conf
[ mysql-mmm]# cat mmm_common.conf
active_master_role writer <host default> cluster_interface eth1 pid_path /var/run/mysql-mmm/mmm_agentd.pid bin_path /usr/libexec/mysql-mmm/ mysql_port 3351 replication_user replicant replication_password slave agent_user mmm_agent agent_password agent_password </host> <host db1> ip 111.10.10.10 mode master peer db2 </host> <host db2> ip 111.10.10.40 mode master peer db1 </host> <role writer> hosts db1, db2 ips 111.10.10.13 mode exclusive </role> <role reader> hosts db1, db2 ips 111.10.10.11,111.10.10.12 mode balanced </role>数据库服务器server1,server2 修改
/etc/mysql-mmm/mmm_agent.conf
[ mysql-mmm]# cat mmm_agent.conf
include mmm_common.conf # The 'this' variable refers to this server. Proper operation requires # that 'this' server (db1 by default), as well as all other servers, have the # proper IP addresses set in mmm_common.conf. this db1 --根据实际情况指定监控服务器server3 上 修改
[ mysql-mmm]# cat mmm_mon.conf
include mmm_common.conf <monitor> ip 127.0.0.1 pid_path /var/run/mysql-mmm/mmm_mond.pid bin_path /usr/libexec/mysql-mmm status_path /var/lib/mysql-mmm/mmm_mond.status ping_ips 111.10.10.10,111.10.10.40 auto_set_online 60 # The kill_host_bin does not exist by default, though the monitor will # throw a warning about it missing. See the section 5.10 "Kill Host # Functionality" in the PDF documentation. # # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host # </monitor> <host default> monitor_user mmm_monitor monitor_password monitor_password </host> debug 03 启动测试:
server1,server2 启动agent
[ ~]# /etc/init.d/mysql-mmm-agent start
Starting MMM Agent Daemon: [ OK ]server3 启动
/etc/init.d/mysql-mmm-monitor start
4 查看
[ mysql-mmm]# mmm_control show
db1(111.10.10.10) master/ONLINE. Roles: reader(111.10.10.12), writer(111.10.10.13) db2(111.10.10.40) master/ONLINE. Roles: reader(111.10.10.11) [ mysql-mmm]# mmm_control checks db2 ping [last change: 2014/09/12 08:07:08] OK db2 mysql [last change: 2014/09/12 08:07:08] OK db2 rep_threads [last change: 2014/09/12 08:08:53] OK db2 rep_backlog [last change: 2014/09/12 08:07:08] OK: Backlog is null db1 ping [last change: 2014/09/12 08:07:08] OK db1 mysql [last change: 2014/09/12 08:07:08] OK db1 rep_threads [last change: 2014/09/12 08:08:35] OK db1 rep_backlog [last change: 2014/09/12 08:07:08] OK: Backlog is null*****************************************************************
问题: 错误1
[ ~]# mmm_control checks
db2 ping [last change: 2014/09/12 04:35:58] OK db2 mysql [last change: 2014/09/12 04:35:58] ERROR: Connect error (host = 111.10.10.40:3306, user = mmm_monitor)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111 db2 rep_threads [last change: 2014/09/12 04:35:58] UNKNOWN: Connect error (host = 111.10.10.40:3306, user = mmm_monitor)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111 db2 rep_backlog [last change: 2014/09/12 04:35:58] UNKNOWN: Connect error (host = 111.10.10.40:3306, user = mmm_monitor)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111 db1 ping [last change: 2014/09/12 04:35:58] OK db1 mysql [last change: 2014/09/12 04:35:58] ERROR: Connect error (host = 111.10.10.10:3306, user = mmm_monitor)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111 db1 rep_threads [last change: 2014/09/12 04:35:58] UNKNOWN: Connect error (host = 111.10.10.10:3306, user = mmm_monitor)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111 db1 rep_backlog [last change: 2014/09/12 04:35:58] UNKNOWN: Connect error (host = 111.10.10.10:3306, user = mmm_monitor)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111原因分析: 端口配置错误。
解决办法: 修改 /etc/mysql-mmm 下 mmm_common.conf 文件内容:
active_master_role writer
<host default> cluster_interface eth0 pid_path /var/run/mysql-mmm/mmm_agentd.pid bin_path /usr/libexec/mysql-mmm/ mysql_port 3351 --指定正确端口号replication_user replication replication_password slave agent_user mmm_agent agent_password agent_password </host>错误2
[ mysql-mmm]# mmm_control checks
db2 ping [last change: 2014/09/12 07:37:36] OK db2 mysql [last change: 2014/09/12 07:37:36] ERROR: Connect error (host = 111.10.10.40:3351, user = mmm_monitor)! Access denied for user 'mmm_monitor'@'111.10.10.20' (using password: YES) db2 rep_threads [last change: 2014/09/12 07:37:36] UNKNOWN: Connect error (host = 111.10.10.40:3351, user = mmm_monitor)! Access denied for user 'mmm_monitor'@'111.10.10.20' (using password: YES) db2 rep_backlog [last change: 2014/09/12 07:37:36] UNKNOWN: Connect error (host = 111.10.10.40:3351, user = mmm_monitor)! Access denied for user 'mmm_monitor'@'111.10.10.20' (using password: YES) db1 ping [last change: 2014/09/12 07:37:36] OK db1 mysql [last change: 2014/09/12 07:37:36] ERROR: Connect error (host = 111.10.10.10:3351, user = mmm_monitor)! Access denied for user 'mmm_monitor'@'111.10.10.20' (using password: YES) db1 rep_threads [last change: 2014/09/12 07:37:36] UNKNOWN: Connect error (host = 111.10.10.10:3351, user = mmm_monitor)! Access denied for user 'mmm_monitor'@'111.10.10.20' (using password: YES) db1 rep_backlog [last change: 2014/09/12 07:37:36] UNKNOWN: Connect error (host = 111.10.10.10:3351, user = mmm_monitor)! Access denied for user 'mmm_monitor'@'111.10.10.20' (using password: YES)问题原因: 密码错误,经验证 数据库密码无问题
解决办法:
mysql-mmm]# pwd
/etc/mysql-mmm [ mysql-mmm]# cat mmm_mon.conf include mmm_common.conf <monitor> ip 127.0.0.1 pid_path /var/run/mysql-mmm/mmm_mond.pid bin_path /usr/libexec/mysql-mmm status_path /var/lib/mysql-mmm/mmm_mond.status ping_ips 111.10.10.10,111.10.10.40 auto_set_online 60 # The kill_host_bin does not exist by default, though the monitor will # throw a warning about it missing. See the section 5.10 "Kill Host # Functionality" in the PDF documentation. # # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host # </monitor> <host default> monitor_user mmm_monitor monitor_password monitor_password --修改密码后问题解决</host> debug 0*******************************************************************************************
Tieger 2014/9/12