目录
1 prometheus的安装
1.1 下载安装包
1.2 配置Prometheus
1.3 systemd管理Prometheus服务
1.4 启动服务
2 使用Prometheus监控redis服务
2.1 下载redis_exporter安装包
2.2 解压安装
2.3 systemd管理redis_exporter服务
2.4 启动服务
3 Granfana展示Prometheus获取到的数据
3.1 下载prometheus-redis_rev1.json模板
3.2 在grafana中导入json模板
虽然zabbix可以监控redis和其他组件的各项指标,但是zabbix的页面展示不如grafana的页面好看,所以这里我们来展示grafana的dashboard页面
对于redis的监控将会使用到以下组间grafana、prometheus以及redis_exporter。
这里以centos操作系统为例,到git上找到最新的版本进行下载安装
目录
1 prometheus的安装
1.1 下载安装包
1.2 配置Prometheus
1.3 systemd管理Prometheus服务
1.4 启动服务
2 使用Prometheus监控redis服务
2.1 下载redis_exporter安装包
2.2 解压安装
2.3 systemd管理redis_exporter服务
2.4 启动服务
3 Grafana展示Prometheus获取到的数据
3.1 grafana的安装
3.2 下载prometheus-redis_rev1.json模板
3.3 在grafana中导入json模板
解压后在prometheus目录下有一个名为prometheus.yml的主配置文件。其中包含大多数标准配置及prometheus的自检控配置,默认配置文件如下:
[root@wyl01 prometheus]# cat prometheus.yml
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=` to any timeseries scraped from this config.
- job_name: 'prometheus'
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ['localhost:9090']
$ vim /etc/systemd/system/prometheus.service
[Unit]
Description=prometheus
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
$ systemctl start prometheus
Prometheus自带一个比较简单的Web也买你,可以查看表达式搜索结果、报警配置、prometheus配置,exporter状态等。自带Web默认在http://ip:9090端口访问
。
下载安装包,打开github然后下载最新的安装包。这里我们选择v0.24.0,因为最新的版本,没有-redis.file参数,对多redis实例在grafana的dashboard中展示,无法所搜单个实例。
github地址
# 解压:
$ tar -xf redis_exporter-v0.24.0.linux-amd64.tar.gz -C /usr/local/prometheus
# 编辑redis.yml
[root@wyl01 prometheus]# cat redis.yml
# 添加以下内容
redis://192.168.52.128:7000
redis://192.168.52.128:7001
$ vim /etc/systemd/system/redis_exporter.service
[Unit]
Description=redis_exporter
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/prometheus/redis_exporter/redis_exporter -redis.file /usr/local/prometheus/redis.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
$ systemctl start redis_exporter
修改prometheus的配置文件,添加以下内容,然后重启普罗米修斯服务
- job_name: 'redis'
static_configs:
- targets: ['localhost:9121']
重启服务
$ systemctl restart prometheus
配置成功,我们在普罗米修斯的dashboard也页面上可以看到,redis是UP状态 。
我们在搜索框中直接输入redis关键字,即可查询到关于redis的所有的数据。
Grafana是用于可视化大型测量数据的开源程序,它提供了强大和优雅的方式去创建、共享、浏览数据。Dashboard中显示了你不同metric数据源中的数据。
对于prometheus获取到的redis数据,我们就可以用Grafana来进行数据的展示。
wget https://dl.grafana.com/oss/release/grafana-6.0.2-1.x86_64.rpm
yum localinstall grafana-6.0.2-1.x86_64.rpm
刚安装完需要重载systemd配置:systemctl daemon-reload
启动服务:systemctl start grafana-server
查看状态:systemctl status grafana-server
设置开机启动: systemctl enable grafana-server.service
相关文件位置
安装包信息
wget https://grafana.com/api/dashboards/763/revisions/1/download
接下来就是展示数据了,如果启动多个redis实例,那么这个列表就会展示出所有的redis实例,上面也说到用redis_exporter 0.24版本,有redis.file 参数,可以将所有的redis实例写到一个文件中。