基于Prometheus和Grafana的监控平台 - 环境搭建

简介: 相关概念微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics。

Logging - 用于记录离散的事件。例如,应用程序的调试信息或错误信息。它是我们诊断问题的依据。比如我们说的ELK就是基于Logging。


Metrics - 用于记录可聚合的数据。例如,队列的当前深度可被定义为一个度量值,在元素入队或出队时被更新;HTTP 请求个数可被定义为一个计数器,新请求到来时进行累。prometheus专注于Metrics领域。


Tracing - 用于记录请求范围内的信息。例如,一次远程方法调用的执行过程和耗时。它是我们排查系统性能问题的利器。最常用的有Skywalking,ping-point,zipkin。


今天我们主要聊聊Prometheus的监控,接下来我们了解下需要涉及的几个关键组件。

Prometheus


Prometheus(中文名:普罗米修斯)是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB). Prometheus使用Go语言开发, 是Google BorgMon监控系统的开源版本。


Prometheus的基本原理是通过HTTP协议周期性抓取被监控组件的状态, 任意组件只要提供对应的HTTP接口就可以接入监控. 不需要任何SDK或者其他的集成过程。输出被监控组件信息的HTTP接口被叫做exporter,目前开发常用的组件大部分都有exporter可以直接使用, 比如Nginx、MySQL、Linux系统信息、Mongo、ES等


exporter


prometheus可以理解为一个数据库 数据抓取工具, 工具从各处抓来统一的数据, 放入prometheus这一个时间序列数据库中. 那如何保证各处的数据格式是统一的呢?就是通过这个exporter. Exporter是一类数据采集组件的总称. Exporter负责从目标处搜集数据, 并将其转化为Prometheus支持的格式, 它开放了一个http接口(以便Prometheus来抓取数据). 与传统的数据采集组件不同的是, Exporter并不向中央服务器发送数据, 而是等待中央服务器(如Prometheus等)主动前来抓取。https://github.com/prometheus 有很多写好的exporter,可以直接下载使用。

Grafana


Grafana是一个图形化工具, 它可以从很多种数据源(例如Prometheus)中读取数据信息, 使用很漂亮的图表来展示数据, 并且有很多开源的dashborad可以使用,可以快速地搭建起一个非常精美的监控平台。它与Prometheus的关系就类似于Kibana与ElasticSearch。


环境准备


在开始配置之前请下载以下几个软件(直接从github或者grafana官网下载太慢了,简直是龟速而且容易下载失败,建议使用迅雷下载)。



安装


准备两台服务器,一台用作安装prometheus和grafana,一台用作放置exporter组件。建立应用文件夹,将相关软件上传至服务器。


  • 192.168.249.131 prometheus,grafana
  • 192.168.249.129 exporter


prometheus


使用如下shell命令进行安装并启动


tarzxvfprometheus-2.13.1.linux-amd64.tar.gzmvprometheus-2.13.1.linux-amd64prometheuscdprometheusnohup ./prometheus&


启动完成后,用浏览器打开http://192.168.249.131:9090进行访问,效果如下:


1.jpeg


grafana


使用如下shell命令进行安装并启动


targrafana-6.4.3.linux-amd64.tar.gzcdgrafana-6.4.3nohup ./grafana-server&


启动完成后,用浏览器打开http://192.168.249.131:3000进行访问,默认账号密码为admin/admin,初次登陆需要修改密码,修改密码并登陆效果如下:


2.jpeg


node_exporter


使用如下shell命令进行安装并启动


tarzxvfnode_exporter-0.18.1.linux-amd64.tar.gzmvnode_exporter-0.18.1.linux-amd64node_exporternohup ./node_exporter&


node exporter默认使用9100端口,可以使用–web.listen-address=":9200"指定端口号。

启动完成后,用浏览器打开http://192.168.249.129:9100/进行访问,显示效果如下:


3.jpeg


配置


prometheus


进入prometheus安装目录,修改prometheus.yml文件,增加监听job server-192.168.249.129,完整配置如下:


#myglobalconfigglobal:
scrape_interval:     15s#Setthescrapeintervaltoevery15seconds. Defaultisevery1minute.
evaluation_interval: 15s#Evaluaterulesevery15seconds. Thedefaultisevery1minute.
#scrape_timeoutissettotheglobaldefault (10s).
#Alertmanagerconfigurationalerting:
alertmanagers:
-static_configs:
-targets:
#-alertmanager:9093rule_files:
#-"first_rules.yml"#-"second_rules.yml"scrape_configs:
#Thejobnameisaddedasalabel`job=<job_name>`toanytimeseriesscrapedfromthisconfig.
-job_name: 'prometheus'static_configs:
-targets: ['localhost:9090']
-job_name: '192.168.249.129'static_configs:
-targets: ['192.168.249.129:9100']


配置完成后重启prometheus,查看监听状态。


5.jpeg


grafana


配置prometheus数据源


6.jpeg


官网寻找对应的表盘,我们选择node exporter监控看板


7.jpeg


在grafana中在导入表盘


8.jpeg


9.jpeg


查看监控效果


10.jpeg


11.jpeg


至此基于Prometheus的监控环境搭建完成,你也来动手试一下吧。



目录
相关文章
|
10月前
|
Prometheus 监控 Cloud Native
云原生监控实战:Prometheus+Grafana快速搭建指南
云原生监控实战:Prometheus+Grafana快速搭建指南
|
10月前
|
存储 Prometheus 监控
OSS监控体系搭建:Prometheus+Grafana实时监控流量、错误码、存储量(开源方案替代云监控自定义视图)
本方案基于Prometheus构建OSS监控系统,涵盖架构设计、指标采集、可视化、告警及性能优化,助力企业实现高可用、低成本的自建监控体系。
974 1
|
11月前
|
Prometheus 监控 Cloud Native
除了Prometheus,还有哪些工具可以监控Docker Swarm集群的资源使用情况?
除了Prometheus,还有哪些工具可以监控Docker Swarm集群的资源使用情况?
881 79
|
10月前
|
存储 监控 Cloud Native
云原生监控实战:Prometheus+Grafana打造RDS多维度预警体系
本方案构建了基于Prometheus与Thanos的云原生RDS监控体系,涵盖数据采集、存储、可视化与告警全流程。支持10万+QPS采集、90%存储压缩,具备&lt;30秒告警延迟能力。通过自定义指标与智能预警策略,显著提升故障发现效率,实现分钟级响应。
704 5
|
10月前
|
Prometheus 监控 Cloud Native
|
9月前
|
Prometheus 监控 Cloud Native
Docker 部署 Prometheus 和 Grafana 监控 Spring Boot 服务
Docker 部署 Prometheus 和 Grafana 监控 Spring Boot 服务实现步骤
825 0
|
12月前
|
Prometheus 监控 Cloud Native
Prometheus+Grafana(docker安装)
本文档详细介绍了如何使用Docker容器快速部署Prometheus监控系统和Grafana数据可视化平台。该方案适用于需要快速搭建监控环境的开发测试场景,具备部署简单、资源占用低、易于维护等特点。
|
Prometheus Kubernetes 监控
Kubernetes监控:Prometheus与AlertManager结合,配置邮件告警。
完成这些步骤之后,您就拥有了一个可以用邮件通知你的Kubernetes监控解决方案了。当然,所有的这些配置都需要相互照应,还要对你的Kubernetes集群状况有深入的了解。希望这份指南能帮助你创建出适合自己场景的监控系统,让你在首次发现问题时就能做出响应。
763 22
|
存储 数据采集 Prometheus
Grafana Prometheus Altermanager 监控系统
Grafana、Prometheus 和 Alertmanager 是一套强大的开源监控系统组合。Prometheus 负责数据采集与存储,Alertmanager 处理告警通知,Grafana 提供可视化界面。本文简要介绍了这套系统的安装配置流程,包括各组件的下载、安装、服务配置及开机自启设置,并提供了访问地址和重启命令。适用于希望快速搭建高效监控平台的用户。
1047 20
|
Prometheus 监控 Cloud Native
Prometheus+Grafana监控Linux主机
通过本文的步骤,我们成功地在 Linux 主机上使用 Prometheus 和 Grafana 进行了监控配置。具体包括安装 Prometheus 和 Node Exporter,配置 Grafana 数据源,并导入预设的仪表盘来展示监控数据。通过这种方式,可以轻松实现对 Linux 主机的系统指标监控,帮助及时发现和处理潜在问题。
1399 7

推荐镜像

更多
下一篇
开通oss服务