ModaHub魔搭社区:配置、启动 Prometheus

目录

配置、启动 Prometheus

安装 Prometheus

配置、启动 Prometheus

配置 Alertmanager

需要报警的事件

配置步骤

常见问题


配置、启动 Prometheus

本页面介绍如何配置、启用 Prometheus 搜集 Milvus 监控指标,以及如何将 Alertmanager 连接到 Prometheus 实现数据可视化的展示和报警机制。

安装 Prometheus

  1. 下载 Prometheus 二进制文件的压缩包。
  2. 确保 Prometheus 已经成功安装:
$ prometheus --version

你可以将 Prometheus 的路径添加到 PATH,以便在任意 Shell 上都能快速启动 Prometheus。

配置、启动 Prometheus

  1. 启动 Pushgateway:
  2. server_config.yaml 中开启 Prometheus 监控,并设置 Pushgateway 的地址和端口号。
  3. 下载 Milvus Prometheus 配置文件:
  4. 下载 Milvus 报警规则文件 到 Prometheus 根目录:
  5. 根据实际需求编辑 Prometheus 配置文件:
    • global:配置 scrape_interval 和 evaluation_interval 等参数。
  1. 启动 Prometheus:

启动 Prometheus 后,你可以在 Prometheus 界面上配置 Milvus 提供的监控指标。详见:Milvus 监控指标

 

配置 Alertmanager

需要报警的事件

积极的监控帮助及早发现问题,但创建报警规则以便在出现突发事件时触发用户通知也非常有必要。

以下主要介绍需要创建报警规则的事件。

服务器宕机

  • 报警规则:当 Milvus 服务器宕机时发送报警信息。
  • 如何判断:当 Milvus 服务器宕机时,监控仪表盘上各个指标会显示 No Data

CPU/GPU 温度过高

  • 报警规则:当 CPU/GPU 温度超过 80 摄氏度时发送报警信息。
  • 如何判断:查看监控仪表盘上的 CPU TemperatureGPU Temperature 两个指标。

配置步骤

  1. 下载 Alertmanager 二进制文件的压缩包。
  2. 确保 Alertmanager 已经成功安装:
  3. 根据 配置 Alertmanager 创建配置文件 alertmanager.yml,指定接受报警通知的邮箱或微信账号,并将配置文件添加到 Alertmanager 根目录下。
  4. 启动 Alertmanager 服务并指定配置文件:
  5. 通过浏览器登录 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


http://www.niftyadmin.cn/n/758495.html

相关文章

使用Json让Java和C#沟通的方法

使用Json让Java和C#沟通的方法 原文:使用Json让Java和C#沟通的方法最近很忙啊&#xff0c;新项目下来了&#xff0c;都没时间写博客了。频率降低点&#xff0c;但不能不总结跟大家分享啊。 我们在项目里经常要涉及到各模块间的通信&#xff0c;这其中又不可避免要碰到各类语言间…

g++支持C++11标准

让g支持C11标准有几种方法&#xff1a; 在预处理语句中加入&#xff1a; #pragma GCC diagnostic error "-stdc11" 编译时使用如下语句&#xff1a; g -stdc11 -o test test.cpp 起别名&#xff1a; alias g11"g -stdc11"

Ubuntu 16.04 配置JDK

配置系统环境变量 sudo gedit /etc/environment 加入以下内容 export CLASSPATH.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export JAVA_HOME/usr/java/jdk1.8.0_162 修改PATH&#xff0c;在最后加入&#xff08;注意用引号分隔&#xff09; $JAVA_HOME/bin 修改完成后保存并关…

VirtualBox设置共享文件夹和镜像访问的方法

http://jingyan.baidu.com/article/ca00d56c9766dbe99febcf6c.html 设置好共享后&#xff0c;在虚拟机里面&#xff0c;网上邻居点右键->映射网络驱动器->文件夹的“浏览”&#xff0c;打开共享的文件夹即可。转载于:https://www.cnblogs.com/ycdx2001/p/3775314.html

Hibernate之嵌套组件映射

Hibernate允许嵌套组件&#xff0c;比如&#xff1a; 进行如下的测试&#xff1a; Good.java&#xff1a; import javax.persistence.Embeddable;Embeddable public class Good {private String name;private String model;private double price;public String getName() …

6.9 IResourceChangeListener的应用

http://blog.csdn.net/a570056568/article/details/6152961 IResourceChangeListener是一个资源改变的监听器&#xff0c;当工作区中有资源改变&#xff08;三种状况&#xff1a;添加、删除、修改&#xff09;就会触发它里面的函数public void resourceChanged(IResourceChange…

Hibernate之嵌套集合映射

Hibernate不允许在使用 Embeddable 注解标记的类中使用集合映射&#xff0c;会产生如下异常&#xff1a; Exception in thread "main" org.hibernate.AnnotationException: OneToMany, ManyToMany or ElementCollection cannot be used inside an Embeddable that i…

每天一个小算法(4)----在O(1)时间删除指定结点

O(1)时间内删除结点的思路只能是复制该结点下一个结点的数据&#xff0c;然后删除该结点的下一个结点&#xff0c;来等效删除此结点。 需要注意的地方是删除头结点和尾结点的处理。 1 #include <stdio.h>2 #include <time.h>3 #include <stdlib.h>4 typedef …