zoukankan      html  css  js  c++  java
  • prometheus使用一

    一、Prometheus简介
    Prometheus是一套开源的系统监控报警框架。Prometheus作为新一代的云原生监控系统,相比传统监控监控系统(Nagios或者Zabbix)拥有如下优点。
    易管理性
    Prometheus: Prometheus核心部分只有一个单独的二进制文件,可直接在本地工作,不依赖于分布式存储。
    Nagios: 需要有专业的人员进行安装,配置和管理,并且过程很复杂。
    业务数据相关性
    Prometheus:监控服务的运行状态,基于Prometheus丰富的Client库,用户可以轻松的在应用程序中添加对Prometheus的支持,从而让用户可以获取服务和应用内部真正的运行状态。
    Nagios:大部分的监控能力都是围绕系统的一些边缘性的问题,主要针对系统服务和资源的状态以及应用程序的可用性。
    另外Prometheus还存在以下优点:
    高效:单一Prometheus可以处理数以百万的监控指标;每秒处理数十万的数据点。
    易于伸缩:通过使用功能分区(sharing)+联邦集群(federation)可以对Prometheus进行扩展,形成一个逻辑集群;Prometheus提供多种语言的客户端SDK,这些SDK可以快速让应用程序纳入到Prometheus的监控当中。
    良好的可视化:Prometheus除了自带有Prometheus UI,Prometheus还提供了一个独立的基于Ruby On Rails的Dashboard解决方案Promdash。另外最新的Grafana可视化工具也提供了完整的Proetheus支持,基于Prometheus提供的API还可以实现自己的监控可视化UI。
    ————————————————
    上述介绍转自:本文为CSDN博主「polo2044」的原创文章,遵循CC 4.0 BY-SA版权协议,
    原文链接:https://blog.csdn.net/polo2044/java/article/details/83051314

    prometheus与APM的区别个人认为是,prometheus更适合监控业务指标和容器,APM注重服务链条的监控。

    prometheus官网是: https://prometheus.io/

    贴一张官网的结构图

    自己整理的脑图

    http://naotu.baidu.com/file/c50d3c7bf5ba539b4e9542de4633ade0?token=eb0f22e32f18b108

    二.安装

    wget https://github.com/prometheus/prometheus/releases/download/v2.6.0/prometheus-2.6.0.linux-amd64.tar.gz
    tar txvf prometheus-2.6.0.linux-amd64.tar.gz
    cd prometheus-2.6.0.linux-amd64.tar.gz

    启动: nohup ./prometheus &

    三.配置文件如下

    # Prometheus全局配置项
    global:
    scrape_interval: 15s # 设定抓取数据的周期,默认为1min
    evaluation_interval: 15s # 设定更新rules文件的周期,默认为1min
    scrape_timeout: 15s # 设定抓取数据的超时时间,默认为10s
    external_labels: # 额外的属性,会添加到拉取得数据并存到数据库中
    monitor: 'codelab_monitor'


    # Alertmanager配置
    alerting:
    alertmanagers:
    - static_configs:
    - targets: ["localhost:9093"] # 设定alertmanager和prometheus交互的接口,即alertmanager监听的ip地址和端口

    # rule配置,首次读取默认加载,之后根据evaluation_interval设定的周期加载
    rule_files:
    - "alertmanager_rules.yml"
    - "prometheus_rules.yml"

    # scape配置
    scrape_configs:
    - job_name: 'prometheus' # job_name默认写入timeseries的labels中,可以用于查询使用
    scrape_interval: 15s # 抓取周期,默认采用global配置
    static_configs: # 静态配置
    - targets: ['localdns:9090'] # prometheus所要抓取数据的地址,即instance实例项

    - job_name: 'example-random'
    static_configs:
    - targets: ['localhost:8080']

    四.访问

    ip:9090

  • 相关阅读:
    剑指 Offer 43. 1~n整数中1出现的次数
    剑指 Offer 54. 二叉搜索树的第k大节点(递归)
    第三个JSP作业
    第二个JSP作业-用循环结构输出三行五列的table
    第二个JSP作业-编写jsp页面,输出大写、小写英文字母表
    第一个JSP作业
    安卓课设
    第十次作业
    第八次作业
    第九次作业
  • 原文地址:https://www.cnblogs.com/lpcyj/p/13220827.html
Copyright © 2011-2022 走看看