| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 初识Prometheus监控 -> 正文阅读 |
|
[系统运维]初识Prometheus监控 |
目录 ? ? ? ? 一、Prometheus简介? ? ? ? 1.1 Prometheus概述? ? ? ? Prometheus是一个开源系统监控和警报工具,最初是在SoundCloud建立的。自2012年成立以来,许多公司和组织都采用了普罗米修斯,该项目拥有一个非常活跃的开发者和用户社区。它现在是一个独立的开放源码项目,并且独立于任何公司。为了强调这一点,为了澄清项目的治理结构,普罗米修斯在2016年加入了云计算基金会,成为继Kubernetes之后的第二个托管项目。谷歌的内部大型集群系统borg,是kubernetes的前身。其监控系统是Prometheus,而iprometheus是其克隆版,所以非常契合k8s的监控对容器非常适用。 ? ? ? ? 二、Prometheus特点? ? ? ? 1、多维的数据模型(基于时间序列的Key、 value键值对) ? ? ? ? 2、灵活的查询和聚合语言PromQL ????????使用PromQL语言可以以多个条件定位到具体的键值对数据(首先确定时间段,其次具体到主机) ????????监控告警方式:首先记录时间刻度的值为时间序列持续数据,根据每个单位的持续数据组成趋势图,通过promQL语句去过滤时间序列中具体时间中的一个值,这个值作为告警指标,高于这个指标就进行告警,没有高于这个指标平稳运行监控 ? ? ? ?3、 提供本地存储和分布式存储 ????????本地存储当监控部署在那个服务器中即使用那台服务器的存储资源 ????????分布式存储:可以配合GFS,NFS客户端进行挂载使用 ? ? ? ? 4、方式 ? ? ? ? 4.1 通过基于HTTP和HTTPS的Pull模型采集时间序列数据(pull数据的推送,时间序列:每段时间点的数据值指标,持续性的产生。横轴标识时间,纵轴为数据值,一段时间内数值的动态变化,所有的点连线形成大盘式的折线图) ????????HTTP和HTTPS是两种监控中获取数据的方式,不同于其他监控Prometheus采用pull模式主动向服务器去询问数据,不易出现并发周期导致服务器宕机。 ? ? ? ? 4.2 可利用Pushgateway (Prometheus的可选中间件)实现Push模式(只会对脚本执行或者一次性/短周期执行的任务,使用push方式 ????????当请求数据时没有http和https的场景下采集数据时,使用push模式,数据就会被推送到Pushgateway这个组件上,等待Prometheus主动获取或者主动推给Prometheus ? ? ? ? 5、可通过动态服务发现或静态配置发现目标机器(通过consul自动发现和收缩) ????????当Prometheus监控大规模集群服务器时,当集群服务器中的服务器宕机时会进行告警(缺点:当服务器进行人为维护时也会发生告警)。 ? ? ? ? 当Prometheus监控等待集群服务器进行扩展时,会自动发现将匹配服务器纳入自己的监控范围 ? ? ? ? 6、支持多种图表和数据大盘 ? ? ? ? 当收集的数据可以展示出多种图形的数据图表 ? ? ? ? 三、Prometheus监控体系?????????1.系统层监控(需要监控的数据)????????1.1 CPU、Load、Memory、swap、disk i/o、process等 ? ? ? ? 1.2 网络监控:网络设备、工作负载、网络延迟、丢包率等 中 ????????2.间件及基础设施类监控? ? ? ? 2.1 消息中间件: kafka、RocketMg、等消息代理(redis中间件) ????????2.2 WEB服务器容器: tomcat、weblogic、apache、php、spring系列 ? ? ? ? 2.3 数据库/缓存数据库:MySQL、PostgresQL、MogoDB、es、redisredis监控内容: redis所在服务器的系统层监控redis 服务状态 RDB AOF日志监控 日志—>如果是哨兵模式—>哨兵共享集群信息,产生的日志—>直接包含的其他节点哨兵信息及redis信息 ????????3.应用层监控????????用于衡量应用程序代码状态和性能#监控的分类#:黑盒监控,白盒监控PS: 白盒监控,自省指标,等待被下载( cadvisor) 黑盒监控:基于探针的监控方式,不会主动干预、影响数据 ????????4.业务层监控????????用于衡量应用程序的价值,如电商业务的销售量,ops、dau日活、转化率等业务接口:登入数量,注册数、订单量、搜索量和支付量 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 6:00:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |