Prometheus+Grafana监控Linux主机

news/2025/1/15 18:31:55/文章来源:https://www.cnblogs.com/lawutuobang/p/18673588

Prometheus 和 Grafana 是当前流行的监控和可视化工具。Prometheus 是一个开源的系统监控和报警工具,而 Grafana 是一个开源的度量分析和可视化工具。两者结合使用,可以实现强大的监控和数据展示功能。本文将介绍如何在 Linux 主机上使用 Prometheus 和 Grafana 进行监控。

一、环境准备

在开始之前,请确保你已经安装了以下软件:

  • Linux 主机(本文以 Ubuntu 为例)
  • Docker 和 Docker Compose(用于简化安装过程)

1. 安装 Docker 和 Docker Compose

在 Ubuntu 上安装 Docker:

sudo apt-get update
sudo apt-get install -y docker.io
​
 
 

安装 Docker Compose:

sudo apt-get install -y docker-compose
​
 
 

二、安装 Prometheus

2.1 创建 Prometheus 配置文件

创建一个目录来存放 Prometheus 配置文件:

mkdir -p ~/prometheus
cd ~/prometheus
​
 
 

在该目录下创建 prometheus.yml 配置文件:

nano prometheus.yml
​
 
 

添加以下内容到 prometheus.yml

global:scrape_interval: 15sscrape_configs:- job_name: 'prometheus'static_configs:- targets: ['localhost:9090']- job_name: 'node_exporter'static_configs:- targets: ['localhost:9100']
​
 
 

2.2 使用 Docker 启动 Prometheus

在 ~/prometheus 目录下创建 docker-compose.yml 文件:

nano docker-compose.yml
​
 
 

添加以下内容到 docker-compose.yml

version: '3.7'
services:prometheus:image: prom/prometheuscontainer_name: prometheusvolumes:- ./prometheus.yml:/etc/prometheus/prometheus.ymlports:- "9090:9090"
​
 
 

启动 Prometheus:

docker-compose up -d
​
 
 

三、安装 Node Exporter

Node Exporter 是 Prometheus 官方提供的用于采集主机指标的工具。

3.1 使用 Docker 启动 Node Exporter

在 ~/prometheus 目录下更新 docker-compose.yml 文件:

version: '3.7'
services:prometheus:image: prom/prometheuscontainer_name: prometheusvolumes:- ./prometheus.yml:/etc/prometheus/prometheus.ymlports:- "9090:9090"node_exporter:image: prom/node-exportercontainer_name: node_exporterports:- "9100:9100"
​
 
 

启动 Node Exporter:

docker-compose up -d
​
 
 

四、安装 Grafana

4.1 使用 Docker 启动 Grafana

在 ~/prometheus 目录下更新 docker-compose.yml 文件:

version: '3.7'
services:prometheus:image: prom/prometheuscontainer_name: prometheusvolumes:- ./prometheus.yml:/etc/prometheus/prometheus.ymlports:- "9090:9090"node_exporter:image: prom/node-exportercontainer_name: node_exporterports:- "9100:9100"grafana:image: grafana/grafanacontainer_name: grafanaports:- "3000:3000"volumes:- grafana-storage:/var/lib/grafanavolumes:grafana-storage:
​
 
 

启动 Grafana:

docker-compose up -d
​
 
 

五、配置 Grafana

5.1 访问 Grafana

在浏览器中访问 http://localhost:3000。默认用户名和密码都是 admin。首次登录后会要求更改密码。

5.2 添加数据源

  1. 登录 Grafana 后,点击左侧菜单中的“齿轮”图标,选择“Data Sources”。
  2. 点击“Add data source”。
  3. 选择“Prometheus”。
  4. 在“HTTP”下的“URL”中输入 http://prometheus:9090
  5. 点击“Save & Test”确保数据源配置正确。

5.3 导入仪表盘

  1. 在 Grafana 主界面,点击左侧菜单中的“加号”图标,选择“Import”。
  2. 在“Import via grafana.com”中输入仪表盘的 ID(例如,1860 是一个常用的 Node Exporter 全局仪表盘 ID)。
  3. 点击“Load”。
  4. 在“Prometheus”数据源下拉菜单中选择刚刚配置的数据源。
  5. 点击“Import”。

六、查看监控数据

在 Grafana 的仪表盘中,可以看到从 Prometheus 和 Node Exporter 收集到的各种系统指标,包括 CPU 使用率、内存使用率、磁盘 I/O 等等。

七、总结

通过本文的步骤,我们成功地在 Linux 主机上使用 Prometheus 和 Grafana 进行了监控配置。具体包括安装 Prometheus 和 Node Exporter,配置 Grafana 数据源,并导入预设的仪表盘来展示监控数据。通过这种方式,可以轻松实现对 Linux 主机的系统指标监控,帮助及时发现和处理潜在问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/869727.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器人

本文来自博客园,作者:Traktorea,转载请注明原文链接:https://www.cnblogs.com/kdsmyhome/p/18673586

使用Nginx实现前端映射到公网IP后端内网不映射公网.250115

一、场景: 系统移动端需要映射到公网,但是后端地址不能映射出去 qbpm.xxxx.cn 系统解析内网IP qmbpm.xxxx.cn 移动端解析公网IP 二、思路: 移动端前端公网端口放出80 443端口 移动端后端映射到内网后端地址qbpm.xxxx.cn:8443 三、解决方法: vim nginx.confserver {listen 8…

Qml 中实现任意角为圆角的矩形

在 Qml 中,矩形(Rectangle)是最常用的元素之一。 然而,标准的矩形元素仅允许设置统一的圆角半径。 在实际开发中,我们经常需要更灵活的圆角设置,例如只对某些角进行圆角处理,或者设置不同角的圆角半径。 本文将介绍如何通过自定义 Qml 元素实现一个任意角可为圆角的矩形…

【附源码】JAVA在线投票系统源码+SpringBoot+VUE+前后端分离

学弟,学妹好,我是爱学习的学姐,今天带来一款优秀的项目:在线投票系统源码 。 本文介绍了系统功能与部署安装步骤,如果您有任何问题,也请联系学姐,偶现在是经验丰富的程序员! 一. 系统演示 系统测试截图系统视频演示https://githubs.xyz/show/340.mp4二. 系统概述【 系统…

Python Playwright学习笔记(一)

一、简介 1.1Playwright 是什么? 它是微软在 2020 年初开源的新一代自动化测试工具,其功能和 selenium 类似,都可以驱动浏览器进行各种自动化操作。 1.2、特点是什么支持当前所有的主流浏览器,包括 chrome、edge、firefox、safari; 支持跨平台多语言:支持Windows、Linux、…

智能驾驶数据采集回注测评工具 - ARS

在数据驱动智能驾驶的时代背景下,开发者们总结了一条适用于智能驾驶的数据闭环开发流程,这条开发线路大致包括实车数据采集->数据存储->数据处理->数据分析->数据标注->模型训练->仿真测试->实车测试->部署发布等关键环节,通过不断开发迭代,逐步完…

2025.1.15 学习

2025.1.15 学习 api开放平台 我们希望在后端使用Http请求调用接口,应该怎么做呢 可以用Hutool工具库中的Http请求工具类,使用如下: public class ApiClient {public String getNameByGet(String name){HashMap<String, Object> paramMap = new HashMap<>();para…

2024龙信年终技术考核

1. 分析手机备份文件,该机主的QQ号为?(标准格式:123) 看了下,备份里没有QQ,但是有微信,所以应该是微信绑定的QQ号(早期微信推广时可以用QQ直接注册登录)经过测试,对应的是这个结果为1203494553 2. 分析手机备份文件,该机主的微信号为?(标准格式:abcdefg)结果为…

Dex文件结构】ReadDex解析器实现

# APP加壳脱壳 # DEX文件结构 近期学习DEX文件结构为学习APP加壳脱壳打基础,自实现了一个简易的DEX解析器加深理解。DEX文件结构整体看不复杂,深究时发现DexCLassDef结构非常复杂,编码的数据结构,嵌套和指向关系。本文作为近期学习的一个阶段总结以及知识分享,后期再完…

记录---浏览器多窗口通信有效实践总结

🧑‍💻 写在开头 点赞 + 收藏 === 学会🤣🤣🤣如何跨越不同窗口通信 在现代 Web 开发中,多个窗口或标签页之间的通信成为了越来越常见的需求,尤其是在应用需要同步数据、共享状态或进行实时更新的场景中。不同窗口间的通信方式有很多种,选择合适的方式可以大大提高…

python 按时间戳删除3232数组的前2列和后9列

还是雨滴谱文件,这次尝试批量处理 首先处理1个单独的txt文件#!usr/bin/env python # -*- coding:utf-8 _*- """@author:Suyue @file:raindrop.py @time:2025/01/15 {DAY} @desc: """ import numpy as np import redef process_file(input_file,…

电源中TL431及光耦的实战运用

首先了解一下TL431的基本原理;由一个运放及三极管组成;运放的应用前文略有几笔,此处未加反馈,运放只需要同相端与反相端做差在输出对应电压即可,而三极管是电压驱动;当VREF>2.5V即同相端大于反相端,输出正电压,三极管导通,当VREF<2.5V即同相端小于反相端,输出负…