使用准备

    • 使用登录到数据库宿主机上的Linux用户,需要将$GAUSSHOME/bin添加到PATH环境变量中,即能够直接运行gsql、gs_guc、gs_ctl等数据库运维工具。
    • Python版本建议为Python3.6及以上,且运行环境中已经安装相应依赖,并能够正常启动调优程序。
    • 本工具由Agent和Detector组成,Agent和Detector之间通过’http’或者’https’方式传递数据,因此需要保证Agent服务器和Detector服务器之间能够正常通信。
    • Detector模块运行server和monitor服务, 需要分别启动。

    图1 anomaly_detection结构图

    anomaly_detection是一个独立于数据库内核之外的工具,其结构如图1所示,anomaly_detection主要由agent和detector模块组成:

    • agent:数据代理模块,由Source、Channel以及Sink组成。部署在数据库环境上的,用于采集数据库中的指标,并通过http或者https方式将其传送给远端检测器模块。
    • detector:检测器模块,负责收集Agent推送的数据并存储,同时该模块基于时序预测和异常检测等算法对数据库指标进行监控和异常检测,并以日志的形式通知用户。
    1. 切换到anomaly_detection目录下。对于openGauss社区代码来说,该路径在openGauss-server/src/gausskernel/dbmind/tools/anomaly_detection. 对于已经安装的数据库系统,则该源代码路径为 $GAUSSHOME/bin/dbmind/anomaly_detection.

    anomaly_detection 在运行前需要加载a-detection.confmetric_task.conf两个配置文件,, 可以通过** python main.py –help **命令查看配置文件路径:

    metric_task.conf:该配置文件包含所有监控指标的参数,以disk_space为例: