orchestrator高可用解决方案(1)

  • 2020 年 2 月 26 日
  • 筆記

准备写一个系列orchestrator工具集的文章。先放上来一篇简介。

orchestrator是mysql高可用和复制管理工具,并且支持命令行,http api以及web可视化。

可以作为一个ha的服务来搭建运行。

下面介绍下具体的功能:

1.探测

orchestrator通过抓取数据库拓扑图,获取mysql基本信息(复制关系,配置文件),通过可视化展示出集群架构,如果存在复制问题也会标示出来

2.重构

orchestrator 理解复制规则,比较了解binlog file:position,gtid,pseudo gtid,binlog server这些东西意义所以对于主从关系的变化可以更好自动化处理,。比如 主库挂了以后选主问题,从库挂了以后踢除,恢复后如何自动衔接到主库上面,或者有级联需求,主从从 这些都可以通过可视化平台或者命令行工具来人工操作或者自动操作。

3.故障恢复

orchestrator 基于全局视角(能感知到任何变更对整体存在哪些影响)来感知主库以及候选主库的不可用状态,能识别很多种不可用状态,这点是加分项。

配置方面,可以自动恢复,也可以手动。orchestrator完成候选主库的恢复,真正的主库failover的时候支持hook。也就是可以在failover之前/后者之后进行一些操作,一般是消息通知或者信息变更操作。

恢复过程是利用orchestrator对拓扑的理解以及重构能力,经过各种评估以及分析来选择最佳恢复方式,主要是基于动态收集来的状态来做恢复而不是静态的配置信息。

4.界面

orchestrator 支持哪些功能:

  1. 命令行
  2. web api(http get)
  3. web interface
image

参考:https://github.com/openark/orchestrator