purge_relay_logs script:删除旧的relay log
[app@slave_host1]$ cat /etc/cron.d/purge_relay_logs # purge relay logs at 5am 0 5 * * * app /usr/bin/purge_relay_logs --user=root --password=PASSWORD --disable_relay_log_purge >> /var/log/masterha/purge_relay_logs.log 2>&1
Monitoring multiple applications
你或许在一台机子上希望监控多套master-salve复制,这非常容易,只要为application2创建一个新的配置文件并启动manager
# masterha_manager --conf=/etc/conf/masterha/app1.cnf # masterha_manager --conf=/etc/conf/masterha/app2.cnf
如果你在app1和app2上有一些共有的参数,可在全局配置文件中配置。
?
Using with clustering software
如果你在master上使用虚拟IP,你可能已经使用了类似于Pacemaker的集群软件。如果你使用了相似的工具,你或许需要使用它们来管理虚拟IP地址,而不是让所有的事都由MHA完成。MHA仅用于故障切换,所以你需要使用配合使用其他集群工具来实现高可用。
?
下面是一个简要的Pacemaker配置(Heartbeat v1 模式)
# /etc/ha.d/haresources on host2
host2 failover_start IPaddr::192.168.0.3
# failover_start script example
?
start)
`masterha_master_switch --master_state=dead--interactive=0 --wait_on_failover_error=0 --dead_master_host=host1--new_master_host=host2`
exit
?
stop)
# do nothing
# Application configuration file:
[server1]
hostname=host1
candidate_master=1
?
[server2]
hostname=host2
candidate_master=1
?
[server3]
hostname=host3
no_master=1
因为数据文件不是共享的,所以数据资源也不用被集群工具或DRBD管理。处于这个目的,集群工具仅仅实现一个执行masterha_master_switch脚本和虚拟IP漂移的功能,你也可以自己使用手工脚本实现这些功能。