扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这期内容当中小编将会给大家带来有关如何部署MySQL复制拓扑管理工具Orchestrator,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
创新互联建站主要为客户提供服务项目涵盖了网页视觉设计、VI标志设计、网络营销推广、网站程序开发、HTML5响应式网站建设公司、移动网站建设、微商城、网站托管及网站维护、WEB系统开发、域名注册、国内外服务器租用、视频、平面设计、SEO优化排名。设计、前端、后端三个建站步骤的完善服务体系。一人跟踪测试的建站服务标准。已经为iso认证行业客户提供了网站开发服务。
今天主要介绍一下如何部署MySQL复制拓扑管理工具--Orchestrator。
一、MySQL复制拓扑管理工具Orchestrator
1. 简介
Orchestrator是一款开源的MySQL复制拓扑管理工具,采用go语言编写,支持MySQL主从复制拓扑关系的调整、支持MySQL主库故障自动切换、手动主从切换等功能。
Orchestrator后台依赖于MySQL或者SQLite存储元数据,能够提供Web界面展示MySQL集群的拓扑关系及实例状态,通过Web界面可更改MySQL实例的部分配置信息,同时也提供命令行和api接口,以便更加灵活的自动化运维管理。
相比于MHA,Orchestrator更加偏重于复制拓扑关系的管理,能够实现MySQL任一复制拓扑关系的调整,并在此基础上,实现MySQL高可用,另外Orchestrator自身可以部署多个节点,通过raft分布式一致性协议,保证自身的高可用。
2. 特征
Orchestrato主要有以下几个特征:
自动监测数据库复制的结构及其状态
提供了GUI,CLI,API等接口来检查复制拓扑的状态以及做一些调整的操作
支持自动的master failover,当复制结构的server挂掉以后(不管手动还是自动的),能够重新形成复制的拓扑结构
不依赖于特定的server版本或分支(MySQL, Percona Server, MariaDB or even MaxScale binlog servers)
支持多种类型的拓扑结构,不管是单个的主从还是成百上千个server组成的多级复制都不在话下
他的GUI不只是做向你report拓扑状态而已,你可以在Orchestrator web页面通过拖拽或者删除节点来改变复制拓扑(CLI和API也能做)
3. 体系结构
以下图表说明了每个 Orchestrator 功能以及相互之间的通信。
Orchestration 数据库是 Orchestrator 安装的中心,其中包含所有 Runbook、配置设置和日志。 系统需要以 Management 服务器作为 Runbook Designer 与 Orchestration 数据库之间的通信层。 一个或多个 Runbook 服务器直接与此数据库通信,以检索要运行的 Runbook 以及存储关于从 Runbook 中创建的作业的信息。 Web 服务也直接与 Orchestration 数据库通信,并为 Orchestration 控制台提供 Web 浏览器连接。
二、环境准备
1. IP规划
2. 设置hostname解析
三、安装部署Orchestrator
源码地址:https://github.com/github/orchestrator.git
1. 下载
2. rpm安装
安装完成后,目录在/usr/local/orchestrator
3. 修改my.cnf
MySQL配置文件加一个report_host参数,report_host为只读参数,必须重启才可生效
说明:不加report_host ,show slave hosts 不会显示host,会导致程序报错的
4. 创建数据库及用户
(1) 拓扑库操作:
CREATE DATABASE IF NOT EXISTS orchestrator; GRANT ALL PRIVILEGES ON `orchestrator`.* TO 'orche'@'%' IDENTIFIED BY 'xxxxx';
(2) 主从库操作:
如果是主从复制,主从分别操作
5. 修改orchestrator配置文件
# cd /usr/local/orchestrator/ # cp orchestrator-sample.conf.json orchestrator.conf.json # vim orchestrator.conf.json ========================================================= { "Debug": true, "EnableSyslog": false, "ListenAddress": ":3000", #http开放端口 "MySQLTopologyUser": "orche", #mysql管理账号,所有被管理的MySQL集群都需要有该账号 "MySQLTopologyPassword": "xx", #mysql管理账号密码 "MySQLTopologyCredentialsConfigFile": "", "MySQLTopologySSLPrivateKeyFile": "", "MySQLTopologySSLCertFile": "", "MySQLTopologySSLCAFile": "", "MySQLTopologySSLSkipVerify": true, "MySQLTopologyUseMutualTLS": false, "MySQLOrchestratorHost": "xx", #后台mysql数据库地址,orchestrator依赖MySQL或者SQLite存储管理数据 "MySQLOrchestratorPort": 3306, #后台mysql数据库端口 "MySQLOrchestratorDatabase": "orchestrator", #后台mysql数据库名 "MySQLOrchestratorUser": "orche", #后台mysql数据库账号 "MySQLOrchestratorPassword": "xx", #后台mysql数据库密码 ................. ] =========================================================
注意:MySQLTopologyUser 这个配置项为被管理的MySQL集群的admin账号,该账号需要有super,process,reload,select,replicatiopn slave,replicatiopn client 权限。
6. 启动orchestrator
7. 发现实例
8. 访问
Web页面:http://172.26.151.69:3000
到这里就完成orchestrator的搭建工作了。
上述就是小编为大家分享的如何部署MySQL复制拓扑管理工具Orchestrator了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流