监控系统 Prometheus

1.什么是prometheus

Prometheus(简称 Prom) 是新一代的监控系统,配置简单却灵活,对容器、微服务等支持良好,它前身是 SoundCloud 的告警工具包。从 2012 年开始,许多公司和组织开始使用 Prometheus。该项目的开发人员和用户社区非常活跃,越来越多的开发人员和用户参与到该项目中。目前它是一个独立的开源项目,且不依赖于任何公司。为了强调这点和明确该项目治理结构,Prometheus 在 2016 年继Kurberntes 之后,加入了 Cloud Native Computing Foundation

2.特征

  • 多维度数据模型
  • 灵活的查询语言
  • 不依赖任何分布式存储
  • 常见方式是通过拉取方式采集数据
  • 也可通过中间网关支持推送方式采集数据
  • 通过服务发现或者静态配置来发现监控目标
  • 支持多种图形界面展示方式

3.架构

4.安装

wget http://github.com/prometheus/prometheus/releases/download/v2.9.2/prometheus-2.9.2.linux-amd64.tar.gz

执行 prometheus 命令的时候可以通过参数 --config.file 来指定配置文件路径,默认会使用同目录下的 prometheus.yml 文件

下面会逐一讲解 Prometheus 的核心配置,示例中用到的各种占位符包括:

<boolean>: 布尔值,true 或 false
<duration>: 持续时间,格式符合正则表达式 [0-9]+(ms[smhdwy])
<labelname>: 标签名,格式符合正则表达式 [a-zA-Z_][a-zA-Z0-9_]*
<labelvalue>: 标签值,可以包含任意 unicode 字符
<filename>: 文件名,任意有效的文件路径
<host>: 主机,可以是主机名或 IP,后面可跟端口号
<path>: URL 路径
<scheme>: 协议,http 或 http
<string>: 字符串
<secret>: 密钥,比如密码
<tmpl_string>: 模板字符串,里面包含需要展开的变量

配置文件格式为 YAML,下面是一个配置文件示例:


监控系统 Prometheus
http://www.jcwit.com/article/173/
作者
Carlos
发布于
2019年5月21日
许可协议