MySQL高可用复制管理工具Orchestrator怎么用
本篇文章给大家分享的是有关MySQL高可用复制管理工具Orchestrator怎么用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
背景在MySQL高可用架构中,目前使用比较多的是Percona的PXC,Galera以及MySQL 5.7之后的MGR等,其他的还有的MHA,今天介绍另一个比较好用的MySQL高可用复制管理工具:Orchestrator(orch)。
Orchestrator这是一款go编写的MySQL高可用性和复制拓扑管理工具,支持复制拓扑结构的调整,自动故障转移和手动主从切换等。后端数据库用MySQL或SQLite存储元数据,并提供Web界面展示MySQL复制的拓扑关系及状态,通过Web可更改MySQL实例的复制关系和部分配置信息,同时也提供命令行和api接口,方便运维管理。
相对比MHA来看最重要的是解决了管理节点的单点问题,其通过raft协议保证本身的高可用。GitHub的一部分管理也在用该工具进行管理。
Orchestrator大致的特点有:
① 自动发现MySQL的复制拓扑,并且在web上展示。
② 重构复制关系,可以在web进行拖图来进行复制关系变更。
③ 检测主异常,并可以自动或手动恢复,通过Hooks进行自定义脚本。
④ 支持命令行和web界面管理复制。
安装根据需要下载合适的包进行安装,下载好deb包后,需要安装jq的依赖包(apt-get install jq)。安装完成之后,相应的目录为:
/usr/local/orchestrator-rwxr-xr-x1rootroot20M1月1621:49orchestrator-rw-r--r--1rootroot5.1K1月1621:49orchestrator-sample.conf.json-rw-r--r--1rootroot4.4K1月1621:49orchestrator-sample-sqlite.conf.jsondrwxr-xr-x7rootroot4.0K2月1519:03resources
orchestrator:应用程序
*.json:默认的配置模板
resources:orchestrator相关的文件:client、web、伪GTID等相关文件。
配置这里列出说明几个比较重要的参数:
ListenAddress:web界面的http端口
MySQLOrchestratorHost:orch后端数据库地址
MySQLOrchestratorPort:orch后端数据库端口
MySQLOrchestratorDatabase:orch后端数据库名
MySQLOrchestratorUser:orch后端数据库用户名(明文)
MySQLOrchestratorPassword:orch后端数据库密码(明文)
MySQLOrchestratorCredentialsConfigFile:后端数据库用户名密码的配置文件「 "MySQLOrchestratorCredentialsConfigFile": "/etc/mysql/orchestrator-backend.cnf" 」,格式:
[client]user=orchestrator_srvpassword=${ORCHESTRATOR_PASSWORD}
后端MySQL数据库的用户权限需要是:
CREATEUSER'orchestrator_srv'@'orc_host'IDENTIFIEDBY'orc_server_password';GRANTALLONorchestrator.*TO'orchestrator_srv'@'orc_host';
MySQLTopologyUser:被管理的MySQL的用户(明文)
MySQLTopologyPassword:被管理的MySQL的密码(密文)
MySQLTopologyCredentialsConfigFile:被管理的MySQL的用户密码配置文件「"/etc/mysql/orchestrator-topology.cnf"」,格式:
[client]user=orchestrator_srvpassword=${ORCHESTRATOR_PASSWORD}
被管理MySQL数据库的用户权限需要是:
CREATEUSER'orchestrator'@'orc_host'IDENTIFIEDBY'orc_topology_password';GRANTSUPER,PROCESS,REPLICATIONSLAVE,REPLICATIONCLIENT,RELOADON*.*TO'orchestrator'@'orc_host';GRANTSELECTONmeta.*TO'orchestrator'@'orc_host';GRANTSELECTONndbinfo.processesTO'orchestrator'@'orc_host';--OnlyforNDBCluster运行部署
1. 开启orchestrator
./orchestrator--debug--config=/etc/orchestrator.conf.jsonhttp
2. 把配置好的复制实例加入到orchestrator,因为orch可以自动发现整个拓扑的所有实例,所以只需要添加任意一台实例即可,如果没有发现的话可以再添加。
在web上添加(导航里的Clusters -> Discover)
添加完成
以上就是MySQL高可用复制管理工具Orchestrator怎么用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。