Ubuntu20.04安装Prometheus监控系统

环境准备:
服务器名称内网IP公网IP
Prometheus服务器192.168.0.23047.119.21.167
Grafana服务器192.168.0.23147.119.22.8
被监控服务器192.168.0.23247.119.22.82

更改主机名方便辨认

hostnamectl set-hostname prometheus
hostnamectl set-hostname grafana
hostnamectl set-hostname agent

三台都互相绑定IP与主机名

vim /etc/hosts
​
192.168.0.230 prometheus
192.168.0.231 grafana
192.168.0.232 agent

时间同步

检查时间:
timedatectl status
​
修改时区
timedatectl set-timezone Asia/Shanghai

关闭防火墙

输入以下命令以禁用防火墙服务:
systemctl stop ufw.service
​
输入以下命令以确认防火墙服务已关闭:
systemctl disable ufw.service
​
输入以下命令以确认防火墙状态:
ufw status
如果终端输出“Status: inactive”,则表示防火墙已成功关闭。

1、安装Prometheus

从 https://prometheus.io/download/ 下载相应版本,安装到服务器上,官网提供的是二进制版,解压就能用,不需要编译

下载tar包
wget https://github.com/prometheus/prometheus/releases/download/v2.53.0/prometheus-2.53.0.linux-amd64.tar.gz
​
解压
tar xf prometheus-2.53.0.linux-amd64.tar.gz -C /usr/local/
mv /usr/local/prometheus-2.53.0.linux-amd64/ /usr/local/prometheus
​
直接使用默认配置文件启动
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
​
确认端口(9090)
lsof -i:9090

2、Prometheus界面

通过浏览器访问http://服务器IP:9090就可以访问到prometheus的主界面

默认只监控了本机一台,点Status --》点Targets --》可以看到只监控了本机

监控的本机信息如下:

3、主机数据展示

在web主界面可以通过关键字查询监控项

比如输入关键词:process_cpu_seconds_total

点击Execute执行,就会看出相应的图形数据

4、监控远程Linux主机

① 在远程linux主机(被监控端agent)上安装node_exporter组件,下载地址: https://prometheus.io/download/(可自行下载)

下载tar包
wget https://tongyf.oss-cn-shenzhen.aliyuncs.com/node_exporter-1.8.1.linux-amd64.tar.gz
​
解压
tar xf node_exporter-1.8.1.linux-amd64.tar.gz -C /usr/local/
mv /usr/local/node_exporter-1.8.1.linux-amd64/ /usr/local/node_exporter
​
里面就一个启动命令node_exporter,可以直接使用此命令启动
nohup /usr/local/node_exporter/node_exporter &
​
确认端口9100:
lsof -i:9100

扩展: nohup命令: 如果把启动node_exporter的终端给关闭,那么进程也会随之关闭。nohup命令会帮你解决这个问题。

② 通过浏览器访问http://被监控端IP:9100/metrics就可以查看到node_exporter在被监控端收集的监控信息

③ 回到prometheus服务器的配置文件里添加被监控机器的配置段

在主配置文件最后加上下面三行
[root@prometheus]# vim /usr/local/prometheus/prometheus.yml
- job_name: 'agent' # 取一个job名称来代表被监控的机器
static_configs:
- targets: ['192.168.0.232:9100'] # 这里改成被监控机器的IP,后面端口接9100
关闭服务
pkill prometheus
​
确认端口没有进程占用
lsof -i:9090
​
重启服务
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
​
确认端口被占用,说明重启成功
lsof -i:9090

④ 回到web管理界面 --》点Status --》点Targets --》可以看到多了一台监控目标

5、监控远程MySQL

① 在被管理机agent1上安装mysqld_exporter组件,下载地址: https://prometheus.io/download/

下载tar包
wget https://tongyf.oss-cn-shenzhen.aliyuncs.com/mysqld_exporter-0.15.1.linux-amd64.tar.gz
​
解压
tar xf mysqld_exporter-0.15.1.linux-amd64.tar.gz -C /usr/local/
mv /usr/local/mysqld_exporter-0.15.1.linux-amd64/ /usr/local/mysqld_exporter

切换目录至/usr/local/mysqld_exporter下,新增配置文件.my-exporter.cnf

[client]
user=exporter 
password=Exporter1234!
host=127.0.0.1
port=3306

根据配置文件启动mysqld_exporter,并将数据暴露到9104端口,并且通过参数指定暴露的数据

./mysqld_exporter --web.listen-address=localhost:9104 --config.my-cnf=/usr/local/mysqld_exporter/.my-exporter.cnf --collect.auto_increment.columns --collect.binlog_size --collect.global_status --collect.engine_innodb_status --collect.global_variables --collect.info_schema.innodb_metrics --collect.info_schema.innodb_tablespaces --collect.info_schema.innodb_cmp --collect.info_schema.innodb_cmpmem --collect.info_schema.processlist --collect.info_schema.query_response_time --collect.info_schema.tables --collect.info_schema.tablestats --collect.info_schema.userstats --collect.perf_schema.eventswaits --collect.perf_schema.file_events --collect.perf_schema.indexiowaits --collect.perf_schema.tableiowaits --collect.perf_schema.tablelocks

注册到系统服务

vim /etc/systemd/system/mysqld_exporter.service

[Unit]
Description=mysqld_exporter
After=network.target
[Service]
Type=simple
User=mysqld_exporter
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my-exporter.cnf
Restart=on-failure
[Install]
WantedBy=multi-user.target

以服务的方式进行启动管理

添加用户
useradd --no-create-home --shell /bin/false mysqld_exporter
​
为用户赋予文件夹权限
chown -R mysqld_exporter:mysqld_exporter /usr/local/mysqld_exporter
​
重新加载系统配置
systemctl daemon-reload
​
开机启动
systemctl enable mysqld_exporter.service
​
启动服务
systemctl start mysqld_exporter
​
查看状态
systemctl status mysqld_exporter

最后修改prometheus的配置文件,并重启

在主配置文件最后加上下面三行​
[root@P=prometheus~]# vim /usr/local/prometheus/prometheus.yml
- job_name: 'mysql' # 取一个job名称来代表被监控的机器
static_configs:
- targets: ['192.168.0.232:9104'] # 这里改成被监控机器的IP,后面端口接9104
​关闭服务
pkill prometheus
​
确认端口没有进程占用
lsof -i:9090
​
重启服务
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
​
确认端口被占用,说明重启成功
lsof -i:9090

回到web管理界面 --》点Status --》点Targets --》可以看到多了一台监控目标

四、Grafana可视化图形工具

① 在grafana服务器上安装grafana

下载并安装

apt-get install -y adduser libfontconfig1 musl
wget https://dl.grafana.com/enterprise/release/grafana-enterprise_11.1.0_amd64.deb
dpkg -i grafana-enterprise_11.1.0_amd64.deb

出现报错

dpkg: error processing package ...

原因:可能是dpkg管理的包信息出现了损坏

解决方法:通过sudo apt -f install进行修复

mv /var/lib/dpkg/info/ /var/lib/dpkg/info_old/
mkdir /var/lib/dpkg/info/
apt-get update
apt-get -f install
mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old/
rm -rf /var/lib/dpkg/info
mv /var/lib/dpkg/info_old/ /var/lib/dpkg/info/

启动

systemctl daemon-reload
systemctl start grafana-server.service
systemctl status grafana-server.service

配置开展自动启动

systemctl enable grafana-server.service

grafana汉化(在配置文件中注释并添加如下内容)

vim /etc/grafana/grafana.ini
#default_language = en-US
default_language = zh-Hans

重启服务,然后登陆查看

systemctl restart grafana-server.service

② 通过浏览器访问 http:// grafana**服务器IP:3000**就到了登录界面,使用默认的admin用户,admin密码就可以登陆了

③ 下面我们把prometheus服务器收集的数据做为一个数据源添加到grafana,让grafana可以得到prometheus的数据。

登陆之后选择,左侧Configuration里面的DataSources

④点击Grafana首页侧边栏,Create DashBoard创建仪表盘

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

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

相关文章

SAS:quote函数合dhms函数

quote函数 dhms函数 中间停药时的给药日期确定

stm32 No traget connected/debug识别不到串口的问题

关于stm32串口识别不到,第一步先确定是否线接错(stlink与stm32接口对应),如果确认接线没有问题的话,可以使用以下方法,成功率较高。 首先将stlink的boot0置1,就是把跳线帽换到高电平这一侧&…

投标书制作

一、投标书的基本要求l . 帮助与你的标书读者沟通。从这个角度上来讲,标书是一篇针对用户需求的论文,逻辑结构和语言一定要清晰、可读。考虑到评标专家一般都具有较好的学术经验,其中很多还是教授、博导,投标的语言要针对读者的阅…

国产固态光耦在工业照明领域的应用

工业照明作为工厂和生产设施中不可或缺的一部分,其效率和安全性直接影响到生产运行的顺畅性和员工的工作环境。国产固态光耦作为现代工业照明技术的重要组成部分,在提升照明系统效率和安全性方面发挥着关键作用。本文将深入探讨国产固态光耦在工业照明领…

中科驭数第三代DPU芯片K2-Pro,专为数据中心打造的“六边形战士”

近日,中科驭数重磅发布第三代DPU芯片K2-Pro,是国内首颗面向量产的全功能芯片! K2-Pro采用自主研发的Kernel Processing Unit架构,集网络、存储、安全及计算等多业务卸载功能于一体,包处理速率翻倍至80Mpps&#xff0c…

第4章,在 PyCharm 中创建、打开、关闭项目的操作

在 PyCharm 中创建、打开、关闭项目的操作 在PyCharm中创建、打开和关闭项目的操作步骤。以下是每个操作的步骤说明,以及在PyCharm界面中可能对应的区域: 1、创建新项目 1)启动PyCharm: 打开PyCharm IDE。 2)创建新…

餐饮点餐的简单MySQL集合

ER图 模型图(没有进行排序,混乱) DDL和DML /* Navicat MySQL Data TransferSource Server : Mylink Source Server Version : 50726 Source Host : localhost:3306 Source Database : schooldbTarget Server Type …

es学习初步总结

看api看麻了不知道意义在哪里,所以就简单总结点我觉得有用的东西 基本数据结构解析 分为了文档,索引和映射 索引可以理解为一张表,映射描述了索引的数据结构,而文档就是一个个具体的行 所以一般我们需要在申明索引的时候同时申…

游戏录屏怎么录?学会这3个方法,轻松搞定

在数字时代,游戏录屏已成为游戏爱好者们热衷的一项活动。无论是为了记录自己的精彩操作,还是为了分享给朋友或粉丝,游戏录屏都为我们提供了一个全新的视角去欣赏和回味游戏带来的乐趣。 想要录制出精彩的游戏视频,一款好用的游戏…

error: RPC failed: HTTP 413 curl 22 The reguested URL returned error: 413

当你用sourcetree 提交代码 报错 RPC failed: HTTP 413 curl 22 The reguested URL returned error: 413 4731719459468_.pic.jpg 1、修改缓存区大小 git config --global http.postBuffer 524288000 2、如果是自己公司搭建的git ,让人看看服务端有没有限制 3、尝试…

Doris:倒排索引

目录 一、倒排索引介绍 二、倒排索引语法 2.1建表时创建倒排索引 2.2 已有表增加倒排索引 2.3 删除索引 三、使用倒排索引 3.1 创建带有倒排索引的表 3.2 插入数据 3.3利用倒排索引查询 3.4 自定义分词 一、倒排索引介绍 倒排索引,是信息检索领域常用的索…

Node.js实验指南:完善接口服务器

上一章接口服务器,我们实现了一个异常简单的接口服务器。可能很多人会感觉有点不真实的感觉,接口这么简单吗?没错,就这么简单。 我们在真实项目的前后端对接中,调用接口,拿到数据,就是如此而已…

文心一言 VS 讯飞星火 VS chatgpt (291)-- 算法导论21.3 4题

四、假设想要增加一个 PRINT-SET(x) 操作,它是对于给定的结点 x 打印出 x 所在集合的所有成员,顺序可以任意。如何对一棵不相交集合森林的每个结点仅增加一个属性,使得 PRINT-SET(x) 所花费的时间同 x 所在集合元素的个数呈线性关系&#xff…

金顺心贸易有限公司简介

金顺心贸易有限公司成立于2015年,注册地位于风景如画的广西壮族自治区防城港市东兴市。 金顺心贸易如他们的名字一样,有着实实在在的业绩和口碑的。他们专注于国际贸易,主营越南进口食品:果汁饮料、春卷皮、调味品、汤底、米粉、…

定制聚四氟乙烯架子离心管架子消解管样品架

南京瑞尼克定制离心管架子、消解管架子、微波罐架子等,各种实验室所需器皿样品架。 我司聚四氟乙烯架子优势: 1.耐强腐蚀(耐各种强酸强碱和有机溶剂) 2.耐高低温:-200至250℃ 3.工艺精制,尺寸&#xff0…

算法设计与分析--考试真题

分布式算法试题汇总选择题简答题算法题 2013级试题2019级试题2021年秋考卷 根据考试范围找相应题目做。 分布式算法试题汇总 选择题 下述说法错误的是___ A 异步系统中的消息延迟是不确定的 B 分布式算法的消息复杂性是指在所有合法的执行上发送消息总数的最大值 C 在一个异步…

如何实现高精度PCB切割?— 在线式激光切割机解决方案

在线式PCB精密激光切割机是一种专门用于电子行业中印刷电路板(PCB)切割的高精度设备。以下是关于在线式PCB精密激光切割机的详细信息和特点: 1. 工作原理: 在线式PCB精密激光切割机主要通过激光束的高能量密度对PCB板进行瞬时加热…

新手必备!短视频剪辑常用的18个技巧——剪映篇

导入素材:这里我们可以选择自己拍摄好的素材(图片、视频或录制好的音频),按照顺序导入剪辑区剪辑。这一步是剪辑的基础,确定剪辑的大体思路与成片框架!别忽略了,剪映官方素材库提供的素材&#…

私域流量的深度解析与电商应用

一、私域流量的核心价值 在当今数字化时代,流量成为了企业发展的重要资源。与公域流量相比,私域流量以其独有的私有性和可复用性,为企业提供了与用户建立深度联系的机会。私域流量不仅有助于企业精准触达目标用户,还能通过数据分…

python办公自动化之excel

用到的库:openpyxl 实现效果:读取单元格的值,写入单元格 代码: import openpyxl # 打开现有工作簿 workbookopenpyxl.load_workbook(现有工作簿.xlsx) # 选择一个工作表 sheetworkbook[交易表] # 读取单元格的值 cell_valueshe…