在linux部署Prometheus+Grafana+Exporter监控系统性能

news2024/9/28 17:32:41

Prometheus、Grafana和Report组件是什么?

Prometheus、Grafana和Exporter是常用于系统监控和指标收集的组合。

  • Prometheus是一种开源的系统监控和警报工具。它可以收集各种指标数据,并提供强大的查询语言和灵活的警报规则,用于实时监控系统的性能、状态和健康状况。
  • Grafana是一种开源的可视化仪表盘工具,与Prometheus等多个数据源兼容。它提供了丰富的图表展示、仪表盘配置和数据分析功能,使用户可以直观地查看、理解和分析收集到的指标数据。
  • Exporter是一类用于将其他应用程序或系统的指标数据暴露给Prometheus进行采集的组件。Exporter可以连接到不同类型的应用程序或服务,并将其关键指标信息转换为Prometheus可识别格式,以便进行统一管理和监控。

这三个组件通常一起使用,构建一个完整而强大的监控和指标收集解决方案。通过Prometheus收集各种指标数据,使用Grafana创建仪表盘展示这些数据,并使用Exporter连接到各种应用程序或系统以获取特定指标数据。这样就能实现对系统性能、资源利用率、错误率等关键指标的监控和可视化展示。

Prometheus、Grafana和Report组件是什么?

一、prometheus

1、下载安装包

2、解压

3、移动位置并重命名

4、修改配置文件

5、配置系统启动文件

6、启动服务

7、设置开机自启

8、查看端口是否启动

9、页面访问

二、Exporter

1、下载安装包

2、解压

3、移动位置并重命名

4、配置系统启动文件

5、启动服务

6、设置开机自启

7、查看端口是否启动

8、页面访问

9、把exporter的配置加到Prometheus服务端的配置文件里

10、重启prometheus

11、访问Prometheus页面,可以看到多了个监控任务

三、Grafana可视化工具

1、下载安装包

2、解压

3、移动位置并重命名

4、配置系统启动文件

5、启动服务

6、设置开机自启

7、查看端口是否启动

8、页面访问

9、配置数据源

10、导入grafana监控模板


一、prometheus

1、下载安装包

wget https://mirrors.tuna.tsinghua.edu.cn/github-release/prometheus/prometheus/LatestRelease/prometheus-2.49.1.linux-amd64.tar.gz

2、解压

tar -zxvf prometheus-2.49.1.linux-amd64.tar.gz

3、移动位置并重命名

注:移动位置并重命名这个可以自行修改,文件的路径与后面配置系统启动文件里的路径一致即可。

mv prometheus-2.49.1.linux-amd64 /usr/local/prometheus

4、修改配置文件

cd /usr/local/prometheus/

vim prometheus.yml

进入编辑模式,

修改 :① 新增一行 scrape_timeout: 10s ②最后改成自己的ip和端口

:wq 保存退出

5、配置系统启动文件

vim /usr/lib/systemd/system/prometheus.service (默认没有这个文件,编辑保存后会自己生成)

贴入如下内容

[Unit]

Description=Prometheus Server

Documentation=Prometheus - Monitoring system & time series database

After=network.target

[Service]

Type=simple

ExecStart=/usr/local/prometheus/prometheus

--config.file=/usr/local/prometheus/prometheus.yml

--storage.tsdb.path=/usr/local/prometheus/data/

--storage.tsdb.retention=15d

--web.enable-lifecycle

ExecReload=/bin/kill -HUP $MAINPID

Restart=on-failure

[Install]

WantedBy=multi-user.target

然后保存退出

6、启动服务

systemctl start prometheus

7、设置开机自启

systemctl enable prometheus

8、查看端口是否启动

netstat -anput | grep 9090

如下正常启动

9、页面访问

ip:端口

进入 Prometheus 的 Web UI 界面

点击页面的 Status -> Targets,如看到 Target 状态都为 UP,说明 Prometheus 能正常采集到数据

二、Exporter

1、下载安装包

wget https://github.com/prometheus/node_exporter/releases/download/v1.6.0/node_exporter-1.6.0.linux-amd64.tar.gz

或者把直接下载好的包传到服务器上

2、解压

tar -zxvf node_exporter-1.7.0.linux-amd64.tar.gz

3、移动位置并重命名

注:移动位置并重命名这个可以自行修改,文件的路径与后面配置系统启动文件里的路径一致即可。

mv node_exporter-1.7.0.linux-amd64 /usr/local/prometheus_node

4、配置系统启动文件

vim /usr/lib/systemd/system/node_exporter.service(默认没有这个文件,如果有的话可以把内容都清了贴下面的)

把下面的都贴进文件里,然后保存退出。

[Unit]

Description=node_exporter

Documentation=Prometheus - Monitoring system & time series database

After=network.target

[Service]

Type=simple

ExecStart=/usr/local/prometheus_node/node_exporter

--collector.ntp

--collector.mountstats

--collector.systemd

--collector.tcpstat

ExecReload=/bin/kill -HUP $MAINPID

Restart=on-failure

[Install]

WantedBy=multi-user.target

5、启动服务

systemctl restart node_exporter

6、设置开机自启

systemctl enable node_exporter

7、查看端口是否启动

netstat -anput | grep 9100

如下正常启动

8、页面访问

ip:端口 (端口默认是9100)

点击Metrics,可以看到监控的信息

9、把exporter的配置加到Prometheus服务端的配置文件里

#进入prometheus的配置文件中

vim /usr/local/prometheus/prometheus.yml

#添加以下几行,到最后

- job_name: 'node_exporter'

static_configs:

- targets: ["你的ip:9100"]

保存退出。

10、重启prometheus

systemctl restart prometheus

11、访问Prometheus页面,可以看到多了个监控任务

三、Grafana可视化工具

1、下载安装包

地址:Download Grafana | Grafana Labs

根据自己需要,选择版本,下载tar包或者rpm,我下载的是中间的tar包

wget https://dl.grafana.com/enterprise/release/grafana-enterprise-10.2.3.linux-amd64.tar.gz

2、解压

tar -zxvf grafana-enterprise-10.2.3.linux-amd64.tar.gz

3、移动位置并重命名

mv grafana-v10.2.3 /usr/local/grafana

4、配置系统启动文件

vim /usr/lib/systemd/system/grafana.service (默认没有这个文件,编辑保存后会自己生成)

添加如下内容,保存退出

[Unit]

Description=Grafana instance

After=network.target

[Service]

Type=simple

WorkingDirectory=/usr/local/grafana/

ExecStart=/usr/local/grafana/bin/grafana-server

Restart=always

[Install]

WantedBy=multi-user.target

5、启动服务

systemctl restart grafana

6、设置开机自启

systemctl enable grafana

7、查看端口是否启动

netstat -anput | grep 3000 (默认端口3000)

8、页面访问

ip:端口

默认账号密码都为:admin

登录后可以skip跳过设置新密码,也可以自行修改

9、配置数据源

我们把 Prometheus 服务器收集的数据做为一个数据源添加到 grafana,让 grafana 可以得到 Prometheus 的数据并进行可视化展示。

点击创建数据源

点击Prometheus

编辑名字、输入要监控的系统ip和端口,也就是部署的Prometheus的ip和端口

http方法选GET ,然后点击保存测试

http方法选GET ,然后点击保存测试

10、导入grafana监控模板

官方模板地址:Dashboards | Grafana Labs

进入官网,往下拉,Data Source 选择Prometheus,右侧会展示很多模板,根据自己的需求选择;

选择某个模板,点进去,复制id或者下载json文件,我图方便用的复制id

右上角添加按钮,点击import dashboard 

导入下载的jason文件或者 粘贴复制的模板ID,然后load

load之后会跳到下个页面,可以修改名字,然后选择模板要应用的数据源,然后import

就可以看到硬件资源消耗情况的可视化图表了

更详细的内容可参考:【Linux】部署Prometheus + Grafana简介、监控及设置告警详细操作(多种方式安装,亲测无问题)_linux系统安装promethus grafana-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ChatGPT+Midjourney+闲鱼赚钱方法实战探索

最近天天在朋友群内看到朋友接单(出售提示词,图片),轻轻松松半小时就赚200-300,特意探索了一下相关玩法,总结出一套ChatGPTMidjourney闲鱼赚钱方法,主打的是易上手,有可操作性! 具体…

03. 静态路由

文章目录 一. 静态路由概述1.1. 概述1.2. 路由信息获取方式1.3. 路由表的参数1.4. 路由协议的优先级1.5. 最优路由条目优先1.6. 最长前缀匹配原则 二. 实验实操2.1. 实验1:静态路由2.1.1. 实验目的2.1.2. 实验拓扑图2.1.3. 实验步骤(1)配置网…

计算机网络的体系结构的各层在整个过程中起到什么作用?

ps:本文章的图片内容来源都是来自于湖科大教书匠的视频,声明:仅供自己复习,里面加上了自己的理解 这里附上视频链接地址:1.6 计算机网络体系结构(4)—专用术语_哔哩哔哩_bilibili 目录 &#x…

uniapp上传音频文件到服务器

视频教程地址: 【uniapp录音上传组件,将录音上传到django服务器】 https://www.bilibili.com/video/BV1wi4y1p7FL/?share_sourcecopy_web&vd_sourcee66c0e33402a09ca7ae1f0ed3d5ecf7c uniapp 录制音频文件上传到django服务器保存到服务器 &#xf…

binary_search_tree的介绍与实现(二叉搜索树精美图示详解哦)

二叉搜搜索树 引言二叉搜索树的介绍二叉搜索树的实现框架默认成员函数构造析构赋值重载 InsertR(插入)EraseR(删除)SearchR(查找) 源码概览总结 引言 在C语言部分,我们已经认识了树与二叉树的结…

docker的资源限制(cgroup)

前瞻 Docker 通过 Cgroup 来控制容器使用的资源配额,包括 CPU、内存、磁盘三大方面, 基本覆盖了常见的资源配额和使用量控制。 Cgroup 是 ControlGroups 的缩写,是 Linux 内核提供的一种可以限制、记录、隔离进程组所使用的物理资源(如 CPU、…

Linux文件管理技术实践

shell shell的种类(了解) shell是用于和Linux内核进行交互的一个程序,他的功能和window系统下的cmd是一样的。而且shell的种类也有很多常见的有c shell、bash shell、Korn shell等等。而本文就是使用Linux最常见的bash shell对Linux常见指令展开探讨。 内置shell…

【大模型研究】(1):从零开始部署书生·浦语2-20B大模型,使用fastchat和webui部署测试,autodl申请2张显卡,占用显存40G可以运行

1,演示视频 https://www.bilibili.com/video/BV1pT4y1h7Af/ 【大模型研究】(1):从零开始部署书生浦语2-20B大模型,使用fastchat和webui部署测试,autodl申请2张显卡,占用显存40G可以运行 2&…

重磅!证监会回应股市波动!2万亿元救市计划正在商榷!将提振比特币?

最近这段时间,国内资本市场震荡走弱、波动加大,一些投资者深感忧虑。多家机构表示,市场波动已引起高层的重视。 继1月23日,证监会党委扩大会议从宏观层面提出资本市场建设发力重点后,1月24日证监会副主席王建军的一席采…

工作软技能第一弹,关于职场沟通、成长的那些事

引言 在谈绩效后,我收获了一些心得,在此梳理出来,加深印象并且共勉 基本信息 在步入职场后,你可能跟我一样虽然技术水平有在上升,但是在处理一些事情上可能偶尔没能获得预期的成果。我在通过绩效沟通以及自我反思后…

centos系统安装Ward服务器监控工具

简介 Ward是一个简约美观多系统支持的服务器监控面板 安装 1.首先安装jdk yum install java-1.8.0-openjdk-devel.x86_64 2.下载jar wget 3.启动 java -jar ward-1.8.8.jar 体验 浏览器输入 http://192.168.168.110:4000/ 设置服务名设置为:myserver 端口号:5000 点击…

php实现多进程的几种方式

目录 一:使用pcntl扩展库 二:使用Swoole扩展 三:使用多进程模式PHP-FPM 在PHP中实现多进程主要有以下几种方式: 一:使用pcntl扩展库 pcntl扩展库提供了多线程相关的函数,如pcntl_fork()用于创建子进程…

探索设计模式的魅力:深入理解面向对象设计的深层原则与思维

如何同时提高一个软件系统的可维护性 和 可复用性是面向对象对象要解决的核心问题。 通过学习和应用设计模式,可以更加深入地理解面向对象的设计理念,从而帮助设计师改善自己的系统设计。但是,设计模式并不能够提供具有普遍性的设计指导原则。…

C#用DateAndTime.DateDiff方法和TimeSpan分别计算时间间隔

目录 一、计算时间间隔的方法 1.用DateAndTime.DateDiff方法计算时间间隔 2.使用TimeSpan获取日期时间间隔 二、实例 1.示例一:用DateAndTime.DateDiff方法计算时间间隔 2.示例二:使用TimeSpan获取日期时间间隔 一、计算时间间隔的方法 1.用Date…

vue3 组件通信 mitt

mitt 安装 pnpm add mitttypescript 在 tsconfig.json 中设置 “strict”: true {"compilerOptions": {"strict": true,} }使用 导出 emitter src/utils/mitt/index.ts import mitt from mitttype Events {get-name: string }export const emitter …

go-zero 统一返回

1、整体目录结构 1、全局处理主入口 package manageimport ("net/http""github.com/zeromicro/go-zero/rest/httpx" )type Body struct {Code int json:"code"Message string json:"message"Result interface{} jso…

每日一道Java面试题:方法重载与方法重写,这把指定让你明明白白!

写在开头 请聊一聊Java中方法的重写和重载? 这个问题应该是各大厂面试时问的最多的话题之一了,它们几乎贯穿了我们日常的开发工作,在过往的博客中我们多多少少都提到过重载与重写,而今天我们就一起来详细的学习一下这二者的功能与…

arcgis实现截图/截屏功能

arcgis实现截图/截屏功能 文章目录 arcgis实现截图/截屏功能前言效果展示相关代码 前言 本篇将使用arcgis实现截图/截屏功能&#xff0c;类似于qq截图 效果展示 相关代码 <!DOCTYPE html> <html> <head><meta charset"utf-8"><meta nam…

InnoDB索引

B树与B树 索引的数据结构就是B树&#xff0c;它的叶子节点存储数据(数据页)&#xff0c;非叶子节点存储索引(索引页)。 所以索引走树&#xff0c;全表扫走叶子节点的单向链表(mysql里优化成双向) 二级索引页(非主键) 多个目录项记录 目录项记录 每页记录的最小值 主键值 …

Linux系统下常用软件安装汇总,包括mysql,java,git,redis等

01.环境搭建 1.安装列表 MySQL 5.7.11 Java 1.8 Apache Maven 3.6 tomcat8.5 git Redis Nginx python docker 2.安装mysql 1.拷贝mysql安装文件到Linux的某个目录下 2.解压Linux安装包&#xff1a;tar -xvzf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz 3.进入解压后…