1-1 prometheus 概述

一、概述

二、特点

三、核心组件

四、基础架构

4.1 Prometheus 的主要模块包含

4.2 运行逻辑

五、Prometheus 与 Zabbix 的对比

六、总结


一、概述

1. 什么是prometheus?

  • 开源系统监控警报工具包
  • 受启发于Google的Brogmon监控系统(相似的Kubernetes是从Google的Brog系统演变而来)

2012年开始由前Google工程师在Soundcoud以开源软件的形式进行研发,并且于2015年期对外发布早期版本。2016年5月继Kubernetes之后成为第二个正式加入CNF基金会的项目,同年6月正式发布1.0版本,2017年底发布了基于全新存储层的2.0版本能更好地与容器平台、云平台配合。

二、特点

普罗米修斯的主要特点是:

  • 支持多维数据模型由指标名称和键值对标识的时间序列数据
  • 内置时间序列库 TSDB (Time Serices Database)
  • 支持 PromQL (Promethues Query Language),对数据的查询和分析、图形展示和监控告警
  • 不依赖分布式存储;单个服务器节点是自治的
  • 支持 HTTP 的拉取(pull)方式收集时间序列数据
  • 通过中间网关 Push gateway 推送时间序列
  • 通过 服务发现 或 静态配置 2种方式 发现目标
  • 支持多种可视化和仪表盘,如: grafana

三、核心组件

  • Prometheus Server:用于抓取数据和存储时序数据,还提供查询Alert Rule 配置管理

  • client libraries:用于检测应用程序代码的客户端

  • push gateway:用于批量,短期的监控数据的汇总节点,主要用于业务数据汇报

  • exporters收集监控样本数据,并以标准格式向 Prometheus 提供。例如: 收集服务器系统数的 node_exporter:收集 MySQL监控样本数据的是MySQLexporter 等等

  • alertmanager:用于告警通知管理

四、基础架构

4.1 Prometheus 的主要模块包含

  • Server
  • Exporters
  • Pushgateway
  • PromQL
  • Alertmanager
  • WebUl

4.2 运行逻辑

  1. Prometheus server 定期从静态配置的 targets 或者服务发现的 targets 拉取数据(Targets Prometheus采集Agent需要抓取的采)

  2. 当新拉取的数据大于配置内存缓存区的时候,Prometheus 会将数据持久化到磁盘(如果使用 remote storage 将持化到云端)

  3. Prometheus 可以配置 rules,然后定时查询数据,当条件触发的时候,会将 alerts 推送到配置的 Alertmanager.

  4. Alertmanager 收到警告的时候,可以根据配置 (163,钉钉等),聚合,去重,降噪,最后发送警告

  5. 可以使用APl, Prometheus Console 或者 Grafana 查询和聚合数据

五、Prometheus 与 Zabbix 的对比

ZabbixPrometheus(推荐)
定制化

难度很高

后端:C

界面:PHP

难度较低

后端:golang

界面:Grafana

集群规模单节点10万+(6.0)支持更大的集群规模,速度也更快
适合环境

更适合监控物理机

(物理主机,交换机,网络等监控)

更适合云环境

对OpenStack,Kubernetes有更好的集成

拓展性

难拓展

监控数据存储在关系型数据库内

如 MySQL很难从现有数据中扩展维度

难拓简单

监控数据存储在基于时间序列的数据库内,便于对已有数据进行新的聚合。十万级监控数据,Prometheus数据查询速率比Zabbix更快

安装

简单

zabbix-server 一个软件包中包括了所有的服务端功能

复杂

监控、告警和界面都分属于不同的组件

图形化界面比较成熟,界面上基本上能完成全部的配置操作界面相对较弱,很多配置需要修改配置文件
发展时间

更长

对于很多监控场景,都有现成的解决方案

2015年后开始快发展

发展时间短,但现在也非常的成熟

六、总结

  • prometheus,zabbix 都只是工具,监控思想才是最重要的

  • 物理机、硬件设备的监控推荐使用 Zabbix

  • docker容器,Kubernetes监控推荐用 Prometheus

  • 云服务器厂商自带有监控系统,有的监控不全面,也可以搭配zabbix和Prometheus来一起使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/176465.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Webpack打包图片-js-vue

文章目录 一、Webpack打包图片1.加载图片资源的准备2.认识asset module type3.asset module type的使用4.url-loader的limit效果 二、babel1.为什么需要babel2.babel命令行的使用3.babel插件的使用4.babel的预设preset5.babel-loader6.babel-preset 三、加载Vue文件1.编写App.v…

PHP连接SQLServer echo输出中文汉字显示乱码解决方法

1、查询结果有中文会显示乱码。 解决方法一&#xff08;较简单&#xff0c;建议使用&#xff09;&#xff1a; 在php文件最开头写上&#xff1a; header(Content-type: text/html; charsetUTF8); // UTF8不行改成GBK试试&#xff0c;与你保存的格式匹配 <?php header(&q…

回归算法|长短期记忆网络LSTM及其优化实现

本期文章将介绍LSTM的原理及其优化实现 序列数据有一个特点&#xff0c;即“没有曾经的过去则不存在当前的现状”&#xff0c;这类数据以时间为纽带&#xff0c;将无数个历史事件串联&#xff0c;构成了当前状态&#xff0c;这种时间构筑起来的事件前后依赖关系称其为时间依赖&…

正则表达式的使用实例

正则表达式的使用实例 1- 表示2- 实例 1- 表示 1, [:digit:] 表示0-9全部十个数字 //等价于 0123456789&#xff0c; 而不等价于[0123456789] 2, [[:digit:]] 表示任意一个数字 \{m,n\} 表示其前面的字符出现最少m次&#xff0c;最多n次的情况 \{3,\} 其前面的字符出…

泛积木-低代码 使用攻略

文档首发于 泛积木-低代码 使用攻略 我们以大纲的方式&#xff08;总体把握&#xff09;讲述如何高效、便捷使用 泛积木-低代码。 权限 首先说下权限&#xff0c;在 系统设置 / 权限设置 菜单内&#xff0c;我们可以新增调整项目内的权限&#xff0c;默认拥有管理员和成员两…

前后端配合实现按钮级操作权限控制

背景 公司项目需要做到按钮级权限限制&#xff0c;至此有了该文&#xff0c;如有错误&#xff0c;请联系博主指出&#xff0c;多多感谢。 角色配置前后端操作 首先最基本的角色配置&#xff0c;配置该类角色有哪些菜单以及那些菜单的哪些按钮权限 菜单及菜单按钮由前端维护&a…

企业 Tomcat 运维 部署tomcat反向代理集群

一、Tomcat 简介 Tomcat服务器是一个免费的开放源代码的Web应用服务器&#xff0c;属于轻量级应用服务器&#xff0c; Tomcat和Nginx、Apache(httpd)、Web服务器一样&#xff0c;具有处理HTML页面的功能不过Tomcat处理静态HTML的能力不如Nginx/Apache服务器 一个tomcat默认并…

Docker之docker-compose(介绍,安装及入门示例)

文章目录 一、docker-compose介绍Compose 中有两个重要的概念&#xff1a; 二、docker-compose安装三、docker-compose简单示例参考网址&#xff1a; 一、docker-compose介绍 Compose 项目是 Docker 官方的开源项目&#xff0c;负责实现对 Docker 容器集群的快速编排。 Compo…

前度开发面试题

面试题总结 vue页面跳转会经过两个钩子函数beforeEach、afterEach 组见守卫 beforeRouteEnter前置组见守卫 *beforeRouteUpdate更新之前 watch和computed区别 数据没有改变&#xff0c;则 computed 不会重新计算&#xff09;。若没改变&#xff0c;计算属性会立即返回之前缓…

网际协议IP

网际协议IP 一、IP地址 1、分类的IP地址 IP地址::{<网络号>,<主机号>} 2、无分类编址CIDR IP地址::{<网络前缀>,<主机号>} &#xff08;1&#xff09;网络前缀 ​ 与分类IP最大的区别就是网络前缀的位数n是不固定的&#xff0c;可以是0~32位。 ​ …

月入8K, 计算机专业应届女孩转行5G网络优化工程师,她说:这行请慎入

小C说&#xff0c;如果要用两个字描述23年计算机专业的就业心情&#xff0c;那就是“焦虑”&#xff1b;用三个字描述23年计算机专业的就业环境&#xff0c;那就是“卷麻了”。 得益于张雪峰老师的就业推荐计算机专业需求的日益减少&#xff0c;2023年&#xff0c;计算机专业成…

三、 链表

一、链表的定义 链表是一种动态数据结果&#xff0c;内存分配不是在创建链表时一次性完成的&#xff0c;每添加一个节点&#xff0c;分配一次内存&#xff0c;由于没有闲置的内存&#xff0c;链表的空间效率高于数组 二、定义单向链表 struct ListNode {int m_nValue;ListNo…

DevChat:VSCode中基于大模型的AI智能编程助手

#AI编程助手哪家好&#xff1f;DevChat“真”好用# 文章目录 1. 前言2. 安装2.1 注册新用户2.2 在VSCode中安装DevChat插件2.3 设置Access Key 3. 实战使用4. 总结 1. 前言 DevChat是由Merico公司精心打造的AI智能编程助手。它利用了最先进的大语言模型技术&#xff0c;像人类…

nodejs+vue智慧补助系统的设计与实现-计算机毕业设计

随着网络技术的不断发展&#xff0c;多媒体技术应用渐渐的出现在教育领域中&#xff0c;智慧补助系统已经成为教育发展的一个热门话题。 在众多网络开发技术中&#xff0c;nodejs是当前很热门的一种软件&#xff0c;因为它可以进行数据库操作及方便用户控制管理。 在各学校的教…

QML 创建 Web 混合应用

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 随着互联网的快速发展,Web 应用在各个领域中变得越来越流行。为了满足用户对多样化功能的需求,我们经常需要将 Web 技术和原生应用相结合,来创建混合应用程序。 混合应用程序:是一种应用程序开发方法,它…

k8s、pod

Pod k8s中的port【端口&#xff1a;30000-32767】 port &#xff1a;为Service 在 cluster IP 上暴露的端口 targetPort&#xff1a;对应容器映射在 pod 端口上 nodePort&#xff1a;可以通过k8s 集群外部使用 node IP node port 访问Service containerPort&#xff1a;容…

错误: 找不到或无法加载主类 回归java运行的本质

错误: 找不到或无法加载主类 回归java运行的本质 一&#xff0c;背景 当有了idea这种工具后&#xff0c;java的mian方法执行起来是如此简单&#xff0c;很少有人再手动编辑并通过命令行执行了。 同时&#xff0c;在当今Spring Boot盛行的今天&#xff0c;恐怕很少再有人执行j…

跟着步骤,快速实现图书行业小程序商城

跟着步骤&#xff0c;快速实现图书行业小程序商城 打造独特图书购物体验&#xff0c;小程序商城制作指南 轻松搭建图书馆与书店的线上商城小程序 值得一试的图书教材小程序商城搭建方法 图书商城小程序制作指南&#xff0c;助你成为行业领袖 实战教程&#xff1a;如何制作…

Android开发知识学习——HTTPS

文章目录 定义HTTPS连接HTTPS 连接建立的过程课后题 定义 HTTP Secure / HTTP over SSL / HTTP over TLS SSL&#xff1a;Secure Socket Layer -> TLS Transport Layer Security 定义&#xff1a;在HTTP之下增加的一个安全层&#xff0c;用于保障HTTP的加密传输 本质&…

云计算助力史上首届“云上亚运”圆满成功!

201金&#xff0c;魔幻的BGM&#xff0c;以及崛起的中国科技&#xff0c;让杭州亚运会成功出圈。 很多网友表示太震撼了&#xff01;开幕式很漂亮&#xff0c;杭州为了奥运造新城真豪横&#xff0c;看完一整个文化自信住&#xff01; 赛场内外除了无数个令人感动的瞬间&#…