你还不会监控服务器资源吗?你还不会监控mysql性能吗?但是你看了这篇文章之后我想你应该会了,哈哈哈,就算不会,至少你也知道是个怎么回事,这篇文章就来介绍怎么给自己的服务器系统搭建一个监控平台,要是还不会,请私聊我,哈哈!!!
Prometheus(普罗米修斯)就是一个时序数据库,多了我也不清楚,先记着这么回事,就是用来存数据的。哈哈哈(前段时间我用influxdb这个时序数据库,不过这个呢是针对于jmeter来监控的,不好做mysql的监控,而Prometheus是专门用来监控数据库的。如果有兴趣的朋友,我过段时间写一篇influxdb+jmeter+grafana,今天主讲prometheus)我相信做过性能测试的人员和运维人员都知道这个吧,哈哈哈
grafana其实就是一个展示数据的平台,能够实时监控还好看,我喜欢。
我们用到了以下两个exporter:
node_exporter – 用于机器系统数据收集
mysqld_exporter – 用于MySQL服务器数据收集
我们通过node_exporter对linux服务器数据收集、mysqld_exporter对mysql服务器数据收集,收集到之后传到prometheus数据库里面去,然后通过prometheus去关联grafana,再去把实时数据展示出来。好了,话不多说,我们从第一步开始。
在开始之前要先把node_exporter、mysqld_exporter、prometheus压缩包给下载好,你们可以去官网下载也可以我分享给你们
链接:https://pan.baidu.com/s/187QTTxjxsL6GB303tV-cEQ
提取码:pt7a
这边的话我是在自己本地LINUX虚拟机操作的,你们自己在练习的时候也可以现在自己的虚拟机上先搭建一下,然后再到服务器上去玩吧。
**
**
要是不知道服务器的mysql安装路径在哪里,可以敲下面这个指令
whereis mysql
上面就是我虚拟机mysql的安装路径
好了,我们第一步先启动mysql数据库
service mysqld start #启动数据库
这样的话就启动成功了,然后我们进入mysql的bin目录
输入./mysql -uroot -p
输入密码,如果没修改的话就是默认空的,直接回车就好了,如果修改过的话就输入修改后的密码回车
到了这个页面就说明进来了
输入 use mysql
然后去创建一个你的数据库账号,为什么要创建你自己的,而不用root的呢,我们以防万一哈,还是不要去弄root账号去玩
输入下面命令,账号可以自行设定,我这是输入的hfx,我名字的第一个字母
GRANT ALL PRIVILEGES ON *.* TO 'hfx'@'localhost' identified by '123456';
创建好了之后刷新一下
flush privileges;
然后验证一下是否创建成功
select user,host from mysql.user;
**
你们可以自行下载,也可以用我百度网盘的
如果用我百度网盘的,你下载好之后直接用xftp传到指定的linux某个目录下就好了,我这边是传到tools目录下
然后解压
tar -xzvf prometheus-2.15.2.linux-amd64.tar.gz
解压完成后就会出现一个文件夹,楼主有强迫症喜欢安装完成之后把安装包给删除,你喜欢的话就rm -rf 删掉吧,哈哈哈
不仅给他删除,我还要把解压好的文件给改个名字,名字太长了看起来不舒服,哈哈哈
删除压缩包命令 rm -rf prometheus-2.15.2.linux-amd64.tar.gz
改名命令 mv prometheus-2.15.2.linux-amd64/ prometheus2.15
然后呢,需要修改一下他的配置文件
配置文件:vi prometheus.yml
这个是它的配置文件,可以修改端口等信息,默认端口为 9090
上图是没有配置的,我们把下面内容添加到里面去
-job_name: ‘linux’
static_configs:
-targets: [‘localhost:9100’]
-job_name: ‘mysql’
static_configs:
-targets: [‘localhost:9104’]
编辑好之后命令模式下:wq保存并退出
设置端口:
firewall-cmd --list-ports ##列出开放的端口
firewall-cmd --add-port=9090/tcp --permanent #永久添加 9090 端口
firewall-cmd --add-port=9100/tcp --permanent #永久添加 9100 端口
firewall-cmd --add-port=9104/tcp --permanent #永久添加 9104 端口
firewall-cmd --list-ports #列出开放的端口
systemctl stop firewalld #关闭防火墙
systemctl start firewalld #开启防火墙
systemctl status firewalld #查看防火墙状态
systemctl restart firewalld #重启防火墙
先把防火墙打开
systemctl start firewalld
然后输入以下命令
firewall-cmd --add-port=9090/tcp --permanent
firewall-cmd --add-port=9100/tcp --permanent
firewall-cmd --add-port=9104/tcp --permanent
永久开放这些端口
然后输入
firewall-cmd --list-ports
查看开放的端口
上图是我虚拟机所开放的端口,端口开放不了,先检查防火墙
端口开放后输入以下指令
./prometheus --config.file=prometheus.yml &
然后再去windows(mac)电脑打开浏览器输入虚拟机的ip:9090/targets
好了我们开始下一步
./mysqld_exporter --config.my-cnf=my.cnf
我这里之前启动了一个,最下面一行提示说已经有一个进程了在运行了,我得去杀掉重新起一个给你们看看
好了,出现这样的就是正常的。
如果想查看端口占用情况
#yum install lsof
查看 9104 端口占用情况 lsof -i:9104
查看进程 #ps -a
关闭进程 #kill -9 进程号
这样子去操作就好了 我就不做演示了哦
我们继续下一步
**
**
然后解压压缩包进入安装文件目录下输入
./node_exporter &
出现这样的就是启动成功啦
然后去windows(mac)浏览器输入虚拟机的ip:9090/targets
出现这个界面然后三个状态全部是up就表示成功了
如果是DOWN,久去检查一下是否全部开启了,如果开启了还是没有就去杀掉进程重新开。
我们继续下一个
**
**
wgethttps://dl.grafana.com/oss/release/grafana-6.5.1-1.x86_64.rpm
yum install urw-fonts
yum install initscripts fontconfig -y
rpm -ivh grafana-6.5.1-1.x86_64.rpm
启动 grafana
systemctl start grafana-server
启动之后打开windows(mac)浏览器去访问
http://部署的ip:3000
然后就出现这个grafana界面了,记住一定要关闭防火墙,我们之前是开启防火墙的
输入systemctl stop firewalld
关闭防火墙,然后再去浏览器访问哦
好了,这篇文章我就先介绍到这里吧,下一篇再继续介绍grafana的使用
你们自己去操作的话,只要到了这一步,就算是平台已经搭建好了
我再给你们透一点点,吸引你们一下哈哈哈
这是grafana展示的监控linux服务器的资源各项指标,是不是很好看,不仅可以监控mysql还可以监控linux服务器,多台都是可以的。
好了,不说了,我累了,码字码的好辛苦啊,点个关注,等待持续更新~~~