摘要:
在 DBA 的日常工作中,疾速部署数据库高可用架构,且标准化地入网部署数据库是一项重要的根底工作。本文将介绍常见的部署 MGR 的形式,并重点介绍万里数据库的 GreatADM 数据库治理平台进行图形化、可视化、标准化的部署过程,以进步交付效率和品质,给 DBA 提供一种全新的体验。(本文浏览大概须要 4 - 6 分钟)
引言
常见的数据库入网交付的形式和各自优缺点
形式一:手动部署
这是最根本的部署形式,须要手动在每个节点上装置、配置 cnf 和治理各节点,命令交互太多。尽管借助社区版的 MySQL Shell 操作绝对简略,但对于大规模部署,手动操作可能消耗大量工夫和人力,并且容易呈现配置谬误和一致性问题。
形式二:批量管理工具
应用配置管理工具(如 Ansible、Puppet、Chef 等)能够实现自动化的数据库装置部署,来解决批量交付时反复的劳动。通过编写配置文件和定义工作,配置管理工具能够主动执行装置、配置和启动 MGR 的步骤。这种形式能够进步部署效率并确保一致性,但对于初学者来说,配置管理工具的学习和配置可能须要肯定的工夫和学习老本。
形式三:GreatADM 数据库治理平台
也是明天要介绍的配角。GreatADM提供了图形化、可视化、标准化、流程化的部署 MGR 的能力,极大地简化了部署过程。说到这里大家可能脑子有诸多疑难:
- GreatADM 是什么?
- 都有哪些性能?
- 能解决什么问题?
- 支不反对国产操作系统?
- 怎么部署数据库流程是什么?
- 装置平台麻烦吗?哪里能够下载到?
我暂且先只回复第一个问题,其余的大家可在文章中或者 GreatSQL 社区历史文章中发现。
技术干货 | 从 DBA 视角看数据库运维治理平台
GreatADM 是什么?GreatADM(GreatDB Administrator Platform)
是一款万里数据库治理平台。反对基于 GreatDB、GreatSQL、MySQL 多种集中式计划全生命周期的治理的软件。接下来咱们就来入手边实际边看。
Let’s go
文章整体内容,围绕如何图形化交付 MGR,以及交付之后 GreatADM 都有哪些性能,疾速理解如何上手,以及集体感觉应用的几个性能点。
一、GreatADM 本身的装置
二、图形化部署 MGR 的流程
三、作为 DBA 集体感觉不错的 3 个点
四、总结回顾
一、GreatADM 数据库治理平台的疾速装置
1. 装置和配置 GreatADM
首先解压软件包
拿到 GreatADM 软件包为一个 zip 的压缩包,解压之后失去一个 adm_install.sh
的 shell 装置脚本和一个GreatADM 的主程序包
。
GreatADM 反对在多个国产操作系统装置部署,如麒麟、欧拉、龙蜥、统信、BClinux 等。
2. 配置装置脚本
这里须要配置装置的主机 IP,以及 WEB 拜访 GreatADM 的端口和主机的操作系统用户名和明码,本次用是 root,也能够应用 sudo user 明码等信息。
命令:vim adm_install.sh
a)、ADM_IP_ARRAY=(172.17.139.50)
如果是高可用装置,此处能够配置多个 IP 地址,GreatADM 反对平台服务高可用配置和故障自切换。反对间接装置部署在近程主机上。
b)、ADM_WEB_PORT=80
默认浏览器拜访治理页面端口,可按需自定义
**c)、SSH_USER=root
SSH_PASSWORD=abc123**
本地装置是将 GreatADM 平台单机部署。如果配置双机高可用,则须要后行配置双机之间的 ssh 互信认证,而后调整认证形式,填写公钥文件门路即可
**SSH_AUTH=pubkey
SSH_KEY_FILE=/root/.ssh/id_ras**
平台元数据库配置,默认无需配置,内置 sqlite3 作为根底元数据的数据库,轻量且易用,个别倡议反对 20 台主机以下公有规模。
如果超过 20 台主机,可思考接入 ADM 本身部署的数据库中,目前简略测试了一下在 16C 16G 500G/SSD
配置下,应用 GreatSQL 作为元数据库,创立和纳管了 40 多套 万里 GreatRouter 高可用集群、主从、MGR 等多类架构大概 130+ 台主机,无压力。
3. 执行装置
命令:sh adm_install.sh install
装置实现之后,可通过登录 http://172.17.139.50:80
来拜访 GreatADM 的治理页面
4. 登录图形界面
首次登录 GreatADM,须要批改默认的初始密码,用户账号能够是邮箱地址、能够是用户名。
默认平台超管为:用户名 adm
和adm@greatdb.com
两种能够登录,如下
二、应用 GreatADM 部署 GreatSQL MGR
GreatADM 治理平台默认对 MySQL 数据库架构的 4 大分类,并且反对用户已自建的 MySQL5.7/8.0 的对立纳管到平台和复制拓扑主动探测和拓扑绘制。反对 GreatDB、GreatSQL、Percona Server、MySQL 类型的数据库类型。
A、GreatDBRouter 三节点:
对应万里 GreatDB 数据库企业版高可用解决方案
B、PAXOS 高可用复制:
反对 MGR、以及 GreatSQL MGR+VIP 计划
C、主备多正本:
传统的主从复制、双主、双主一从、多主多从等计划
D、单实例节点:
提供批量交付多个单点场景,以及实例的一键批量诊断、实例巡检报告生成等服务,同时反对单节点降级为其余高可用架构。
接来下咱们开始装置 MGR,本次咱们选用 GreatSQL 版本来部署 MGR,GreatSQL 是实用于金融级利用的国内自主开源数据库,能够作为 MySQL 或 Percona Server 的可选替换,用于线上生产环境,且完全免费并兼容 MySQL 或 Percona Server。
1. 增加主机信息
自动识别操作系统版本和 CPU 平台信息,能够按需减少机房、机架、机柜等信息。GreatADM 同时反对资源池形式的数据库部署形式,可将多台物理主机的 cpu、内存、磁盘标准化为一个计算资源池,通过从资源池中按需分配数据库实例的算力,以进步物理主机的资源利用效率,这点倒是挺不错。这个咱们下期再做介绍。
2. 调整参数模板、确认软件包
查看内置的参数模板
当然用户能够按需上传参数,能够绑定项目名称,作为公有我的项目独享,也能够作为公共模板多我的项目共用
本次咱们调整内置的参数模板,同时可按需【增加参数】临时调整如下 2 项 innodb_buffer_pool_size、innodb_buffer_pool_instances
这里的这个参数模板,以及参数搜寻框不错,能够疾速含糊匹配参数
上传数据库二进制包,自动识别软件包的属性信息。
这里咱们上传了 GreatSQL 社区版本,还有 XtraBackup 备份工具。当然 GreatADM 在装置时,会主动搜寻同目录门路是否存在数据库包,如果有的话会自动识别加载。这点的确省去不少通过 web 浏览器上传软件包的工夫。到此,咱们部署数据库的必要条件都曾经具备,下一步筹备执行 MGR 的图形化装置。
3. 数据库装置部署
抉择 Paxos 高可用部署计划,因 MGR 采纳 Paxos 协定,所以内部咱们抉择 Paxos 架构,物理主机部署形式进行。抉择对应的数据库版本、备份工具、参数模板、并填写默认的数据库名称、管理员账号密码等。
进行三阶段流程:
1、根底配置
2、零碎预查看
3、执行交付部署
【装置前配置】如下:
【主机预查看】,查看项如主机时区工夫、swap 替换分区、安全策略 selinux、分区挂载、系统资源限度、内核参数等共计近 20 项预检内容,均为历史教训积攒的转化。
当不满足预检内置条件时,会弹框揭示,按级别分为必检项(必须满足前置条件项),主要,仅揭示三类。
【交付部署】,同样按规范流程进行交付,且记录各阶段的交付日志,以便问题溯源和历史记录翻阅。
【实现交付】之后,跳转到数据库治理拓扑主页
到此咱们就实现了 MGR 的图形化交付,并可直观的看到拓扑状态,和对应的事务执行状况等信息。感觉怎么样?
三、DBA 运维中集体感觉实用的 3 点
1、拓扑绘制和可操作性
【拓扑作用】DBA 能够间接基于拓扑图查看以后数据库节点运行状态、复制提早期待、实例角色信息,同时能够基于拓扑做 MGR 的节点切换,服务器启停等操作,直观的拓扑构造,和状态信息,以及启停操作按钮,用起来很惬意。
操作示例如在拓扑上执行【重启实例】,所有的操作均记录日志,保障操作工夫、工作状态、操作暂停、终止和重试,做到操作有记录,可查问,避免误操作和随便变更操作。
历史操作记录
2、多视角监控清晰直观
GreatADM 提供了实时的集群状态监控和治理性能。能够通过 GreatADM 查看集群状态、执行数据同步、进行主从切换等操作。【实例所在主机负载实时动静更新】
【实例复制概览】全览实例状态,以及提早状况,并反对在线扩缩,以及节点操作
【实例负载】针对实例的实时会话信息,以后业务或者某一阶段的忙碌水平,实例负载尽收眼底。
【负载趋势】另外对 DBA 来说的主机层面的资源用量和趋势,当初独立一个面板,间接全局统计数据增长趋势图,并给出资源用量评估,直观且高效。解决了做评估无根据或须要人工命令行统计,或者表格比对人工绘图的耗时耗力的问题。
【多维度监控】在监控告警中,提供 3 个维度的视角,数据库架构全局维度、单实例节点维度、主机维度来进行全方位监控。做不同维度按需监控,按需开关,按需分屏展现的可操作性和灵活性。
【自定义监控】基于对立模板化的面板之外,同时兼顾用户想自定义监控面板的诉求,GreatADM 做了展现面板的可配置性改良。将局部通用能力通用规范,以敌对的 web 页面组织起来,让监控的 dashboard 可按用户需要自助定制,尊重不同业务库级差异性,而差异化监控的诉求。
3、基线参数和一键修复
GreatADM 提供基线参数模板的校验,以及变更参数历史的记录,和一键修复性能,这大大降低了 DBA 在保护数据库过程中,因手动变更参数之后未将参数固定写入到配置导致的失落,忘记等问题。集体感觉对 DBA 比拟实用的性能。参数变更可按需利用不同节点,且反对差异化配置。
针对不同节点的参数,基于参数基线做变更比对
及时发现参数差别,并反对一键修改,这终局了 DBA 在一对多的数据库运维治理中,不同业务数据库的参数变更历史,全靠记忆或者现场搜寻、现场查看 cnf 要便捷高效的多,且不易出错,相当实用。
这是目前集体应用过程中感觉比拟不错的几个点。
四、内容总结
通过 GreatADM 创立 MGR 的过程,能够看到 GreatADM 从一键脚本装置、再到创立 MGR 架构时主机、软件包治理、参数模板、环境预检、到实现,齐全是流程化、模板化、规范化的交付。特地是在国产化的背景下,版本差别交付适配难、运维治理频踩坑、告警音讯策略固化,各类告警无聚合压抑、巡检诊断内容价值低廉、只有备份能力,复原全靠人工,跨机房灾备无奈兼顾治理等问题。GreatADM 针对上述问题一一击破,使用户在面临多样化环境中,治理更加标准、直观、高效便捷。GreatADM 就是联合局部金融和运营商公有国产化交付场景下,打造的一款全方位、多场景的笼罩的数据库治理平台产品。
对于用户而言,GreatADM 提供了常见业务场景中,数据库标准化交付、规范化扩缩变更操作、日常监控治理、以及运维历史可溯源的能力,为业务的安稳运行保驾护航。
对于 DBA 而言,在一对多的数据库架构治理中,抉择适合的工具,适合的平台能力使工作更高效,解决问题更不便,能力保障数据库安稳运行,缩小 DBA 人工治理老本,升高定位问题的门槛,而 GreatADM 为 DBA 提供了一种全新的体验。
如果大家有什么问题或文中有形容谬误,欢送指出,大家能够随时留言,感激大家浏览。
Enjoy GreatSQL :)
## 对于 GreatSQL
GreatSQL 是实用于金融级利用的国内自主开源数据库,具备高性能、高牢靠、高易用性、高平安等多个外围个性,能够作为 MySQL 或 Percona Server 的可选替换,用于线上生产环境,且完全免费并兼容 MySQL 或 Percona Server。
相干链接:GreatSQL 社区 Gitee GitHub Bilibili
GreatSQL 社区:
社区博客有奖征稿详情:https://greatsql.cn/thread-100-1-1.html
技术交换群:
微信:扫码增加
GreatSQL 社区助手
微信好友,发送验证信息加群
。