MySQL-高可用架构-ORCH
2022/3/6 2:15:34
本文主要是介绍MySQL-高可用架构-ORCH,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Orchestrator(orch)
简介
orchestrator 是 go编写的MySQL高可用性和复制拓扑管理工具,支持复制拓扑结构的调整,自动故障转移和手动主从切换等功能,并提供命令行访问、HTTP API 和 Web 界面。后端数据库用MySQL或SQLite存储元数据,orch作为独立的组件用于管理MySQL或SQLite数据库复制环境的场景。
支持的功能
Discovery(自动发现)
自动发现MySQL的复制拓扑,并且在web上展示
Refactoring(重构)
可以在web进行拖图来进行复制关系的变更
Recovery(恢复)
检测主异常,并可以自动或手动恢复,通过Hooks进行自定义脚本
部署
orch 是用主机名进行管理维护工作。
环境规划
监控目标 MySQL一主两从复制架构(可新建或现存环境),使用mysql作为orch的元数据库
IP | 主机名称 | 端口 | 组件 |
---|---|---|---|
orch 后端数据库 | |||
192.168.10.181 | db01 | 3306 | orchestrator |
192.168.10.182 | db02 | 3306 | orchestrator |
192.168.10.183 | db03 | 3306 | orchestrator |
监控目标数据库 | |||
192.168.10.181 | db01 | 3308 | MySQL |
192.168.10.182 | db02 | 3308 | MySQL |
192.168.10.183 | db03 | 3308 | MySQL |
下载软件
wget https://github.com/openark/orchestrator/releases/download/v3.2.6/orchestrator-3.2.6-linux-amd64.tar.gz
依赖
使用 MySQL 作为后端元信息库时
- 安装MySQL数据库
使用 SQLite 作为后端元信息库时
- 无
安装
二进制(tarball)
GitHub中仅提供linux环境的tarball包
tar -xf orchestrator-3.2.6-linux-amd64.tar.gz -C /ups/app/
配置环境变量
expport PATH=/ups/app/orchestrator-3.2.6/bin:$PATH
rpm包
rpm -i orchestrator-3.2.6.x86_64.rpm
配置
配置后端元信息数据库
-- 元数据库MySQL和orchestrator在同一台机器,否则需要将127.1替换orchestrator所在机器ip CREATE DATABASE IF NOT EXISTS orchestrator; CREATE USER 'orchestrator'@'127.0.0.1' IDENTIFIED BY 'orch_backend_password'; GRANT ALL PRIVILEGES ON `orchestrator`.* TO 'orchestrator'@'127.0.0.1';
授权访问权限(监控目标数据库执行)
给orchestrator用户授权访问监控目标数据库权限
CREATE USER 'orchestrator'@'orch_hostname' IDENTIFIED BY 'orch_topology_password'; GRANT SUPER, PROCESS, REPLICATION SLAVE, RELOAD ON *.* TO 'orchestrator'@'orch_hostname'; GRANT SELECT ON mysql.slave_master_info TO 'orchestrator'@'orch_hostname'; GRANT SELECT ON ndbinfo.processes TO 'orchestrator'@'orch_hostname'; -- Only for NDB Cluster GRANT SELECT ON meta.* TO 'orchestrator'@'orch_hostname'; --自定义meta库
Orchestrator配置文件(/etc/orchestrator.conf.json)
修改下面配置项
"MySQLOrchestratorHost": "127.0.0.1", "MySQLOrchestratorPort": 3306, "MySQLOrchestratorDatabase": "orchestrator", "MySQLOrchestratorUser": "orchestrator", "MySQLOrchestratorPassword": "orch_backend_password", "MySQLTopologyUser": "orchestrator", "MySQLTopologyPassword": "orch_topology_password",
启动orchestator服务
./orchestrator --debug --config=/etc/orchestrator.conf.json http
使用
附录
参考文档
- orchestrator软件github地址
这篇关于MySQL-高可用架构-ORCH的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程
- 2024-11-01部署MySQL集群学习:新手入门教程
- 2024-11-01部署MySQL集群入门:新手必读指南
- 2024-10-23BinLog入门:新手必读的MySQL二进制日志指南
- 2024-10-23Binlog入门:MySQL数据库的日志管理指南