性能监控之prometheus+grafana搭建

前言

Prometheus和Grafana是两个流行的开源工具,用于监控和可视化系统和应用程序的性能指标。它们通常一起使用,提供了强大的监控和数据可视化功能。

Prometheus

  • Prometheus是一种开源的系统监控和警报工具包。它最初由SoundCloud开发,并于2012年发布为开源项目。
  • Prometheus的核心是一个时间序列数据库,它用于存储来自应用程序或系统的指标数据,如CPU利用率、内存使用情况、HTTP请求等。
  • Prometheus通过HTTP协议定期拉取目标系统的指标数据。这些目标可以是应用程序、服务器、数据库等各种系统组件。
  • Prometheus提供了灵活的查询语言PromQL,用于对存储的指标数据进行查询和聚合。
  • 它还支持警报规则,可以根据定义的规则触发警报,并发送通知给相关人员。

Grafana

  • Grafana是一个开源的数据可视化和监控平台,最初由Torkel Ödegaard于2014年创建。
  • Grafana允许用户创建动态且高度可定制的仪表板,用于展示来自各种数据源的数据。
  • 它支持多种数据源,包括Prometheus、Graphite、Elasticsearch、InfluxDB等。
  • Grafana提供了丰富的可视化选项,包括折线图、柱状图、仪表板、热图等,用户可以根据需求自由组合和定制。
  • 通过Grafana,用户可以创建复杂的监控仪表板,将各种数据以直观的方式展示出来,帮助用户更好地理解系统的运行情况和性能指标。

综上所述,Prometheus和Grafana是一对强大的开源工具组合,用于监控系统和应用程序的性能,并通过可视化方式展示监控数据,帮助用户及时发现和解决问题。

概述

本次安装采用docker方式

资源        信息
linux虚拟机一台172.16.42.68
软件版本

prometheus

2.25.0

grafana

7.3.7

 安装部署

安装docker

yum install docker
启动docker
systemctl start docker

 安装prometheus

docker run -itd --name prometheus -p 9090:9090 prom/prometheus:v2.25.0

安装grafana

docker run -itd --name grafana -p 3000:3000 grafana/grafana:7.3.7

安装node_export

Node Exporter 是一个开源的 Prometheus Exporter,用于收集主机系统的各种指标数据。它可以在 Linux、Windows 和 macOS 等操作系统上运行,并暴露系统的 CPU 使用率、内存使用率、磁盘空间、网络流量等指标数据,以供 Prometheus 或其他监控系统进行收集和分析。

Node Exporter 通过在主机上运行一个小型的代理程序来收集系统指标数据,并通过 HTTP 端口暴露这些数据,使 Prometheus 或其他监控系统能够轻松地抓取和处理。它是 Prometheus 生态系统中的重要组件之一,帮助用户监控和管理他们的基础设施。

方式1 tar.gz
 
wget https://github.com/prometheus/node_exporter/releases/download/v1.4.0-rc.0/node_exporter-1.4.0-rc.0.linux-amd64.tar.gz
tar -xvf node_exporter-1.4.0-rc.0.linux-amd64.tar.gz -C /usr/local
mv /usr/local/node_exporter-1.4.0-rc.0.linux-amd64/node_exporter /usr/local/bin/
 
# 编写systemd服务
cat > /etc/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node_exporeter
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
 
# 更新内核并启动,自启动
systemctl daemon-reload && systemctl start node_exporter && systemctl enable node_exporter && systemctl status node_exporter
方式2 docker
docker run -d --name=node_exporter -p 9100:9100 prom/node-exporter

修改普罗米修斯配置文件

将node_export加入到普罗米修斯的配置文件中

docker exec -it prometheus sh
cd /etc/prometheus
vi prometheus.yml
  - job_name: 'linux'        
    scrape_interval: 5s
    static_configs:                   
    - targets: ['172.16.42.68:9100']

重启服务

docker restart prometheus

grafana数据统一可视化

普罗米修斯也可以可视化,但是他每一个指标都是单独的,而grafana是可以将普罗米修斯收集到的数据统一合并到一个美观的web图表上

下载json模版(后面会用到)(通用)

https://grafana.com/api/dashboards/12633/revisions/1/download 下载链接

登陆grafana后台

http://172.16.42.68:3000/login

默认admin/admin

修改密码即可

 添加datasource

 

 导入json模版文件

 

 

 

页面展示

监控其他的虚拟机

只需在每个虚拟机上安装node_exporter服务即可,同时完成对普罗米修斯配置的修改

其他

1、可以将prometheus配置文件映射出来,后续就不需要去容器中修改了

2、Prometheus配置文件说明

job_name: 同样,每个job都有一个名称,用于标记从该配置中抓取的时间序列。

scrape_interval: 所有的linux jobs都设置了相同的抓取间隔为5秒。

static_configs: 每个linux job都有一个静态配置,指定了不同的目标(target):
'42.68' job从'172.16.42.68:9100'获取数据。
'42.66' job从'172.16.42.66:9100'获取数据。
'42.70' job从'172.16.42.70:9100'获取数据。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

二分查找法实例

本文是根据数据结构中常常提到的二分法而作的一篇博客&#xff0c;主要通过一个二分法实例进行展开说明&#xff1a; 实例内容 通过一个二分法函数来寻找某个数是否在给定的数组中&#xff1b; 代码展示 # 执行二分查找法的算法函数 # 二分法查找的对象必须是一个有序的集…

尼日利亚光伏储能展

尼日利亚地处热带地区&#xff0c;全年阳光充足&#xff0c;每年日照时间超2600小时(平均每天约7小时)。专家表示&#xff0c;尼日利亚有足够的经济实力和环境条件来开发可再生能源&#xff0c;尤其是太阳能。据世界银行估计&#xff0c;投资太阳能发电厂可为近8000万人提供电力…

短视频交友系统搭建重点,会用到哪些三方服务?

在搭建短视频交友系统时&#xff0c;为了确保系统的稳定性、安全性和用户体验&#xff0c;通常需要用到多种第三方服务。以下是搭建短视频交友系统时可能用到的关键第三方服务&#xff1a; 云服务提供商&#xff1a;如阿里云、腾讯云等&#xff0c;提供稳定、可扩展的服务器资源…

Web前端一套全部清晰 ⑤ day3 列表 表格 表单标签 综合案例

人生是一直向前无法倒退的旅程&#xff0c;所以可以偶尔回头&#xff0c;但一定要往前看 —— 24.4.29 一、综合案例1-体育新闻列表 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport…

优化NGINX性能:使用NGINX_THREADS提高并发处理能力

目录标题 1. 什么是NGINX_THREADS&#xff1f;2. 配置NGINX_THREADS3. 使用NGINX_THREADS处理耗时操作4. 性能调优5. 结论 NGINX作为一个高性能的HTTP和反向代理服务器&#xff0c;在处理高并发请求时表现出色。但随着互联网应用对性能要求的不断提高&#xff0c;深入了解和优化…

AOSP源码开发

AOSP源码开发 Author: cpu_codeDate: 2020-07-11 16:18:27LastEditTime: 2020-07-12 21:08:41FilePath: \note\android_bottom\summary.mdGitee: https://gitee.com/cpu_codeGithub: https://github.com/CPU-CodeCSDN: https://blog.csdn.net/qq_44226094Gitbook: https://923…

【Leetcode每日一题】 综合练习 - 找出所有子集的异或总和再求和(难度⭐)(68)

1. 题目解析 题目链接&#xff1a;1863. 找出所有子集的异或总和再求和 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 2.算法原理 算法思路与实现 为了求解给定整数数组的所有子集并将其异或和相加&#xff0c;我们可以采用递…

【GO】命令行解析 os 与 flag

目录 OS解析命令 简单用法 进阶用法 flag命令解析 基础实例 1. 自定义数据类型 2. 创建多个 FlagSet 3. 整合环境变量和配置文件 os与flag 关键点解析 程序的作用 示例命令行调用 在 Go 语言中&#xff0c;命令行解析是一项基本且常用的功能&#xff0c;它允许开发者…

【Linux系统编程】第十一弹---编辑器vim使用

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、vim的基本概念 2、vim的基本操作 3、vim插入模式命令集 4、vim正常(命令)模式命令集 5、vim末行模式命令集 6、vim操作…

C/C++程序设计实验报告综合作业 | 小小计算器

本文整理自博主本科大一《C/C程序设计》专业课的课内实验报告&#xff0c;适合C语言初学者们学习、练习。 编译器&#xff1a;gcc 10.3.0 ---- 注&#xff1a; 1.虽然课程名为C程序设计&#xff0c;但实际上当时校内该课的内容大部分其实都是C语言&#xff0c;C的元素最多可能只…

mac用Homebrew安装MySQL并配置远程登录

1. 简介 MySQL 是一个开源的关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;由瑞典 MySQL AB 公司开发&#xff0c;后被 Oracle 公司收购。MySQL 使用 SQL&#xff08;Structured Query Language&#xff09;作为查询语言&#xff0c;并提供了强大的功能和性能…

鸿蒙开发面试真题——面向对象

鸿蒙开发面向对象的面试题是近年来在软件开发领域中备受关注的话题。作为一种新兴的操作系统&#xff0c;鸿蒙系统的开发者需要具备扎实的面向对象编程知识和丰富的开发经验。在面试中&#xff0c;面试官常常会通过一系列的问题来考察面试者对于鸿蒙开发面向对象的理解和应用能…

ES 深度分页问题及针对不同需求下的解决方案[ES系列] - 第509篇

历史文章&#xff08;文章累计500&#xff09; 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 《…

春游江淮 请来池州 | 五一池州文旅活动时间表大集合,都在这里

快到五一,想好去哪里玩吗?来池州,各景区缤纷活动登场&#xff0c; 速速划重点、敲黑板! 五一放大招!到底怎么玩?文旅活动、阅读推广 非遗展示......现在都已经为你整理好啦!这份超齐全的 五一假期文旅活动时间表,助力您玩转各景区,整个假期嗨不停~ 旅游惠民活动 表演类活动…

salesforce 如何访问lwc组件

访问lwc有哪些途径呢? Action ButtonTabAura use lwc(拓展)如何区分是新建页面还是编辑页面 Action Button xml文件中要配置tab<?xml version"1.0" encoding"UTF-8"?> <LightningComponentBundle xmlns"http://soap.sforce.com/2006/04/…

使用fitten code插件(vscode),替换通义千问,识别需求中的输入输出

今天我们介绍一个工具,具体介绍可以参考我的这篇文章的介绍,支持vs code 插件,Fitten Code是一款由非十科技开发的AI代码助手,旨在通过大模型驱动来提升编程效率和体验-免费神器-CSDN博客https://blog.csdn.net/lijigang100/article/details/137833223?spm=1001.2014.3001…

MySQL怎么看死锁记录

这个结果分成三部分&#xff1a; (1) TRANSACTION&#xff0c;是第一个事务的信息&#xff1b; (2) TRANSACTION&#xff0c;是第二个事务的信息&#xff1b; (3)WE ROLL BACK TRANSACTION (1)&#xff0c;是最终的处理结果&#xff0c;表示回滚了第一个事务。 第一个事务的信…

文件批量重命名:高效添加前缀顺序编号,让文件整理变得轻松简单

电脑中的文件数量日益增长&#xff0c;如何有效地管理和整理这些文件成为了许多人的难题。你是否曾在大量的文件中迷失&#xff0c;寻找某个特定文件时感到困惑和疲惫&#xff1f;现在&#xff0c;我们为您带来了一款全新的文件改名工具——"一键式文件改名神器"&…

计算机复试项目:SpringCloud实战高并发微服务架构设计

秒杀购物商城--环境搭建 秒杀购物商城基础服务组件--详细介绍 秒杀购物商城基础服务--权限中心 秒杀购物商城业务服务--收货地址 秒杀购物商城业务服务--秒杀活动服务 秒杀购物商城--购物车的功能设计及分析 秒杀购物商城基础服务-用户中心 秒杀购物商城业务服务--商品中…

通过共享网络使树莓派4联网

一、问题 尝试配置/boot/dhcpcd.conf文件无效&#xff0c;wifi依然无法联网&#xff0c;且通过桌面选择wifi输入密码后同样无法联网&#xff1b; 二、环境 1、可以通过网线连接电脑&#xff0c;并且可以连接串口&#xff1b; 2、可以通过静态地址通过网线访问树莓派ssh端口&…