探索GreatADM:图形化部署MGR的全新体验

摘要:

在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,需要修改默认的初始密码,用户账号可以是邮箱地址、可以是用户名。

file

默认平台超管为:用户名admadm@greatdb.com两种可以登录,如下

file

二、使用GreatADM部署GreatSQL MGR

GreatADM管理平台默认对MySQL数据库架构的4大分类,并且支持用户已自建的MySQL5.7/8.0的统一纳管到平台和复制拓扑自动探测和拓扑绘制。支持GreatDB、GreatSQL、Percona Server、MySQL类型的数据库类型。

file

A、GreatDBRouter三节点:

对应万里GreatDB数据库企业版高可用解决方案

B、PAXOS高可用复制:

支持MGR、以及GreatSQL MGR+VIP方案

C、主备多副本:

传统的主从复制、双主、双主一从、多主多从等方案

D、单实例节点:

提供批量交付多个单点场景,以及实例的一键批量诊断、实例巡检报告生成等服务,同时支持单节点升级为其他高可用架构。

接来下我们开始安装MGR,本次我们选用GreatSQL版本来部署MGR,GreatSQL是适用于金融级应用的国内自主开源数据库,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。

1.添加主机信息

file

自动识别操作系统版本和CPU平台信息,可以按需增加机房、机架、机柜等信息。GreatADM同时支持资源池方式的数据库部署方式,可将多台物理主机的cpu、内存、磁盘标准化为一个计算资源池,通过从资源池中按需分配数据库实例的算力,以提高物理主机的资源利用效率,这点倒是挺不错。这个我们下期再做介绍。

file

2.调整参数模板、确认软件包

查看内置的参数模板

file

当然用户可以按需上传参数,可以绑定项目名称,作为私有项目独享,也可以作为公共模板多项目共用

file 本次我们调整内置的参数模板,同时可按需【添加参数】暂时调整如下2项innodb_buffer_pool_size、innodb_buffer_pool_instances这里的这个参数模板,以及参数搜索框不错,可以快速模糊匹配参数

file

上传数据库二进制包,自动识别软件包的属性信息。

file

这里我们上传了GreatSQL社区版本,还有XtraBackup备份工具。当然GreatADM在安装时,会自动搜索同目录路径是否存在数据库包,如果有的话会自动识别加载。这点确实省去不少通过web浏览器上传软件包的时间。到此,我们部署数据库的必要条件都已经具备,下一步准备执行MGR的图形化安装。

3.数据库安装部署

选择Paxos高可用部署方案,因MGR采用Paxos协议,所以外部我们选择Paxos架构,物理主机部署方式进行。选择对应的数据库版本、备份工具、参数模板、并填写默认的数据库名称、管理员账号密码等。

进行三阶段流程:

1、基础配置

2、系统预检查

3、执行交付部署

file

【安装前配置】如下:

file

【主机预检查】,检查项如主机时区时间、swap交换分区、安全策略selinux、分区挂载、系统资源限制、内核参数等共计近20项预检内容,均为历史经验积累的转化。

file

当不满足预检内置条件时,会弹框提醒,按级别分为必检项(必须满足前置条件项),次要,仅提醒三类。

file

【交付部署】,同样按标准流程进行交付,且记录各阶段的交付日志,以便问题溯源和历史记录翻阅。

file

【完成交付】之后,跳转到数据库管理拓扑主页

file

到此我们就完成了MGR的图形化交付,并可直观的看到拓扑状态,和对应的事务执行情况等信息。感觉怎么样?

三、DBA运维中个人觉得实用的3点

1、拓扑绘制和可操作性

【拓扑作用】DBA可以直接基于拓扑图查看当前数据库节点运行状态、复制延迟等待、实例角色信息,同时可以基于拓扑做MGR的节点切换,服务器启停等操作,直观的拓扑结构,和状态信息,以及启停操作按钮,用起来很惬意。

file

操作示例如在拓扑上执行【重启实例】,所有的操作均记录日志,保证操作时间、任务状态、操作暂停、终止和重试,做到操作有记录,可查询,防止误操作和随意变更操作。

file

历史操作记录

file

2、多视角监控清晰直观

GreatADM提供了实时的集群状态监控和管理功能。可以通过GreatADM查看集群状态、执行数据同步、进行主从切换等操作。【实例所在主机负载实时动态更新】

file

【实例复制概览】全览实例状态,以及延迟情况,并支持在线扩缩,以及节点操作

file

【实例负载】针对实例的实时会话信息,当前业务或者某一阶段的繁忙程度,实例负载尽收眼底。

file

【负载趋势】另外对DBA来说的主机层面的资源用量和趋势,现在独立一个面板,直接全局统计数据增长趋势图,并给出资源用量评估,直观且高效。解决了做评估无依据或需要人工命令行统计,或者表格比对人工绘图的耗时耗力的问题。

file

【多维度监控】在监控告警中,提供3个维度的视角,数据库架构全局维度、单实例节点维度、主机维度来进行全方位监控。做不同维度按需监控,按需开关,按需分屏展示的可操作性和灵活性。

file

【自定义监控】基于统一模板化的面板之外,同时兼顾用户想自定义监控面板的诉求,GreatADM做了展示面板的可配置性改进。将部分通用能力通用标准,以友好的web页面组织起来,让监控的dashboard可按用户需求自助定制,尊重不同业务库级差异性,而差异化监控的诉求。

file

3、基线参数和一键修复

GreatADM提供基线参数模板的校验,以及变更参数历史的记录,和一键修复功能,这大大降低了DBA在维护数据库过程中,因手动变更参数之后未将参数固定写入到配置导致的丢失,遗忘等问题。个人觉得对DBA比较实用的功能。参数变更可按需应用不同节点,且支持差异化配置。

file

针对不同节点的参数,基于参数基线做变更比对

file

及时发现参数差异,并支持一键修正,这结局了DBA在一对多的数据库运维管理中,不同业务数据库的参数变更历史,全靠记忆或者现场搜索、现场查看cnf要便捷高效的多,且不易出错,相当实用。

file

这是目前个人使用过程中觉得比较不错的几个点。

四、内容总结

通过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社区:

image

社区有奖建议反馈: https://greatsql.cn/thread-54-1-1.html

社区博客有奖征稿详情: https://greatsql.cn/thread-100-1-1.html

(对文章有疑问或者有独到见解都可以去社区官网提出或分享哦~)

技术交流群:

微信&QQ群:

QQ群:533341697

微信群:添加GreatSQL社区助手(微信号:wanlidbc )好友,待社区助手拉您进群。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/101882.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue 学习笔记 简单实验

1.代码(html) <script src"https://unpkg.com/vuenext" rel"external nofollow" ></script> <div id"counter">Counter: {{ counter }} </div> <script> const Counter {data() {return {counter: 5}} } Vue.cr…

二、pikachu之SQL注入(2)

文章目录 1、delete注入2、http header注入3、布尔盲注4、时间盲注 4、宽字节注入 1、delete注入 &#xff08;1&#xff09;寻找传参页面&#xff0c;在删除留言的时候&#xff0c;发现是get传参&#xff1b; &#xff08;2&#xff09;判断是否存在注入点&#xff0c;命令&…

Shell语法揭秘:深入探讨常见Linux Shell之间的语法转换

深入探讨常见Linux Shell之间的语法转换 一、引言二、Linux常用Shell&#xff1a;Bash、Zsh、Ksh、Csh、Tcsh和Fish的简介2.1、Bash、Zsh、Ksh、Csh、Tcsh和Fish的特点和用途2.2、语法差异是常见Shell之间的主要区别 三、变量和环境设置的语法差异3.1、变量定义和使用的不同语法…

Redis——set类型详解

概要 Set&#xff08;集合&#xff09;&#xff0c;将一些有关联的数据放到一起&#xff0c;集合中的元素是无序的&#xff0c;并且集合中的元素是不能重复的 之前介绍的list就是有序的&#xff0c;对于列表来说[1, 2, 3] 和 [2, 1, 3]是两个不同的列表&#xff0c;而对于集合…

GraphScope,开源图数据分析引擎的领航者

文章首发地址 GraphScope是一个开源的大规模图数据分析引擎&#xff0c;由Aliyun、阿里巴巴集团和华为公司共同开发。GraphScope旨在为大规模图数据处理和分析提供高性能、高效率的解决方案。 Github地址&#xff1a; https://github.com/alibaba/GraphScope GraphScope 的重…

开发第一个gPRC的开发

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

网络综合布线实训室方案(2023版)

综合布线实训室概述 随着智慧城市的蓬勃发展,人工智能、物联网、云计算、大数据等新兴行业也随之崛起,网络布线系统作为现代智慧城市、智慧社区、智能建筑、智能家居、智能工厂和现代服务业的基础设施和神经网络,发挥着重要作用。实践表明,网络系统故障的70%发生在布线系统,直接…

苹果手机桌面APP带云图标有个箭头,过一段时间经常要下载才能使用APP

环境&#xff1a; IPhone 11 IOS13.0 问题描述&#xff1a; 苹果手机桌面APP带云图标有个箭头&#xff0c;过一段时间经常要下载才能使用APP 解决方案&#xff1a; 1.打开设置&#xff0c;往下找到iTunes Store与App Store 2.找到下面卸载未使用的APP 关闭按钮

最优的家电设备交互方式是什么?详解家电设备交互的演进之旅

家电&#xff0c;在人们的日常生活中扮演着不可或缺的角色&#xff0c;也是提升人们幸福感的重要组成部分&#xff0c;那你了解家电的发展史吗&#xff1f; 70年代 结婚流行“四大件”&#xff1a;手表、自行车、缝纫机&#xff0c;收音机&#xff0c;合成“三转一响”。 80年…

问题描述:在Windows下没有预装ImageMagick工具

问题描述:在Windows下没有预装ImageMagick工具 # WInR输入cmd回车进入命令行,执行以下命令查看版本信息 magick --version没有预装ImageMagick工具 解决方案&#xff1a;下载安装ImageMagick 官网下载:ImageMagick-7.1.1-15-Q16-x64-dll.exe 下载之后&#xff0c;一路下一步…

MySQL表的约束

MySQL表的约束 约束的概念空属性默认值列描述zerofill主键自增长唯一键外键 约束的概念 在正式谈MySQL表的约束之前&#xff0c;我们先来简单理解一下约束这个概念; 约束&#xff1a;意思是指带有束缚、限制、管束等意思&#xff1b; 大白话就是说:规定了那些事情你不能干&…

如何大幅提高遥感影像分辨率(Python+MATLAB)

前言&#xff1a; 算法&#xff1a;NSCT算法&#xff08;非下采样变换&#xff09; 数据&#xff1a;Landsat8 OLI 遥感图像数据 编程平台&#xff1a;MATLABPython 论文参考&#xff1a;毛克.一种快速的全色和多光谱图像融合算法[J].测绘科学,2016,41(01):151-15398.DOI:10.1…

k8s deployment创建pod流程图

参考 k8s 创建pod和deployment的流程 - SoulChild随笔记

TCP的可靠性之道:确认重传和流量控制

TCP 全称为 Transmission Control Protocol&#xff08;传输控制协议&#xff09;&#xff0c;是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff0c;其中可靠性是相对于其他传输协议的优势点。TCP 为了确保数据传输的可靠性主要做了以下几点&#xff1a; 发送确…

【vue3+ts项目】配置husky+配置commitlint

上一篇文章中配置了eslint校验代码工具 【vue3ts项目】配置eslint校验代码工具&#xff0c;eslintprettierstylelint 1、配置husky 每次手动执行命令才能格式化代码&#xff0c;如果有人没有格式化就提交到远程仓库&#xff0c;这个规范就起不到作用了&#xff0c;所有需要强…

Java日志框架概览

SLF4J 提供统一的日志门面API&#xff0c;即图中紫色部分&#xff0c;实现中立的日志记录API 桥接功能&#xff0c;蓝色部分&#xff0c;把各种日志框架API&#xff08;绿色部分&#xff09;桥接到SLF4J API。这样即便你的程序中使用各种日志API记录日志&#xff0c;最终都可桥…

带你了解SpringBoot---开启Durid 监控

文章目录 数据库操作--开启Durid 监控整合Druid 到Spring-Boot官方文档基本介绍Durid 基本使用代码实现 Durid 监控功能-SQL 监控需求:SQL 监控数据SQL 监控数据-测试页面 Durid 监控功能-Web 关联监控需求:Web 关联监控配置-Web 应用、URI 监控重启项目 Durid 监控功能-SQL 防…

进程调度和进程切换——《王道考研》

一、王道书咋说 二、chatgpt咋说 进程调度和进程切换是多道程序操作系统中两个关键的概念&#xff0c;它们在处理多个进程时起着不同的作用。 2.1进程调度是指&#xff1a; 操作系统根据一定的调度算法&#xff0c;从就绪态的进程队列中选择一个进程来占用CPU资源&#xff0…

最新消息:谷歌将在Chromebook上运用UWB技术,无线通信更上一层

超宽带&#xff08;UWB&#xff09;技术是一种创新的短距离无线通信技术&#xff0c;具有高速数据传输和精确定位物体位置的优势。尽管该技术已经存在一段时间&#xff0c;但最近开始广泛应用于各种设备中。据最新报道&#xff0c;Pixel Watch 2可能会搭载UWB模块&#xff0c;这…

商城-学习整理-高级-性能压测缓存问题(十一)

目录 一、基本介绍1、性能指标2、JMeter1、JMeter 安装2、JMeter 压测示例1、添加线程组2、添加 HTTP 请求3、添加监听器4、启动压测&查看分析结果 3、JMeter Address Already in use 错误解决 二、性能监控1、jvm 内存模型2、堆3、jconsole 与 jvisualvm1、jvisualvm 能干…