Prometheus安装和基本配置

Prometheus的主要特点
  1. Prometheus 属于一站式监控告警平台,依赖少,功能齐全。
  2. Prometheus 支持对云的或容器的监控,其他系统主要对主机监控。
  3. Prometheus 数据查询语句表现力更强大,内置更强大的统计函数。
  4. Prometheus 在数据存储扩展性以及持久性上没有 InfluxDBOpenTSDBSensu 好。

Prometheus的核心组件
  1. Prometheus Server 主要用于抓取数据和存储时序数据,另外还提供查询和 Alert Rule 配置管理。
  2. client libraries,用于对接 Prometheus Server, 可以查询和上报数据。
  3. push gateway ,用于批量,短期的监控数据的汇总节点,主要用于业务数据汇报等。
  4. 各种汇报数据的 exporters ,例如汇报机器数据的 node_exporter, 汇报 MongoDB 信息的 MongoDB exporter 等等。
  5. 用于告警通知管理的 alertmanager

Prometheus的架构图



从这个架构图,也可以看出 Prometheus 的主要模块包含, Server, Exporters, Pushgateway, PromQL, Alertmanager, WebUI 等。

它大致使用逻辑是这样:

  1. Prometheus server 定期从静态配置的 targets 或者服务发现的 targets 拉取数据
  2. 当新拉取的数据大于配置内存缓存区的时候,Prometheus 会将数据持久化到磁盘(如果使用 remote storage 将持久化到云端)。
  3. Prometheus 可以配置 rules,然后定时查询数据,当条件触发的时候,会将 alert 推送到配置的 Alertmanager。
  4. Alertmanager 收到警告的时候,可以根据配置,聚合,去重,降噪,最后发送警告。
  5. 可以使用 API, Prometheus Console 或者 Grafana 查询和聚合数据。
     
Prometheus的安装

  1. tar -zxvf prometheus-2.0.0.linux-amd64.tar.gz
  2. cd prometheus-2.0.0.linux-amd64.tar.gz
  3. ./prometheus

Prometheus的配置
  1. global:
  2. scrape_interval: 15s # By default, scrape targets every 15 seconds.
  3. evaluation_interval: 15s # By default, scrape targets every 15 seconds.
  4. # scrape_timeout is set to the global default (10s).
  5. # Attach these labels to any time series or alerts when communicating with
  6. # external systems (federation, remote storage, Alertmanager).
  7. external_labels:
  8. monitor: 'codelab-monitor'
  9. # Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
  10. rule_files:
  11. # - "first.rules"
  12. # - "second.rules"
  13. # A scrape configuration containing exactly one endpoint to scrape:
  14. # Here it's Prometheus itself.
  15. scrape_configs:
  16. # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  17. - job_name: 'prometheus'
  18. # Override the global default and scrape targets from this job every 5 seconds.
  19. scrape_interval: 5s
  20. # metrics_path defaults to '/metrics'
  21. # scheme defaults to 'http'.
  22. static_configs:
  23. - targets: ['localhost:9090']
  24. - job_name: 'mydemo'
  25. # Override the global default and scrape targets from this job every 5 seconds.
  26. scrape_interval: 5s
  27. metrics_path: '/prometheus'
  28. # scheme defaults to 'http'.
  29. static_configs:
  30. - targets: ['192.168.60.207:8088']
  • 最关键的配置就是targets,就是web应用的ip和端口

Prometheus的启动
  1. http://localhost:9090/targets


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fly910905/article/details/78618534
个人分类: SpringBoot
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭