【监控利器Prometheus】——Prometheus+Grafana监控服务器资源

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 在Prometheus的架构设计中,Prometheus Server并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。Prometheus周期性的从Exporter暴露的HTTP服务地址(通常是/metrics)拉取监控样本数据。

在Prometheus的架构设计中,Prometheus Server并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。Prometheus周期性的从Exporter暴露的HTTP服务地址(通常是/metrics)拉取监控样本数据。


上篇文章只写了安装Prometheus Server和Grafana,这里来个小小的实战,通过Node Exporter(可以收集内核公开的硬件和操作系统指标等)来采集服务器资源信息,并通过Grafana展示。


1. 配置 Node Exporter 采集服务器数据


1、下载镜像

docker pull prom/node-exporter

2、启动容器

docker run -d --name node-exporter -p 9100:9100 -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" prom/node-exporter


3、启动后,访问 http://127.0.0.1:9100/metrics 可以发现已经有很多操作系统的信息了,比如cpu、内存、磁盘等信息:

23.png


2. Prometheus配置


修改宿主机prometheus配置文件prometheus.yml

global:
  scrape_interval: 15s
  evaluation_interval: 15s
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"
    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
    static_configs:
      - targets: ["10.246.140.63:9090"]
        labels: 
            instance: prometheus
  - job_name: "mac_m1"
    static_configs:
      - targets: ["10.246.140.63:9100"]
        labels:
            instance: mac_m1


主要是在prometheus.yml默认配置中加一个job,job_name我这里写了个 "mac_m1",targets就是Node Exporter服务的地址,可以写多个比如 "10.246.140.63:9100","10.246.140.64:9100"


修改完配置文件,重启Prometheus

docker restart prometheus


然后在Prometheus的targets中(http://127.0.0.1:9090/targets)就可以看到刚才配置的Node Exporter服务了:

24.png


在Prometheus UI界面随便查询一个 Node Exporter 的采集指标(可以在 http://localhost:9100/metrics 中查看),可以查询到采集到的当前CPU空闲时间为 108707.77

25.png


3. 在Grafana中创建监控看板


在Grafana中添加数据源,选择Prometheus

image.png


配置prometheus地址,其他可以默认:


image.png


填好后点击【保存 & 测试】测试一下并保存。

通过导入现成模板(https://grafana.com/grafana/dashboards/8919)的方式创建Dashboard,Create -> Import


image.png


直接输入模板编号 8919 后点 Load,然后数据源选择 Prometheus,点 Import,最后的效果:


29.png





相关文章
|
19天前
|
弹性计算 前端开发 持续交付
云效产品使用常见问题之导入ECS主机到资源池找不到导入的入口如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
1月前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
2月前
|
弹性计算 监控 网络协议
ecs资源监控操作
监控阿里云ECS服务器资源分为7步:登录阿里云控制台,进入ECS管理界面,选择要监控的实例,查看基础监控数据,通过云监控服务获取详细图表、配置报警规则,可选安装云监控插件获取OS级数据,最后定期审查优化资源配置。通过这些步骤,确保系统稳定运行并及时处理问题。如需帮助,参考官方文档或联系阿里云支持。
36 3
|
2月前
|
弹性计算 监控 数据可视化
ecs资源可视化
ecs资源可视化
24 3
|
2月前
|
弹性计算 运维 监控
ECS资源监控
ECS资源监控涉及CPU、内存、磁盘I/O、网络流量、系统负载和进程的关键指标,通过云服务商控制台、监控服务、API与SDK、运维工具进行实时监控和告警设置。支持历史数据查询、事件监控,以及使用Windows资源监视器和Linux系统工具进行操作系统层面监控。全面监控确保ECS实例稳定运行、资源有效利用和问题及时处理。如需特定云服务商的指导,请询问。
46 3
|
11天前
|
Prometheus 监控 Cloud Native
使用Prometheus配置监控与报警
通过以上步骤,你可以使用Prometheus和Alertmanager实现监控和报警配置,以确保系统在出现性能问题或故障时能够及时通知相关人员。欢迎关注威哥爱编程,一起学习成长。
|
15天前
|
Prometheus 监控 Cloud Native
Prometheus+Grafana+NodeExporter 打造一款出色的监控系统,帅呆了!
Prometheus+Grafana+NodeExporter 打造一款出色的监控系统,帅呆了!
54 2
|
1月前
|
缓存 监控 Linux
服务器中常用的几个资源监控工具整理
【4月更文挑战第2天】服务器中常用的几个资源监控工具整理
394 13
|
2月前
|
存储 机器学习/深度学习 弹性计算
ECS镜像问题之释放资源如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
2月前
|
弹性计算 芯片
阿里云云服务器资源规格推荐指南
该文介绍了如何根据物理机规格和总算力推荐阿里云ECS资源。用户可通过ECS管理控制台的资源管家进行规划:输入物理机配置(CPU、内存等)或总算力需求,系统将推荐合适的ECS资源方案及价格。用户可据此购买或预定资源。
38 2