Linux:Prometheus的源码包安装及操作(2)

news2025/1/5 9:09:36

环境介绍

三台centos 7系统,运行内存都2G

1.prometheus监控服务器:192.168.6.1    主机名:pm

2.grafana展示服务器:192.168.6.2                主机名:gr        

3.被监控服务器:192.168.6.3                        主机名:ag

上面均可连接外网 


1.初始化服务器

同时修改三台主机的hosts

vim /etc/hosts

在末尾添加

192.168.6.1 pr
192.168.6.2 gr
192.168.6.3 ag

根据你的ip去配置,三台都添加

时间同步,三台都要去配置,以下操作三台主机都要做

yum -y install ntp
 ntpdate -u times.aliyun.com

2.安装Prometheus

官网下载安装包

https://github.com/prometheus/prometheus/releases/download/v2.51.0/prometheus-2.51.0.linux-amd64.tar.gz

下载链接         

下载完再上传到服务器上

tar xf prometheus-2.50.1.linux-amd64.tar.gz
 mv prometheus-2.50.1.linux-amd64 /usr/local/prometheus

使用他默认的配置文件就行

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

 

lsof -i:9090

访问方法:服务器ip:9090

自动就跳转到这个上面了

这个就是监控的主机 

服务器ip:9090/metrics 

这个就是被监控机的数据,他默认是监控自己的,所以在自己这个上面就有个这个

 现在我再回到主界面

其实他现在就以及可以去收集数据进行一个简单的展示了,现在我去监控一下cpu

比如net网络

直接就有了

这样就可以了 


3.Prometheus监控其他主机 

在其他主机上安装node_exporter组件,再拿Prometheus收集信息机可以得到数据进行监控了

在被监控主机上安装node组件,这样普罗米修斯就可以获取到其他主机数据了

https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz

下载好了放到被监控(ag)Linux系统中 

 他不能监控其他服务,他只能监控系统,比如网络,cpu,内存等信息

再次注意这是ag主机中的操作: 

tar xf node_exporter-1.7.0.linux-amd64.tar.gz
mv node_exporter-1.7.0.linux-amd64 /usr/local/node_exporter

 

期待的node_exporter

nohup /usr/local/node_exporter/node_exporter &

运行成功

但是他现在和我的普罗米修斯还没有任何关系,我目前只是安装个小软件把他运行起来了,我需要去普罗米修斯的配置文件里去修改一下文件,让他来收集咱新搭建的这个node组件所产生的信息,就可以达到持续监控的效果

现在再回到pr主机也就刚刚部署Prometheus主机

vim /usr/local/prometheus/prometheus.yml

添加这三行

  - job_name: "ag"    # 起个名
    static_configs:     # 静态配置
      - targets: ["192.168.6.3:9100"]   # 根据组件的端口号进行添加

配置完了之后再去重启 Prometheus

pkill prometheus
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

只要有9090就行了

再去web页面

这样就成功监控了


4.Prometheus监控mysql 

现在我想在ag主机上部署个mysql并监控,直接用node插件进行监控肯定是不行的,怎么办呢?我直接下载个mysql插件就可以进行监控了

https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz

下载了之后直接放到要监控的主机上也就是ag主机,办法和node插件差不多,我的mysql也在ag主机上

 先安装个mysql我这里使用的是mariadb

yum -y install mariadb*
systemctl start mariadb
systemctl enable mariadb
mysql

 我们进来之后要创建一个账户,因为监控系统需要一个账户才能进行收集信息

grant select,replication client,process ON *.* to 'mysql_monitor'@'localhost' identified by '123';

用户名为 mysql_monitor   密码为123  只可以在本地登录

flush privileges;
exit;

 这样mysql内的设置就结束了,去部署组件就行了

tar xf mysqld_exporter-0.15.1.linux-amd64.tar.gz 
mv mysqld_exporter-0.15.1.linux-amd64 /usr/local/mysqld_exporter

 解压完之后还要去调整一下文件内容、去填写账户信息

vim /usr/local/mysqld_exporter/.my.cnf

写入内容

[clinet]
user=mysql_monitor
password=123

这个文件是手工创建的,默认是没有的

这样就可以去启动mysql监控组件了

nohup /usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf &

只要有9104就配置成功了

和node一样,在被监控机上配置好了,还需要去Prometheus主机上设置一下监控就可以了

回到Prometheus主机上

pkill prometheus

再去编辑他的一个配置文件

vim /usr/local/prometheus/prometheus.yml 

和node组件基本一样,就是换个名,换个监控位置

 - job_name: "mariadb"    # 起个名
    static_configs:     # 静态配置
      - targets: ["192.168.6.3:9104"]   # 根据组件的端口号进行添加
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

一定要看看有没有9090是否启动成功

再回到prometheus的web页面查看,可以看到监控成功了


5.安装grafana

下载 Grafana |格拉法纳实验室icon-default.png?t=N7T8https://grafana.com/grafana/download官方下载地址

https://dl.grafana.com/enterprise/release/grafana-enterprise-10.4.0-1.x86_64.rpm

这个就是rpm的地址

下载放入Linux,如果你Linux有网的话可以直接使用

yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-10.4.0-1.x86_64.rpm

这样也是可以的,可能就是很慢,在Windows上可以用下载工具

把包放入gr服务器也就是192.168.6.2

yum -y install ./grafana-enterprise-10.4.0-1.x86_64.rpm
systemctl start grafana-server
systemctl enable grafana-server

只要3000端口启动了就行

访问地址:服务器ip:3000

 

账户密码都是admin

再设置新密码

这样就进来了

现在我们应该让他和Prometheus去联合一下,Prometheus和node等插件进行收集,使用grafana进行展示,所以我现在应该把Prometheus和grafana联合起来


6.在grafana添加Prometheus数据源

添加数据源

选择Prometheus

这里主要修改的就是名字和ip

下面根据自己的情况去选择,我们这里都用默认的了

直接保存就行了

在这里就可以看到数据源

这样数据源就添加成功了 


7. 设置数据源的图形化仪表板

有了数据源,就可以去创建仪表盘

 创建一个仪表盘

 

这里选择数据源

现在我来添加一个

 

这里是选择要监控的数据

我这里选择node插件的数据,也就是监控ag主机上的信息,选择完然后点击后面的Run queries

这里可以选择监控多个数据 

我这选择的是1分钟5分钟15分钟内的负载情况,这个就是ag主机上的一个信息

此外在要监控的数据条目以外,还可以去设置简单的表达式,比如通过主机ip或者主机名称去查看或者不查看某些内容

这个意思就是查看ip为192.168.6.3:9100的主机

这个就是查看主机名为ag的主机信息

这个就是不查看主机为ag的信息

此外除了这几个还有好多条件

点击这个就可以切换仪表板

有非常多的仪表盘

下面这些就对仪表盘的参数设置,我这里没有过多的要求,就全使用默认了,实际情况要跟据自己的要求去设置

设置完了就点击apply

这个相当于一个小组,组内可以有好多个仪表盘,设置好了之后再去进行保存

保存即可

 

后期直接点进去就可以看到当初设置的仪表盘了


8.导入仪表盘的模板

我在前面还安装了mysql,于是我下载了个mysql的监控模板,接下来演示一下,如果导入现成的模板 

vim /etc/grafana/grafana.ini

在末尾添加

[dashboards.json]
enabled = true
path = /var/lib/grafana/dashboards

 把github上的仪表盘下载下来

GitHub - percona/grafana-dashboards: PMM dashboards for database monitoring

下载完了再解压

同时把这个 文件整个文件放入Linux的/var/lib/grafana/中

cd /var/lib/grafana/

放文件 grafana-dashboards-main

mkdir dashboards
cp -rf grafana-dashboards-main/dashboards/MySQL/* /var/lib/grafana/dashboards
systemctl restart grafana-server.service

再去grafana的web界面

选择MySQL_Instances_Overview.json

这时模板就导入成功了

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

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

相关文章

产生三相任意相位差和任意相同占空比的PWM波形

整体思路 将整个PWM周期分为若干个小循环周期。划分的目的就是在任意小循环周期中,任何一相都不会发生0 --> 1 --> 0或1 --> 0 --> 1 电平变化超过两次的情况。 至少需要两个定时器,一个通用/高级定时器具有输出比较功能,另一…

力扣--最小覆盖子串--双端队列+滑动窗口

滑动窗口思路(双端队列实现): 可以参考一下:力扣hot8---滑动窗口-CSDN博客以及力扣hot9---滑动窗口-CSDN博客。 使用滑动窗口有以下几个步骤:初始化双端队列(将s的前t_len个元素入队,此时检验是…

竞赛 - 基于机器视觉的图像拼接算法

前言 图像拼接在实际的应用场景很广,比如无人机航拍,遥感图像等等,图像拼接是进一步做图像理解基础步骤,拼接效果的好坏直接影响接下来的工作,所以一个好的图像拼接算法非常重要。 再举一个身边的例子吧,…

算法·动态规划Dynamic Programming

很多人听到动态规划或者什么dp数组了,或者是做到一道关于动态规划的题目时,就会有一种他很难且不好解决的恐惧心理,但是如果我们从基础的题目开始深入挖掘动规思想,在后边遇到动态规划的难题时就迎难而解了。  其实不然&#xff…

数据库关系运算理论:关系数据操作与关系完整性概念解析

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

王者荣耀使用的UDP通信,十几年编程没用过的协议

缘起 最近在查阅moba相关的资料时,看到了一篇王者荣耀的研发同学的技术分享,从文章中了解到王者荣耀的通信方式是UDP通信,回想到整个职业生涯,貌似并没有用过,今天特地整理下。 udp技术细节 udp协议 UDP协议叫做用…

PTA——1075 链表元素分类、1105 链表合并、1110 区块反转

1075 链表元素分类 解决代码 #include<bits/stdc.h> using namespace std; struct node{int v;int next; }; map<int,node> s; vector<vector<pair<int,int>>> ans(3); vector<pair<int,int>> w; int main(){int st,n,k;cin>>…

web容器导论

一、基础概念 1.Web容器是什么&#xff1f; 让我们先来简单回顾一下Web技术的发展历史&#xff0c;可以帮助你理解Web容器的由来。 早期的Web应用主要用于浏览新闻等静态页面&#xff0c;HTTP服务器&#xff08;比如Apache、Nginx&#xff09;向浏览器返回静态HTML&#xff…

【A-003】基于SSH的校园报刊亭进销存管理系统(含论文)

【A-003】基于SSH的校园报刊亭进销存管理系统&#xff08;含论文&#xff09; 开发环境&#xff1a; Eclipse/MyEclipse、Tomcat8、Jdk1.8 数据库&#xff1a; MySQL 适用于&#xff1a; 课程设计&#xff0c;毕业设计&#xff0c;学习等等 系统介绍 功能需求 系统架构图…

TCP协议 及 重要机制

目录 1.TCP 协议报文格式 1.1.端口号 1.2 首部长度 和 选项 1.3 保留位 1.4 检验和 1.5 32位序号和确认序号 2. TCP的重要机制 2.1 确认应答 2.2 超时重传 2.3 连接管理 2.3.1 三次握手 2.3.2 四次挥手 2.4 滑动窗口 2.5 流量控制 2.6 拥塞控制 2.7 延时应答 2…

投简历没回复?9位DBA公众号集结,快上车!

&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是【IT邦德】&#xff0c;江湖人称jeames007&#xff0c;10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】&#xff01;&#x1f61c;&#x1f61c;&#x1f61c; 中国DBA联盟(ACD…

蓝桥杯之简单数论冲刺

文章目录 取模快速幂 取模 这道题目有两个注意点&#xff1a; 1.当你的取模之后刚好等于0的话&#xff0c;后面就不用进行后面的计算 2.if sum detail[i] > q: 这个语句的等号也很重要 import os import sys# 请在此输入您的代码a,b,n map(int,input().split())week a*5 …

slab分配器

什么是slab分配器&#xff1f; 用户态程序可以使用malloc及其在C标准库中的相关函数申请内存&#xff1b;内核也需要经常分配内存&#xff0c;但无法使用标准库函数&#xff1b;linux内核中&#xff0c;伙伴分配器是一种页分配器&#xff0c;是以页为单位的&#xff0c;但这个…

全网良心开源知识库:AI学习者的宝藏之地

导语&#xff1a;在这个信息爆炸的时代&#xff0c;想要入门AI&#xff0c;找到最一流的学习资源并非易事。然而&#xff0c;有一个地方&#xff0c;能让你免费学习AI&#xff0c;获取最顶尖的知识&#xff0c;还能加入最优秀的AI学习圈。今天&#xff0c;我要向大家推荐的&…

05.自定义指令,插槽和路由配置

一、学习目标 1.自定义指令 基本语法&#xff08;全局、局部注册&#xff09;指令的值v-loading的指令封装 2.插槽 默认插槽具名插槽作用域插槽 3.综合案例&#xff1a;商品列表 MyTag组件封装MyTable组件封装 4.路由入门 单页应用程序路由VueRouter的基本使用 一、自…

大数据 - Spark系列《十四》- spark集群部署模式

Spark系列文章&#xff1a; 大数据 - Spark系列《一》- 从Hadoop到Spark&#xff1a;大数据计算引擎的演进-CSDN博客 大数据 - Spark系列《二》- 关于Spark在Idea中的一些常用配置-CSDN博客 大数据 - Spark系列《三》- 加载各种数据源创建RDD-CSDN博客 大数据 - Spark系列《…

C语言例3-35:长度运算的例子

长度运算符的表现形式&#xff1a; sizeof(数据类型符&#xff09; 或 sizeof(变量&#xff09; 长度运算符的优先级&#xff1a; 与单目算术运算符、单目逻辑运算符、自增和自减运算符的优先级相同。上述优先级相同的运算符的结合性都是从右至左。 长度运算的例子 代码如…

【漏洞复现】Progress Kemp LoadMaster 命令注入漏洞(CVE-2024-1212)

0x01 产品简介 Progress Kemp LoadMaster是一款高性能的应用交付控制器&#xff0c;具有可扩展性&#xff0c;支持实体硬件和虚拟机的负载均衡。它提供了当今应用服务所需的各种功能&#xff0c;包括深度用户验证、资安防护&#xff08;如WAF/IPS/DDoS防护&#xff09;以及零信…

如何写出干净的 Git Commit

大家好&#xff0c;我是楷鹏。 写一份干净的 Git Commit&#xff0c;不仅赏心悦目&#xff0c;也有诸多好处&#xff0c;比如 为项目或者仓库生成 change log方便在其他一些 Git 工具使用&#xff0c;比如 CI/CD、代码协作和审计平台、发版工具等 这是 AngularJS 仓库的 Git …

【C++ leetcode】双指针问题(续)

3. 202 .快乐数 题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为&#xff1a; 对于一个正整数&#xff0c;每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1&#xff0c;也可能是 无限循环 但始终变不到 1。如果这个过程 结…