MHA failover流程

  • 时间:
  • 浏览:11

7. 调试master_ip_failover_script脚本

#master_ip_failover_script:

首先启动的以时会调用一点脚本--检测status

/opt/master_ip_failover_script.sh –command=status –ssh_user=root –orig_master_host=192.168.153.1000 –orig_master_ip=192.168.153.1000 –orig_master_port=310006

然后在正式failover过程中的第二步,Dead Master Shutdown Phase阶段会在次执行。  第18步,综合shutdown_script关闭数据库肯能服务器

/opt/master_ip_failover_script.sh –orig_master_host=192.168.153.1000 –orig_master_ip=192.168.153.1000 –orig_master_port=310006 –command=stopssh –ssh_user=root

在正式failover过程中的第3.4步骤中(选举新的master然后,应用差异的binlog后),会再次执行。在第24步,执行VIP肯能域名切换操作

/opt/master_ip_failover_script.sh –command=start –ssh_user=root –orig_master_host=192.168.153.1000 –orig_master_ip=192.168.153.1000 –orig_master_port=310006 –new_master_host=192.168.153.151 –new_master_ip=192.168.153.151 –new_master_port=310006 –new_master_user=’mha’ –new_master_password=’mha’

10. MHA启动完毕,进入检测过程

15. 再次检查SLAVE的配置与算不算变化,算不算符合failover条件

2. 检查数据库服务器情况,获取相关的配置参数

20. 获取原MASTER的binlog日志

16. 正式然后刚结束了failover

19. 然后刚结束了做差异日志的恢复,获取SLAVE最后得到的binlog位置

11. 检测到MASTER挂了

5. 然后刚结束了检查SLAVE的差异日志应用权限

8. 调试shutdown_script

21. 选择新的MASTER

26. 差异日志应用完毕后,切换所有的slave到新MASTER

6. 选择当前的克隆qq架构

27. failover操作完成,生成failover报告

17. 再次对SLAVE的配置做检查

3. 测试SSH连接算不算成功

其中:

9. 设置二次检查的主机masterha_secondary_check

25. 然后刚结束了回去一点SLAVE,也是从原MASTER的binlog对比来做恢复

#master_ip_online_change_script:

在使用masterha_master_switch –conf=/etc/app1.cnf –master_state=alive –new_master_host=192.168.153.151主动切换mysql master的以时会调用.

在online切换的第二阶段,拒绝写入原master的然后执行。

/opt/master_ip_online_change_script.sh –command=stop –orig_master_host=192.168.153.1000 –orig_master_ip=192.168.153.1000 –orig_master_port=310006 –orig_master_user=’mha’ –orig_master_password=’mha’ –new_master_host=192.168.153.151 –new_master_ip=192.168.153.151 –new_master_port=310006 –new_master_user=’mha’ –new_master_password=’mha’

然时会在new master上执行

/opt/master_ip_online_change_script.sh –command=start –orig_master_host=192.168.153.1000 –orig_master_ip=192.168.153.1000 –orig_master_port=310006 –orig_master_user=’mha’ –orig_master_password=’mha’ –new_master_host=192.168.153.151 –new_master_ip=192.168.153.151 –new_master_port=310006 –new_master_user=’mha’ –new_master_password=’mha’

14. 再次尝试连接MASTER和MASTER 的SSH

24. 肯能有master_ip_failover,那末 给新master设置VIP肯能设置域名

MHA manager启动后,启动流程以及failover流程如下:

1. 启动前准备情况

13. 确认MASTER挂了,然后刚结束了执行failover流程

12. 通过定义的二次检测,确认MASTER算不算真的挂了

18. 对原Master的master_ip_failover_script和shutdown_script的做操作,关闭SSH肯能关闭数据库

22. 在新的MASTER上应用差异的binlog日志

#report_script=”" //通知脚本

在masterha_manager自动切换完成的最时会调用一次一点脚本。report_script.sh –orig_master_host=(dead master’s hostname) –new_master_host=(new master’s hostname) –new_slave_hosts=(new slaves’ hostnames, delimited by commas) –subject=(mail subject) –body=(body)

23. 获取新MASTER的binlog位置

4. 测试MHA node算不算可用

28. master manager退出

#shutdown_script:

首先启动的以时会执行一点脚本,执行时间紧跟着master_ip_failover_script第一次执行底下

/opt/shutdown_script.sh –command=status –ssh_user=root –host=192.168.153.1000 –ip=192.168.153.1000

第二次执行是在master_ip_failover_script第二次执行底下

/opt/shutdown_script.sh –command=stopssh –ssh_user=root –host=192.168.153.1000 –ip=192.168.153.1000 –port=310006