产品架构
GreatADM系统中主要包含7个模块, 分别为
- 管理 Agent(Management Agent)
- 监控服务(Monitor Service)
- 告警服务(Alert Service)
- 日志服务(Logs Service)
- 管理服务(Management Service)
- 管理控制台(Management Console)
- 元信息数据库(Metadata Repository)
其中
- ADM管理服务和 ADM-Agent 是 ADM 组件
- 元信息数据库、监控服务、日志服务、告警服务 是 ADM 依赖的数据库和服务。
- 告警通道是 ADM 集成的外部组件,ADM 会以客户端调用的方式推送告警信息到告警通道。
1.1.1 管理 Agent(Management Agent)
为实现对管理目标的管理能力,ADM 需要在管理的每台主机上安装 Agent(含物理主机和虚拟主机等),它们用于控制这些目标主机的启停、远程执行任务和收集指标等,然后将可用性、指标和任务状态等详细信息提供给 ADM 管理服务。 这些Agent程序的部署运维由 ADM 管理服务的主机管理模块自动完成, 共有以下3个agent
- exporter: 负责收集主机监控数据
- log collect: 负责收集操作系统和数据库节点的运行日志
- dbinit: 负责执行远程任务
1.1.2 监控服务(Monitor Service)
用于聚合并存储 ADM 采集的监控数据。它存放了主机、数据库、会话、SQL 等性能指标、提供原始数据用于统计和诊断信息等。
1.1.3 告警服务(Alert Service)
帮助监控服务删除重复的警告数据, 提供告警消息的分组、抑制、静默和管理警报规则, 并将告警消息路由到正确的接收器, 例如电子邮件、syslog、微信等。
1.1.4 日志服务(Logs Service)
用于聚合并存储 ADM 采集的日志数据。它存放了操作系统日志、数据库实例运行日志,使用标签来作为索引,通过标签既可以查询日志的内容也可以查询到日志的监控数据。 ···
1.1.5 管理服务(Management Service)
基于 Python 的应用程序。它与管理 Agent 和元信息数据库通信,以便收集和存储相关远程主机上的信息。此外,管理服务还可以与 GreatDB 数据库通信用于远程执行对 GreatDB 的运维命令。
1.1.6 管理控制台(Management Console)
提供用于访问、监控和管理整个数据库数据库的 Web 界面。管理控制台还提供了一些有用的数据大盘,方便用户登录后直接查看重要信息。
1.1.7 元信息数据库(Metadata Repository)
用于存储管理 Agent 程序收集到的所有信息。元信息数据库存放目标主机、数据库数据库、数据库实例、数据库用户、调度任务、数据库配置模板和软件版本等信息。 单机部署时元信息数据库不是必须的, HA部署时,在安装ADM前,要求元信息库已经存在。
1.1.8 告警通道
ADM 管理服务在监控和巡检 ADM 所管理的目标数据库过程中,产生的告警通过告警通道推送出去。ADM 支持 HTTP 和Syslog通道。ADM 部署完成后,管理员可以在管理控制台上对告警通道进行管理。




