1 后台运行
默认情况下,masterha_manager在前台运行。您可以将masterha_manager程序在后台运行,如下所示。
manager_host$ nohup masterha_manager --conf=/etc/app1.cnf < /dev/null > /var/log/masterha/app1/app1.log 2>&1 &
设置nohup,并确保masterha_manager不会从STDIN、STDOUT和STDERR读取/写入。
2 使用daemontools从运行MHA Manager
目前,MHA Manager进程不作为守护程序运行。如果故障切换成功完成,或者主进程意外终止,管理器将停止工作。要作为守护程序运行,可以使用daemontool或任何外部守护程序。以下是从daemontools运行的示例。
1 - 安装daemontools
For RedHat
manager_host# yum install daemontools
2 - 在/service/masterha_(app_name)/目录下创建run文件
manager_host# mkdir /service/masterha_app1
manager_host# cat /service/masterha_app1/run
#!/bin/sh
exec masterha_manager --conf=/etc/app1.cnf --wait_on_monitor_error=60 --wait_on_failover_error=60 >> /var/log/masterha/app1/app1.log 2>&1
manager_host# chmod 755 /service/masterha_app1/run
您可以通过daemontool命令停止/重新启动监视。
## stopping monitoring
manager_host# svc -d /service/masterha_app1
## starting monitoring
manager_host# svc -u /service/masterha_app1
3 监控多个MySQL集群
您可能希望从单个管理服务器监控多个(主服务器,从属服务器)对。这很容易实现。只需为应用程序2创建一个新的配置文件,并通过设置--conf=(另一个配置文件)启动masterha_manager。
# masterha_manager --conf=/etc/conf/masterha/app1.cnf
# masterha_manager --conf=/etc/conf/masterha/app2.cnf
如果在app1和app2之间有一些相同的参数,则建议将这些参数设置在全局配置文件中。有关详细信息,请参阅配置部分。