• Prometheus监控⼊⻔简介


    文档目录:

    • prometheus是什么?
    • prometheus能为我们带来些什么
    • prometheus对于运维的要求
    • prometheus多图效果展示


    1) Prometheus是什么
    prometheus 是⼀个开源系统监控和报警的⼯具集合,由SoundCloud创建(http://
    soundcloud.com/ ),⾃从2012诞⽣之后,⾄今已经有许多公司和组织开始使⽤它了,这个
    开源项⽬拥有⼤量的积极参与开发和建设的研发⼈员以及社区⽤户。⽬前已经是⼀个独⽴运
    ⾏的开源的由各公司⾃⾏维护的监控项⽬。为了让项⽬更充实更清晰,2016prometheus
    加⼊了 Cloud Native Computing Fondation CNCF),并且成为继Kubernets(结合容器/
    docker)之后 第⼆个加⼊该组织的成员
    这个就是来⾃于官⽅的介绍
    其中更多突出的还是这个项⽬基于开源的和各种社区组织维护多重联合开发的这样⼀个特性,也就决定了这个项⽬必然是越来越好


    2prometheus能给我们带来什么
    prometheus 可以针对未来监控对于准确性和精确性的要求极⼤的贡献⾃⼰的⼀份⼒量


    promethues监控的优质特性
    基于time series 时间序列模型 (数字数学)
    时间序列(time series X,Y)是⼀系列有序的数据。通常是等时间间隔的采样数据。
    基于K/V的数据模型
    Key/value 这个键值的概念{ disk_size : 80 }
    最⼤的好处就是数据格式简单速度快易维护开发
    采样数据的查询完全基于数学运算⽽不是其他的表达式并提供专有的查询输⼊console
    这个特点很独特,所有的查询都基于数学运算公式例如 (增量(A+ 增量(B) / 总增量(C) 固定百分⽐ =>
    采⽤ HTTP pull / push两种对应的数据采集传输⽅式
    所有的数据采集都基本采⽤ HTTP ,⽽且分为 pull / push推和拉两种⽅式去写采集程序 
    •⽅便开源,且⼤量的社区成品插件
    • push的⽅法⾮常⾮常的灵活
    push的这种采集⽅法灵活程度超过你的想象,⼏乎任何形式的数据 都可以实现
    本⾝⾃带图形调试(sql)
    prometheus(查询语句)本⾝的就再带了,现成的图形成型界⾯
    虽然最终肯定不能跟grafana的效果相⽐,但是这种⾃带图形成图可以⼤⼤帮助运维做调试
    最精细的数据采样
    ⼤多数市⾯上的开源监控采样也就能精确到 半分钟⼀分钟的程度
    商品化监控产品 就更别提了(为了缩⼩数据存储的成本)有的甚⾄ 5分钟,就是采样最⼩间
    prometheus 理论上 可以达到 每1秒采集!⽽且可以⾃⾏定制频率(不过强⼤的同时其实
    不太建议细到这个程度,因为数据量太⼤了,如果1s采样⼀次)

    prometheus 还是又⼀些不⾜ 有待于改进
    不⽀持集群化 (这个是当前最迫切的需求)
    被监控集群过⼤后本⾝性能有⼀定瓶颈(如果有集群 就可以解决这个问题)
    偶尔发⽣数据丢失
    中⽂⽀持不好,中⽂资料也很少


    3) prometheus 对于运维的要求
    要求对操作系统有很深⼊扎实的知识 不能只是浮在表⾯
    对数学思维有⼀定的要求 因为它基本的内核就是数学公式组成 T-S (四则运算,算法 -> 微积分, 代数 数论)
    对监控的经验有很⾼的要求 很多时候 监控项需要很细的定制


    4prometheus 各种图形展⽰
    • prometheus主界⾯ 

    • promtheus 数学查询命令⾏展⽰ 


    (1-((sum(increase(node_cpu{mode="idle"}[1m])) by (instance)) /(sum(increase(node_cpu[1m]))
    by (instance)))) * 100 (较复杂数学公式查询展⽰)

    • prometheus 配置展⽰

     • prometheus targets展⽰(被监控节点)

    • prometheus + grafana 监控CPU展⽰

    • promtheus ⽂件描述符监控 展⽰

  • 相关阅读:
    使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之二
    使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之一
    关于使用Iscroll.js异步加载数据后不能滑动到最底端的问题解决方案
    [系统集成] RT(Request Tracker)执行自定义脚本及发送微信、短信的实现方法
    [工具开发] 分享两个基于Heapster 和 Influxdb 的 Grafana 监控仪表盘模板
    [系统集成] 基于 elasticsearch 的企业监控方案
    BindWeb
    [系统集成] 基于Kubernetes 部署 jenkins 并动态分配资源
    [经验交流] Active-Active 方式设置 kubernetes master 多节点高可用
    [经验交流] Kubernetes Nginx Ingress 安装与使用
  • 原文地址:https://www.cnblogs.com/afterdawn/p/9024651.html
Copyright © 2020-2023  润新知