在MySQL高可用架构中,推荐目前使用比较多的用复是Percona的PXC,Galera以及MySQL 5.7之后的制管MGR等,其他的理工还有的MHA,今天介绍另一个比较好用的具Or介MySQL高可用复制管理工具:Orchestrator(orch)。
这是推荐一款go编写的MySQL高可用性和复制拓扑管理工具,支持复制拓扑结构的用复调整,自动故障转移和手动主从切换等。制管后端数据库用MySQL或SQLite存储元数据,理工并提供Web界面展示MySQL复制的具Or介拓扑关系及状态,通过Web可更改MySQL实例的复制关系和部分配置信息,同时也提供命令行和api接口,方便运维管理。
相对比MHA来看最重要的是解决了管理节点的单点问题,其通过raft协议保证本身的高可用。GitHub的一部分管理也在用该工具进行管理。
Orchestrator大致的特点有:
① 自动发现MySQL的复制拓扑,并且在web上展示。
② 重构复制关系,可以在web进行拖图来进行复制关系变更。
③ 检测主异常,并可以自动或手动恢复,通过Hooks进行自定义脚本。
④ 支持命令行和web界面管理复制。
根据需要下载合适的包进行安装,下载好deb包后,需要安装jq的依赖包(apt-get install jq)。安装完成之后,相应的目录为:
- /usr/local/orchestrator
- -rwxr-xr-x 1 root root 20M 1月 16 21:49 orchestrator
- -rw-r--r-- 1 root root 5.1K 1月 16 21:49 orchestrator-sample.conf.json
- -rw-r--r-- 1 root root 4.4K 1月 16 21:49 orchestrator-sample-sqlite.conf.json
- drwxr-xr-x 7 root root 4.0K 2月 15 19:03 resources
这里列出说明几个比较重要的参数:
- [client]
- user=orchestrator_srv
- password=${ ORCHESTRATOR_PASSWORD}
- CREATE USER 'orchestrator_srv'@'orc_host' IDENTIFIED BY 'orc_server_password';
- GRANT ALL ON orchestrator.* TO 'orchestrator_srv'@'orc_host';
- [client]
- user=orchestrator_srv
- password=${ ORCHESTRATOR_PASSWORD}
- CREATE USER 'orchestrator'@'orc_host' IDENTIFIED BY 'orc_topology_password';
- GRANT SUPER, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT, RELOAD ON *.* TO 'orchestrator'@'orc_host';
- GRANT SELECT ON meta.* TO 'orchestrator'@'orc_host';
- GRANT SELECT ON ndbinfo.processes TO 'orchestrator'@'orc_host'; -- Only for NDB Cluster
1. 开启orchestrator
- ./orchestrator --debug --config=/etc/orchestrator.conf.json http
2. 把配置好的复制实例加入到orchestrator,因为orch可以自动发现整个拓扑的所有实例,所以只需要添加任意一台实例即可,如果没有发现的话可以再添加。
在web上添加(导航里的Clusters -> Discover):
添加完成之后,最终的结构图如下:
限于篇幅的原因,今天先对orchestrator做个整体的介绍。
责任编辑:庞桂玉 来源: 今日头条 MySQL管理工具Orchestrator(责任编辑:百科)
真我觉醒光环系统Pro光效DIY大赛开启:GT5专属“灯光秀”
东方国信(300166.SZ)公布消息:拟使用节余募集资金永久补充流动资金
专利显示苹果可能使用玻璃制造MacBook 可能支持无线充电
央行上海总部:10月人民币存款增加3311亿元 住户存款减少72亿元