Prometheus常见exporter安装部署
在稳定性环境的监控当中需要收集各种各样的数据,这样的数据收集是通过各种exporter进行的,在这里我们进行最常用稳定性数据的收集exporter安装部署介绍。
node_exporter安装部署
node_exporter主要监控服务器本身的一些资源,如CPU、内存、IO等。
1.首先我们进入Prometheus的官方网站的下载页面:https://prometheus.io/download/获取对应的版本。我们会看到如下界面。
然后这里我们选择node_exporter-1.1.2.linux-amd64.tar.gz的版本进行点击进入下载,我们可以获取相应的安装包。
2.将下载下来的文件包通过xshell上传到我们需要安装被监控的服务器上,把程序包放到一个目录下面:
root@localhost:/usr/local/monitor# pwd
/usr/local/monitor
root@localhost:/usr/local/monitor# ls
node_exporter-1.1.2.linux-amd64.tar.gz
3.通过以下命令对node_exporter进行安装。
首先进行解压:
root@localhost:/usr/local/monitor# tar -zxvf node_exporter-1.1.2.linux-amd64.tar.gz
node_exporter-1.1.2.linux-amd64/
node_exporter-1.1.2.linux-amd64/LICENSE
node_exporter-1.1.2.linux-amd64/NOTICE
node_exporter-1.1.2.linux-amd64/node_exporter
解压完成以后对文件进行重命名:
root@localhost:/usr/local/monitor# mv node_exporter-1.1.2.linux-amd64 node_exporter
因为很多公司服务器所在的环境都属于公司内网中,服务器无法获取外网地址。如果在有外网的情况下是可以简化步骤1、步骤2中的步骤。只需要在在步骤1中获取下载的地址,然后进入CentOS操作系统下,使用如下命令即可获取安装包。
wget https://github.com/prometheus/node_exporter/releases/download/v1.1.2/node_exporter-1.1.2.linux-amd64.tar.gz
4.设置node_export后台启动,命令如下。
# 首先我们需要确定操作系统版本,CentOS7及以上可以成服务的模式
root@localhost:/usr/local/monitor/node_exporter# cat /etc/redhat-release
CentOS release 6.9 (Final)
# 这里我们可以看到服务器是CentOS 6.9的系统,所以进行如下命令操作启动node_exporter,但是因为node_exporter默认的启动端口号为9100,这跟我们产品中的某个的端口是冲突的,所以我们需要首先修改node_exporter的端口号,这里我们将它修改成7100端口。
root@localhost:/usr/local/monitor/node_exporter# nohup ./node_exporter --web.listen-address=":7100" &
# 查看服务是否在线
root@localhost:/usr/local/monitor/node_exporter# ps -ef|grep node_exporter
root 43937 146411 0 14:33 pts/1 00:00:00 ./node_exporter --web.listen-address=:7100
# 这里要特别注意,因为我们的端口号修改成7100,所以在章节6.3中的LinuxSystemBase.yml里面的配置文件也需要改成7100
5.启动完成以后,我们就可以用如下地址进行访问:http://XXX.XXX.XXX.XXX:7100/metrics
我们看到已经采集的数据,这样我们基础的node_exporter在被监控的这台服务器上就已经安装完成了。
process_exporter安装部署
process_exporter主要监控服务本身的一些资源,如CPU、内存、IO等。
1.首先我们进入github的官方网站的下载页面:https://github.com/ncabatoff/process-exporter/releases/tag/v0.5.0,获取对应的版本。我们会看到如下界面。
然后这里我们选择process-exporter-0.5.0.linux-amd64.tar.gz的版本进行点击进入下载,我们可以获取相应的安装包。
2.将下载下来的文件包通过xshell上传到我们需要安装被监控的服务器上,把程序包放到一个目录下面:
root@localhost:/usr/local/monitor# pwd
/usr/local/monitor
root@localhost:/usr/local/monitor# ls |grep process
process-exporter-0.5.0.linux-amd64.tar.gz
3.通过以下命令对process-exporter进行安装。
首先进行解压:
root@localhost:/usr/local/monitor# tar -zxvf process-exporter-0.5.0.linux-amd64.tar.gz
process-exporter-0.5.0.linux-amd64/LICENSE
process-exporter-0.5.0.linux-amd64/README.md
process-exporter-0.5.0.linux-amd64/process-exporter
解压完成以后对文件进行重命名:
root@localhost:/usr/local/monitor# mv process-exporter-0.5.0.linux-amd64 process-exporter
因为很多公司服务器所在的环境都属于公司内网中,服务器无法获取外网地址。如果在有外网的情况下是可以简化步骤1、步骤2中的步骤。只需要在在步骤1中获取下载的地址,然后进入CentOS操作系统下,使用如下命令即可获取安装包。
wget https://github.com/ncabatoff/process-exporter/releases/download/v0.5.0/process-exporter-0.5.0.linux-amd64.tar.gz
4.设置process-exporter后台启动,命令如下。
# 首先我们需要确定操作系统版本,CentOS7及以上可以成服务的模式
root@localhost:/usr/local/monitor/node_exporter# cat /etc/redhat-release
CentOS release 6.9 (Final)
# 然后我们需要建立一个process-name.yml的配置文件,这个文件只要跟process-exporter执行的命令文件同一个目录即可
root@localhost:/usr/local/monitor/process-exporter# vi process-name.yml
process_names:
- name: "{{.Matches}}"
cmdline:
- '服务名称1'
- name: "{{.Matches}}"
cmdline:
- '服务名称2'
如果还有其他服务需要添加,就按照这个格式进行添加即可。
# 这里我们可以看到服务器是CentOS 6.9的系统,所以进行如下命令操作启动process-exporter,但是因为process-exporte默认的启动端口号为9256,为了跟Node_exporter类似,这里我们将它修改成7256端口。
root@localhost:/usr/local/monitor/process-exporter# nohup ./process-exporter -config.path process-name.yml -web.listen-address :7256 &
# 查看服务是否在线
root@localhost:/usr/local/monitor/process-exporter# ps -ef|grep process-
root 1847 146411 0 16:06 pts/1 00:00:00 grep process-
[2]+ Killed nohup ./process-exporter -config.path process-name.yml -web.listen-address :7256
# 这里要特别注意,我们需要在安装prometheus中的文件中添加相应的监控方式,类似Node_exporter的方法,命令如下:
注意:此时服务器切换到安装在prometheus的服务器上
[root@localhost conf]# vi process_exporter.yml
修改内容如下
- targets: ['10.31.131.20:7256']
labels:
group: XXX
然后再修改prometheus.yml中的内容,修改内容如下(在上述node_exporter监控中已经有相应的操作步骤,这里不再赘述)
- job_name: 'Process'
file_sd_configs:
- files: ['/ftp/Stability/prometheus/conf/process_exporter.yml']
refresh_interval: 5s
然后重新加载配置prometheus.yml的配置文件(这个操作之前文中已经说明)
5.启动完成以后,我们就可以用如下地址进行访问:http://XXX.XXX.XXX.XXX:7256/metrics
并且能够在prometheus的界面中能够看到process-exporter采集的数据
我们看到已经采集的数据,这样我们基础的process-exporter在被监控的这台服务器上就已经安装完成了。
RabbitMQ_exporter安装部署
RabbitMQ_exporter主要监控服务本身的一些资源。
1.首先我们进入github的官方网站的下载页面:https://github.com/kbudde/rabbitmq_exporter/releases/tag/v1.0.0-RC8,获取对应的版本。我们会看到如下界面。
然后这里我们选择rabbitmq_exporter-1.0.0-RC8.linux-amd64.tar.gz的版本进行点击进入下载,我们可以获取相应的安装包。
2.将下载下来的文件包通过xshell上传到我们需要安装被监控的服务器上,把程序包放到一个目录下面:
root@localhost:/usr/local/monitor# pwd
/usr/local/monitor
root@localhost:/usr/local/monitor# ls |grep rabb
rabbitmq_exporter-1.0.0-RC8.linux-amd64.tar.gz
3.通过以下命令对rabbitmq_exporter进行安装。
首先进行解压:
root@localhost:/usr/local/monitor# tar -zxvf rabbitmq_exporter-1.0.0-RC8.linux-amd64.tar.gz
rabbitmq_exporter-1.0.0-RC8.linux-amd64/
rabbitmq_exporter-1.0.0-RC8.linux-amd64/LICENSE
rabbitmq_exporter-1.0.0-RC8.linux-amd64/rabbitmq_exporter
解压完成以后对文件进行重命名:
root@localhost:/usr/local/monitor# mv rabbitmq_exporter-1.0.0-RC8.linux-amd64 rabbitmq_exporter
因为我们公司服务器所在的环境都属于公司内网中,服务器无法获取外网地址。如果在有外网的情况下是可以简化步骤1、步骤2中的步骤。只需要在在步骤1中获取下载的地址,然后进入CentOS操作系统下,使用如下命令即可获取安装包。
wget https://github.com/kbudde/rabbitmq_exporter/releases/download/v1.0.0-RC8/rabbitmq_exporter-1.0.0-RC8.linux-amd64.tar.gz
4.设置rabbitmq_exporter后台启动,命令如下。
# 首先我们需要确定操作系统版本,CentOS7及以上可以成服务的模式
root@localhost:/usr/local/monitor/rabbitmq_exporter# cat /etc/redhat-release
CentOS release 6.9 (Final)
# 然后在跟rabbitmq_exporter同一件目录下新建一个文件
[root@rabbitmq1 rabbitmq_exporter]# vi config.json
里面添加如下内容
{
"rabbit_url": "https://10.31.131.212:15672", ---MQ登录地址
"rabbit_user": "root", ---MQ WEB登录用户名
"rabbit_pass": "passwd", ---MQ WEB登录密码
"publish_port": "7099", ---rabbitmq_exporter监听端口
"publish_addr": "10.31.131.212", ---rabbitmq_exporter监听地址
"output_format": "TTY",
"insecure_skip_verify": true, ---是否认证
"exlude_metrics": [],
"include_queues": ".*",
"skip_queues": "^$",
"skip_vhost": "^$",
"include_vhost": ".*",
"rabbit_capabilities": "no_sort,bert",
"enabled_exporters": [
"exchange",
"node",
"overview",
"queue"
],
"timeout": 30,
"max_queues": 0
}
# 这里我们可以看到服务器是CentOS 6.9的系统,所以进行如下命令操作启动rabbitmq_exporter,为了跟Node_exporter类似,这里我们将它修改成7099端口。
[root@rabbitmq1 rabbitmq_exporter]# nohup ./rabbitmq_exporter -config-file config.json & # 查看服务是否在线
[root@rabbitmq1 rabbitmq_exporter]# ps -ef|grep rabbitmq_exporter
root 78979 144376 7 17:24 pts/1 00:00:00 ./rabbitmq_exporter -config-file config.json
root 82219 144376 0 17:24 pts/1 00:00:00 grep rabbitmq_exporter
# 这里要特别注意,我们需要在安装prometheus中的文件中添加相应的监控方式,类似Node_exporter的方法,命令如下:
注意:此时服务器切换到安装在prometheus的服务器上
[root@localhost conf]# vi rabbitmq_exporter.yml
修改内容如下
- targets: ['10.31.131.212:7099']
labels:
group: XXX
然后再修改prometheus.yml中的内容,修改内容如下(在上述node_exporter监控中已经有相应的操作步骤,这里不再赘述)
- job_name: 'RabbitMQ'
file_sd_configs:
- files: ['/ftp/Stability/prometheus/conf/rabbitmq_exporter.yml']
refresh_interval: 5s
然后重新加载配置prometheus.yml的配置文件(这个操作已经文档说明)
5.启动完成以后,我们就可以用如下地址进行访问:http://XXX.XXX.XXX.XXX:7099/metrics
并且能够在prometheus的界面中能够看到数据
Redis_exporter安装部署
Redis_exporter主要监控Redis本身的一些资源。
1.首先我们进入github的官方网站的下载页面:https://github.com/oliver006/redis_exporter/releases,获取对应的版本。我们会看到如下界面。
然后这里我们选择redis_exporter-v1.19.0.linux-amd64.tar.gz的版本进行点击进入下载,我们可以获取相应的安装包。
2.将下载下来的文件包通过xshell上传到我们需要安装被监控的服务器上,把程序包放到一个目录下面:
root@localhost:/usr/local/monitor# pwd
/usr/local/monitor
root@localhost:/usr/local/monitor# ls |grep redis
redis_exporter-v1.19.0.linux-amd64.tar.gz
3.通过以下命令对rabbitmq_exporter进行安装。
首先进行解压:
root@localhost:/usr/local/monitor# tar -zxvf redis_exporter-v1.19.0.linux-amd64.tar.gz
redis_exporter-v1.19.0.linux-amd64/
redis_exporter-v1.19.0.linux-amd64/README.md
redis_exporter-v1.19.0.linux-amd64/redis_exporter
redis_exporter-v1.19.0.linux-amd64/LICENSE
解压完成以后对文件进行重命名:
root@localhost:/usr/local/monitor# mv redis_exporter-v1.19.0.linux-amd64 redis_exporter
因为很多公司服务器所在的环境都属于公司内网中,服务器无法获取外网地址。如果在有外网的情况下是可以简化步骤1、步骤2中的步骤。只需要在在步骤1中获取下载的地址,然后进入CentOS操作系统下,使用如下命令即可获取安装包。
wget https://github.com/oliver006/redis_exporter/releases/download/v1.19.0/redis_exporter-v1.19.0.linux-amd64.tar.gz
4.设置Redis_exporter后台启动,命令如下。
# 首先我们需要确定操作系统版本,CentOS7及以上可以成服务的模式
root@localhost:/usr/local/monitor/node_exporter# cat /etc/redhat-release
CentOS release 6.9 (Final)
# 这里我们可以看到服务器是CentOS 6.9的系统,所以进行如下命令操作启动redis_exporter,这里我们将启动的端口修改成7121端口。
root@localhost:/usr/local/monitor/process-exporter#nohup ./redis_exporter -redis.addr 10.31.131.20:8292 -redis.password passwd -web.listen-address :7121 &
# 查看服务是否在线
root@localhost:/usr/local/monitor/redis_exporter# ps -ef|grep redis_ex
root 47607 146411 0 19:22 pts/1 00:00:00 ./redis_exporter -redis.addr 10.31.131.20:8292 -redis.password DH#c40_09402A3B -web.listen-address :7121
root 61818 146411 0 19:23 pts/1 00:00:00 grep redis_ex
# 这里要特别注意,我们需要在安装prometheus中的文件中添加相应的监控方式,类似Node_exporter的方法,命令如下:
注意:此时服务器切换到安装在prometheus的服务器上
[root@localhost conf]# vi redis_exporter.yml
修改内容如下
- targets: ['10.31.131.20:7121']
labels:
group: XXX
然后再修改prometheus.yml中的内容,修改内容如下(在上述node_exporter监控中已经有相应的操作步骤,这里不再赘述)
- job_name: 'Redis'
file_sd_configs:
- files: ['/ftp/Stability/prometheus/conf/redis_exporter.yml']
refresh_interval: 5s
然后重新加载配置prometheus.yml的配置文件
5.启动完成以后,我们就可以用如下地址进行访问:http://XXX.XXX.XXX.XXX:7121/metrics,并且能够在prometheus的界面中能够看到数据。
mysql_exporter安装部署
mysql_exporter主要监控mysql本身的一些资源。
1.首先我们进入prometheus的官方网站的下载页面:https://prometheus.io/download/,获取对应的版本。我们会看到如下界面。
然后这里我们选择mysqld_exporter-0.12.1.linux-amd64.tar.gz的版本进行点击进入下载,我们可以获取相应的安装包。
2.将下载下来的文件包通过xshell上传到我们需要安装被监控的服务器上,把程序包放到一个目录下面:
root@localhost:/usr/local/monitor# pwd
/usr/local/monitor
root@localhost:/usr/local/monitor# ls |grep mysql
mysqld_exporter-0.12.1.linux-amd64.tar.gz
3.通过以下命令对mysqld_exporter进行安装。
首先进行解压:
root@localhost:/usr/local/monitor# tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz
mysqld_exporter-0.12.1.linux-amd64/
mysqld_exporter-0.12.1.linux-amd64/NOTICE
mysqld_exporter-0.12.1.linux-amd64/mysqld_exporter
mysqld_exporter-0.12.1.linux-amd64/LICENSE
解压完成以后对文件进行重命名:
root@localhost:/usr/local/monitor# mv mysqld_exporter-0.12.1.linux-amd64 mysqld_exporter
因为我们很多服务器所在的环境都属于公司内网中,服务器无法获取外网地址。如果在有外网的情况下是可以简化步骤1、步骤2中的步骤。只需要在在步骤1中获取下载的地址,然后进入CentOS操作系统下,使用如下命令即可获取安装包。
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz
4.设置Mysql_exporter后台启动,命令如下。
# 首先我们需要确定操作系统版本,CentOS7及以上可以成服务的模式
root@localhost:/usr/local/monitor/node_exporter# cat /etc/redhat-release
CentOS release 6.9 (Final)
# 因为我们需要监控Mysql的相关信息,所以需要首先新建一个用户,进入Mysql
root@localhost:/usr/local/monitor/mysqld_exporter# mysql -uroot -p
Enter password:
输入密码后呈现如下
mysql>
mysqld_exporter需要连接上MySQL之后,才能获取到监控数据,所以要赋予权限;
mysql> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'prometheus'@'%' identified by 'Admin@12345678';
Query OK, 0 rows affected, 1 warning (0.04 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec
权限赋予完成以后,我们继续接下来的操作
这里顺便提一句,如果要看密码策略,可以使用如下命令:
SHOW VARIABLES LIKE 'validate_password%';
# 我们需要在跟mysql_exporter的同级目录下新建文件.my.cnf
root@localhost:/usr/local/monitor/mysqld_exporter# vim .my.cnf
打开的文件中添加如下内容
[client]
user=prometheus
password=Admin@12345678
# 这里我们可以看到服务器是CentOS 6.9的系统,所以进行如下命令操作启动mysql_exporter,这里我们将启动的端口修改成7104端口。
root@localhost:/usr/local/monitor/process-exporter#nohup ./mysqld_exporter --config.my-cnf=.my.cnf --web.listen-address=:7104 &
# 查看服务是否在线
root@localhost:/usr/local/monitor/mysqld_exporter# ps -ef|grep mysqld_exporter
root 128275 16652 0 09:36 pts/1 00:00:00 ./mysqld_exporter --config.my-cnf=.my.cnf --web.listen-address=:7104
root 141531 16652 0 09:37 pts/1 00:00:00 grep mysqld_exporter
# 这里要特别注意,我们需要在安装prometheus中的文件中添加相应的监控方式,类似Node_exporter的方法,命令如下:
注意:此时服务器切换到安装在prometheus的服务器上
[root@localhost conf]# vi mysql_exporter.yml
修改内容如下
- targets: ['10.31.131.20:7104']
labels:
group: C9100
然后再修改prometheus.yml中的内容,修改内容如下(在上述node_exporter监控中已经有相应的操作步骤,这里不再赘述)
- job_name: 'Mysql'
file_sd_configs:
- files: ['/ftp/Stability/prometheus/conf/mysql_exporter.yml']
refresh_interval: 5s
然后重新加载配置prometheus.yml的配置文件
5.启动完成以后,我们就可以用如下地址进行访问:http://XXX.XXX.XXX.XXX:7104/metrics,并且能够在prometheus的界面中能够看到数据。
至此目前我们需要监控的常见资源已经基本罗列完成。