前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >普罗米修斯Prometheus监控神器

普罗米修斯Prometheus监控神器

作者头像
全栈程序员站长
发布于 2022-09-09 02:55:40
发布于 2022-09-09 02:55:40
2K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。


一、普罗米修斯Prometheus监控系统

1.1实验环境

  • 更改主机名
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
hostnamectl set-hostname prometheus
 su
hostnamectl set-hostname agent
 su
hostnamectl set-hostname grafana
 su
  • 关闭防火墙
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
  • 设置/etc/hosts文件,配置映射
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim /etc/hosts
192.168.27.136 prometheus
192.168.27.138 agent
192.168.27.139 grafana
  • 时间同步
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ntpdate ntp1.aliyun.com

1.2安装普罗米修斯

  • 安装
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@prometheus ~]# cd /opt
[root@prometheus opt]# rz -E //将prometheus软件包上传到/opt目录下
[root@prometheus opt]# tar zxvf prometheus-2.5.0.linux-amd64.tar.gz -C /usr/local
[root@prometheus opt]# mv /usr/local/prometheus-2.5.0.linux-amd64/ /usr/local/prometheus
[root@prometheus opt]# cd /usr/local/prometheus

  • 启动prometheus服务(直接使用默认配置文件启动)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@prometheus prometheus]# ./prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

  • 验证端口占用情况(判断是否真正的启动) 确认端口9090
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ss -naltp | grep 9090

1.3访问prometheus界面(web)

  • 用浏览器访问http://192.168.27.136:9090可以访问到prometheus的主界面

1.4主机数据显示

  • 访问http://192.168.27.136/metrics可以查看到监控的数据

1.5普罗米修斯监控图像

  • 默认监控prometheus主机的CPU

1.6普罗米修斯监控Linux主机

1.6.1node组件概述

  • 在远程linux主机(被监控端agent)上安装node_exorter组件,这样普罗米修斯就可以接收到其收集系统
  • https://prometheus.io/download/下载地址

1.6.2安装node_exporter组件

  • 安装、解压node_exporter组件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent ~]# cd /opt
[root@agent opt]# rz -E //上传node_exporter组件到/opt目录下,anget被监控端
[root@agent opt]# tar zxvf node_exporter-0.16.0.linux-amd64.tar.gz -C /usr/local/
[root@agent opt]# mv /usr/local/node_exporter-0.16.0.linux-amd64 /usr/local/node_exporter
[root@agent local]# ls /usr/local/node_exporter

  • 启动node_exporter服务 收集Linux主机信息
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent local]# nohup /usr/local/node_exporter/node_exporter &

  • 查看端口(端口9100占用情况)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent local]# ss -naltp | grep 9100

  • nohup命令:如果把启动node_exporter的终端给关闭,那么进程也会随之关闭,nohup命令可以解决这个问题

1.6.3浏览器访问被监控端(收集Linux主机信息)

  • 用http://192.168.27.138:9100/metrics可以查看到node_exporter在监控端收集的监控信息

1.6.4 使普罗米修斯监控可以收集node节点信息

  • 在prometheus服务器的配置文件里添加被监控机器的配置段/usr/local/prometheus/prometheus.yml
  • 修改prometheus.yml配置文件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@prometheus prometheus]# vim /usr/local/prometheus/prometheus.yml
30   - job_name: 'agent'         //修改被监控的主机名称
31     static_configs:     
32    - targets: ['192.168.27.138:9100']  //修改为被监控机器的IP,端口设置为9100   

  • 重启服务(重新启动普罗米修斯监控系统)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@prometheus prometheus]# pkill prometheus //停止普罗米修斯这个服务
[root@prometheus prometheus]# ss -naltp | grep 9090
[root@prometheus prometheus]# ./prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
[root@prometheus prometheus]# ss -anltp | grep 9090 //确认端口被占用,说明重启成功

  • 在web界面,点击status,点击target,可以查看到多了一台监控主机

二、使用普罗米修斯监控mysqld服务

  • 下载地址:https://prometheus.io/download/

2.1监控其他服务

  • 在node_exporter服务上,可以根据自己的需要收集气人信息

2.2安装mysqld_exporter组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent local]# cd /opt
[root@agent opt]# rz -E //上传mysqld_exporter组件到/opt目录下
[root@agent opt]# tar zxvf mysqld_exporter-0.11.0.linux-amd64.tar.gz -C /usr/local/ 
[root@agent opt]# mv /usr/local/mysqld_exporter-0.11.0.linux-amd64/ /usr/local/mysqld_exporter
[root@agent opt]# cd /usr/local/mysqld_exporter/

2.3安装mariadb数据库

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent mysqld_exporter]# yum install mariadb\* -y //安装mariadb数据库
[root@agent mysqld_exporter]# systemctl start mariadb //启动mariadb数据库
[root@agent mysqld_exporter]# systemctl enable mariadb
[root@agent mysqld_exporter]# ss -anltp | grep 3306

2.4创建账号,并授权

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent mysqld_exporter]# mysql
MariaDB [(none)]> grant select,replication client,process ON *.* to 'mysql_monitor'@'localhost' identified by '123';
MariaDB [(none)]> flush privileges;   //刷新权限
MariaDB [(none)]> exit

2.5在mysqld_exporter组件中配置mysql信息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent mysqld_exporter]# vim /usr/local/mysqld_exporter/.my.cnf
[client]
user=mysql_monitor
password=123

2.6启动mysqld_exporter服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@agent mysqld_exporter]# nohup /usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my.cnf &
[root@agent mysqld_exporter]# ss -antlp | grep 9104

2.7使普罗米修斯收集mysqld节点信息

  • 在普罗米修斯服务器配置
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- job_name: 'mariadb'      //修改名称代表被监控的mariadb
    static_configs:
    - targets: ['192.168.27.138:9104']   /被监控的IP,后面端口为9104
   //在末尾插入

2.8重启

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@prometheus prometheus]# pkill prometheus
[root@prometheus prometheus]# ./prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
[root@prometheus prometheus]# ss -naltp | grep 9090 //查看端口占用情况
  • 在web界面,点击status,点击target,可以查看到多了一台监控主机

三、安装Grafana可视化图形工具

3.1Grafana概述

  • Grafana是一个开源的度量分析和可视化工具,可以将通过采集数据的分析,查询,然后进行可视化的展示,并能实现报警

3.2安装Grafana可视化图形软件

  • 下载网址:https://grafana.com/grafana/download
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@grafana ~]# cd /opt
[root@grafana opt]# rz -E
[root@grafana opt]# rpm -ivh grafana-5.3.4-1.x86_64.rpm //安装grafana软件
[root@grafana opt]# systemctl start grafana-server //启动grafana服务
[root@grafana opt]# systemctl enable grafana-server
[root@grafana opt]# ss -anltp | grep 3000 //查看端口

3.3登录Grafana

  • 通过浏览器访问192.168.27.139:3000,首次登录账号密码为admin之后,要更改密

3.4添加普罗米修斯的数据源

  • 添加数据源 设置 数据源、数据源名称、类型、IP地址、端口号 点击齿轮图标,查看已添加的数据源
  • 为添加好的数据源做图形显示
  • 增加图形
  • 选择需要呈现图形的数据

四、监控MySQL数据

4.1修改配置文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@grafana opt]# vim /etc/grafana/grafana.ini
[dashboards.json]
enable = true
path = /var/lib/grafana/dashboards  //末尾插入
[root@grafana grafana]# git clone https://gitub.com/percona/grafana-dashboards.git
[root@grafana grafana]# mkdir dashboards
[root@grafana grafana]# cd dashboards/
[root@grafana dashboards]# pwd
[root@grafana dashboards]# cp -r grafanadashboards/dashboards/ /var/lib/grafana/
[root@grafana dashboards]# systemctl restart grafana-server

4.2在 grafana图形中导入文件

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/161742.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
HBase和Hive的区别和各自适用的场景
先放结论:Hbase和Hive在大数据架构中处在不同位置,Hbase主要解决实时数据查询问题,Hive主要解决数据处理和计算问题,一般是配合使用。
王知无-import_bigdata
2019/05/13
9K1
HBase和Hive的区别和各自适用的场景
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
一种操作hadoop的轻量级脚本语言,最初又雅虎公司推出,不过现在正在走下坡路了。当初雅虎自己慢慢退出pig的维护之后将它开源贡献到开源社区由所有爱好者来维护。不过现在还是有些公司在用,不过我认为与其使用pig不如使用hive。:)
用户7353950
2023/02/23
1.2K0
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
Hive和HBase的区别
Apache Hive是一个构建于Hadoop(分布式系统基础架构)顶层的数据仓库,注意这里不是数据库。Hive可以看作是用户编程接口,它本身不存储和计算数据;它依赖于HDFS(Hadoop分布式文件系统)和MapReduce(一种编程模型,映射与化简;用于大数据并行运算)。其对HDFS的操作类似于SQL—名为HQL,它提供了丰富的SQL查询方式来分析存储在HDFS中的数据;HQL经过编译转为MapReduce作业后通过自己的SQL 去查询分析需要的内容;这样一来,即使不熟悉MapReduce 的用户也可以很方便地利用SQL 语言查询、汇总、分析数据。而MapReduce开发人员可以把己写的mapper 和reducer 作为插件来支持Hive 做更复杂的数据分析。
Dlimeng
2023/06/28
4340
【Hive】Hive简介
Hive有自己的类SQL,即HQL,它将SQL解析为M/R Job,然后在hadoop上执行。允许开发自定义mapper和reducer来处理内建的mapper和reducer无法完成的复杂分析工作再查询(UDF)。而启动MapReduce是一个高延迟的一件事,每次提交任务和执行任务都需要消耗很多时间,这也就决定Hive只能处理一些高延迟的应用。
章鱼carl
2022/03/31
1.4K0
【Hive】Hive简介
大数据技术概述
大数据(Big Data):指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。主要解决,海量数据的存储和海量数据的分析计算问题。
Francek Chen
2025/01/22
7020
大数据技术概述
Hadoop生态圈各种组件介绍
好多初入学习大数据的人不是很清楚,今天分享一个图,并介绍一下大致的组件,其他还有一些组件是没有包含在其中的,但是大部分这个图片是有了的。
全栈程序员站长
2022/08/31
2.1K0
Hadoop生态圈各种组件介绍
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
初接触Hadoop技术的朋友肯定会对它体系下寄生的个个开源项目糊涂了,我敢保证Hive,Pig,HBase这些开源技术会把你搞的有些糊涂,不要紧糊涂的不止你一个,如某个菜鸟的帖子的疑问,when to use Hbase and when to use Hive?....请教了^_^没关系这里我帮大家理清每个技术的原理和思路。
星哥玩云
2022/06/30
6460
解析Hive和HBase的区别:大数据场景下的应用和合作
Hive和HBase是两个在大数据领域中被广泛使用的开源项目,它们各自适用于不同的场景,但也可以在某些情况下结合使用。以下是Hive和HBase在不同场景下的应用示例:
coderidea
2023/09/07
9050
解析Hive和HBase的区别:大数据场景下的应用和合作
Hive和Hbase集成及互相操作
Hive中的表是纯逻辑表,就只是表的定义等,即表的元数据。Hive本身不存储数据,它完全依赖HDFS和MapReduce。这样就可以将结构化的数据文件映射为为一张数据库表,并提供完整的SQL查询功能,并将SQL语句最终转换为MapReduce任务进行运行。而HBase表是物理表,适合存放非结构化的数据。
码客说
2023/01/11
1.4K0
图解大数据 | 海量数据库查询-Hive与HBase详解
教程地址:http://www.showmeai.tech/tutorials/84
ShowMeAI
2022/03/08
1.6K0
图解大数据 | 海量数据库查询-Hive与HBase详解
2021年大数据HBase(一):HBase基本简介
总结: HADOOP仅适合存储大批量的数据, 进行顺序化读取数据, 并不支持随机读取数据操作
Lansonli
2021/10/11
1.8K0
大数据架构设计-云原生架构设计快速入门
      我对大数据体系架构设计经常使用的第三服务或开源服务大致划分为两个类别:
jack.yang
2025/04/05
1400
大数据架构设计-云原生架构设计快速入门
进击大数据系列(一):Hadoop 基本概念与生态介绍
大数据(big data),指的是在一定时间范围内不能以常规软件工具处理(存储和计算)的大而复杂的数据集。说白了大数据就是使用单台计算机没法在规定时间内处理完,或者压根就没法处理的数据集。
民工哥
2023/08/22
2.8K0
进击大数据系列(一):Hadoop 基本概念与生态介绍
最通俗易懂的大数据术语,必知必会大数据基础知识大全
产品经理要不要懂技术的问题一直有很多的观点和讨论,一般来讲产品懂技术是有一定的优势,但不是充分必要条件。而数据产品是B端更偏底层的工种,有一定技术基础后,开展工作更顺利。找工作的经历里面,有被问到过你
数据干饭人
2022/07/01
8480
最通俗易懂的大数据术语,必知必会大数据基础知识大全
hive与hbase的联系与区别
hive与hbase的联系与区别: 共同点: hbase与hive都是架构在hadoop之上的。都是用hadoop作为底层存储 区别: Hive是建立在Hadoop之上为了减少MapReduce jobs编写工作的批处理系统,HBase是为了支持弥补Hadoop对实时操作的缺陷的项目 。 想象你在操作RMDB数据库,如果是全表扫描,就用Hive+Hadoop,如果是索引访问,就用HBase+Hadoop 。 Hive query就是MapReduce jobs可以从5分钟到数小时不止,HBase是非常高效的
ZONGLYN
2019/08/08
2.2K0
大数据生态圈常用组件(二):概括介绍、功能特性、适用场景
点赞之后,上一篇传送门: https://blog.csdn.net/weixin_39032019/article/details/89340739
不吃西红柿
2022/09/26
1.5K0
Hadoop大数据生态系统及常用组件
什么是大数据,多大算大,100G算大么?如果是用来存储1080P的高清电影,也就是几部影片的容量。但是如果100G都是文本数据,比如云智慧透视宝后端kafka里的数据,抽取一条mobileTopic的数据如下:【107,5505323054626937,局域网,局域网,unknown,0,0,09f26f4fd5c9d757b9a3095607f8e1a27fe421c9,1468900733003】,这种数据100G能有多少条,我们可想而知。
程序狗
2021/12/16
8570
大数据平台框架、组件以及处理流程详解
数据产品和数据密不可分作为数据产品经理理解数据从产生、存储到应用的整个流程,以及大数据建设需要采用的技术框架Hadoop是必备的知识清单,以此在搭建数据产品时能够从全局的视角理解从数据到产品化的价值。本篇文章从三个维度:
全栈程序员站长
2022/08/31
3.1K0
大数据平台框架、组件以及处理流程详解
Hadoop的数据仓库框架-Hive 基础知识及快速入门
Hive是一个构建在Hadoop上的数据仓库框架。最初,Hive是由Facebook开发,后来移交由Apache软件基金会开发,并作为一个Apache开源项目。
数据猿
2019/09/12
1.1K0
Hadoop的数据仓库框架-Hive 基础知识及快速入门
大数据时代的技术hive:hive介绍
  我最近研究了hive的相关技术,有点心得,这里和大家分享下。   首先我们要知道hive到底是做什么的。下面这几段文字很好的描述了hive的特性:   1.hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。   2.Hive是建立在 Hadoo
老白
2018/03/19
1.1K0
大数据时代的技术hive:hive介绍
推荐阅读
相关推荐
HBase和Hive的区别和各自适用的场景
更多 >
LV.1
这个人很懒,什么都没有留下~
目录
  • 一、普罗米修斯Prometheus监控系统
    • 1.1实验环境
    • 1.2安装普罗米修斯
    • 1.3访问prometheus界面(web)
    • 1.4主机数据显示
    • 1.5普罗米修斯监控图像
    • 1.6普罗米修斯监控Linux主机
      • 1.6.1node组件概述
      • 1.6.2安装node_exporter组件
      • 1.6.3浏览器访问被监控端(收集Linux主机信息)
      • 1.6.4 使普罗米修斯监控可以收集node节点信息
  • 二、使用普罗米修斯监控mysqld服务
    • 2.1监控其他服务
    • 2.2安装mysqld_exporter组件
    • 2.3安装mariadb数据库
    • 2.4创建账号,并授权
    • 2.5在mysqld_exporter组件中配置mysql信息
    • 2.6启动mysqld_exporter服务
    • 2.7使普罗米修斯收集mysqld节点信息
    • 2.8重启
  • 三、安装Grafana可视化图形工具
    • 3.1Grafana概述
    • 3.2安装Grafana可视化图形软件
    • 3.3登录Grafana
    • 3.4添加普罗米修斯的数据源
  • 四、监控MySQL数据
    • 4.1修改配置文件
    • 4.2在 grafana图形中导入文件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档