栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Prometheus 快速入门-01

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Prometheus 快速入门-01

Prometheus 是什么

Prometheus 是 SoundCloud 公司开源的系统监控告警工具。2016 年,继 k8s 后,作为第二个托管项目加入了云原生计算基金会。这个项目拥有着非常活跃的开发者和用户社区,随着云原生和 k8s的推广,越来越多的公司的运维都是使用 Prometheus + Grafana(可视化) 的这一套。

Prometheus 以时序数据的形式收集和存储其指标,同时支持添加自定义 label 的可选键值对

监控对象
  1. 硬件状态:电源状态、CPU 状态、机器温度、风扇状态…
  2. 服务器基础:CPU,内存,磁盘,网络 使用情况
  3. 数据库: MySQL, ES …
  4. 中间件:Nginx, MQ…
  5. 应用:QPS,接口延时,线程数…
Prometheus 优势

其他方案

  • Zabbix: 1998 年诞生… 属于传统主机监控,主要用于物理主机,交换机,网络等监控
  • Graphite: 专注于两件事,存储时序数据, 可视化数据, 其它功能都要安装插件实现, Prometheus 功能丰富:趋势,查询…
  • InfluxDB: 时序数据库… 监控部分自己搞,prometheus 不仅仅局限于存储时序数据
  • Nagios:90 年代诞生…
  • Sensu :可以看作 Nagiosde 的升级版本
  • Open-falcon:小米开源,社区活跃度一般

优势

  • 云原生支持好,K8s 和 Etcd 等一列项目都提供了对 Prometheus 的原生支持,是目前容器监控最流行的方案
  • Prometheus 属于一站式监控告警平台,依赖少,功能齐全。
  • 多维数据模型,聚合统计更方便
  • 强大的查询语句

劣势

  • 数据存储扩展性不够好
Prometheus 架构
  1. Sever:抓取(pull 模式)和存储时序数据,提供查询接口
  2. Exporter:服务监控上报数据,如 MySQL、Redis、Node Exporter
  3. alertManger:告警通知
  4. Pushgetaway: 支持主动向 Sever push 数据,适用于生命周期短暂的批处理的任务。

安装与使用

安装 官方教程

走过的一个坑

  • Prometheus 使用 docker 安装,node exporter 在本机跑,网络不通。建议不使用 docker 安装

前提

  • mac
  • 安装 prometheus。能打开 http://localhost:9090/
  • 安装 node export。能打开 http://localhost:9100/
  • 配置好了 prometheus.yml(配置 node exporter 地址,server 通过这个地址 pull 数据)。http://localhost:9090/ 选择 targes,出现两个,如下图即安装成功。

默认有两个 label: job和instance,

  • job 指的监控对象,这里 node exporter 是官方提供的监控机器状态的
  • instance 是监控服务地址,一个 job 一般对应多个 instance。

node exporter 提供的监控数据都以 node_开头,下图是 Prometheus 页面中展示的 cpu 负载情况看板。prometheus 提供的可视化功能比较弱,一般搭载 Grafana 使用

  • 安装 Grafana 。能打开 http://localhost:3000/
  • 选择 prometheus 作为数据源

  • Add panel, 如下图,我在 Grafana 中增加了 cpu_load 的监控看板,可视化功能强大不少

  • 手动添加看板比较麻烦,可以使用 Grafana 模版库

    1. 模版库中搜索 node_exporter, 复制 ID

    2. 在 Grafana 界面操作: + -> import -> 粘贴 ID -> 选择导入的 prometheus 数据源

    一个监控主机数据的完整监控看板就诞生了!

总结
  1. 介绍了 Prometheus 是什么,它流行的原因
  2. 介绍了 Prometheus 的总体架构
  3. 利用 Prometheus、Grafana 、node exporter 展示了快速搭建一个监控看板的过程
下期预告
  1. Prometheus 数据类型介绍
  2. Prometheus 查询语句 PromQL 介绍
参考
  1. https://prometheus.io/
  2. https://www.cncf.io/
  3. https://songjiayang.gitbooks.io/prometheus/content/concepts/data-model.html
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/644095.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号