目录
配置、启动 Prometheus
安装 Prometheus
配置、启动 Prometheus
配置 Alertmanager
需要报警的事件
配置步骤
常见问题
配置、启动 Prometheus
本页面介绍如何配置、启用 Prometheus 搜集 Milvus 监控指标,以及如何将 Alertmanager 连接到 Prometheus 实现数据可视化的展示和报警机制。
安装 Prometheus
- 下载 Prometheus 二进制文件的压缩包。
- 确保 Prometheus 已经成功安装:
$ prometheus --version
你可以将 Prometheus 的路径添加到 PATH,以便在任意 Shell 上都能快速启动 Prometheus。
配置、启动 Prometheus
- 启动 Pushgateway:
- 在 server_config.yaml 中开启 Prometheus 监控,并设置 Pushgateway 的地址和端口号。
- 下载 Milvus Prometheus 配置文件:
- 下载 Milvus 报警规则文件 到 Prometheus 根目录:
- 根据实际需求编辑 Prometheus 配置文件:
-
- global:配置 scrape_interval 和 evaluation_interval 等参数。
- 启动 Prometheus:
启动 Prometheus 后,你可以在 Prometheus 界面上配置 Milvus 提供的监控指标。详见:Milvus 监控指标。
配置 Alertmanager
需要报警的事件
积极的监控帮助及早发现问题,但创建报警规则以便在出现突发事件时触发用户通知也非常有必要。
以下主要介绍需要创建报警规则的事件。
服务器宕机
- 报警规则:当 Milvus 服务器宕机时发送报警信息。
- 如何判断:当 Milvus 服务器宕机时,监控仪表盘上各个指标会显示 No Data。
CPU/GPU 温度过高
- 报警规则:当 CPU/GPU 温度超过 80 摄氏度时发送报警信息。
- 如何判断:查看监控仪表盘上的 CPU Temperature 和 GPU Temperature 两个指标。
配置步骤
- 下载 Alertmanager 二进制文件的压缩包。
- 确保 Alertmanager 已经成功安装:
- 根据 配置 Alertmanager 创建配置文件 alertmanager.yml,指定接受报警通知的邮箱或微信账号,并将配置文件添加到 Alertmanager 根目录下。
- 启动 Alertmanager 服务并指定配置文件:
- 通过浏览器登录 http://<提供 Alertmanager 服务的主机>:9093,进入 Alertmanager 用户交互页面。你可以在此定义 报警的条件。
常见问题
在多个 Milvus 节点接入 Pushgateway 的情况下如何进行区分数据来源?
在 prometheus.yaml 里面加一个 Prometheus 的实例就可以。最后在 Prometheus 或者 Grafana 里面显示监控的时候,会指明数据是来自哪个 Milvus 实例。
./pushgateway
必须在启动 Milvus Server 之前启动 Pushgateway 进程。
metric: enable: true # 将值设为 true 以开启 Prometheus 监控。 address: 127.0.0.1 # 设置 Pushgateway 的 IP 地址。 port: 9091 # 设置 Pushgateway 的端口号。
如果是在 Kubernetes 集群中,你需要为每个需要监控的 Milvus 节点配置 server_config.yaml。
$ wget https://raw.githubusercontent.com/milvus-io/docs/master/v1.1.0/assets/monitoring/prometheus.yml \ -O prometheus.yml
wget -P rules https://raw.githubusercontent.com/milvus-io/docs/master/v1.1.0/assets/monitoring/alert_rules.yml
global: scrape_interval: 2s # 设置抓取时间间隔为 2s。 evaluation_interval: 2s # 设置评估时间间隔为 2s。
-
- alerting:设置 Alertmanager 的地址和端口。
- rule_files:设置报警规则文件。
- scrape_configs:设置抓取数据的 job_name 及 targets 等信息。
关于 Prometheus 的高级配置和功能的详细信息请见 配置 Prometheus。
./prometheus --config.file=prometheus.yml
$ alertmanager --version
你可以将 Alertmanager 的路径并添加到 PATH,以便在任意 Shell 上都能快速启动 Alertmanager。
./alertmanager --config.file=alertmanager.yml