Bootstrap

Grafana+Prometheus系统监控之Redis

前言

虽然zabbix可以监控redis和其他组件的各项指标,但是zabbix的页面展示不如grafana的页面好看,所以这里我们来展示grafana的dashboard页面

对于redis的监控将会使用到以下组件grafana、prometheus以及redis_exporter。

1 prometheus的安装

1.1 下载安装包

这里以centos操作系统为例,到git上找到最新的版本进行下载安装

prometheus下载

下载过慢可以用这个:

Index of /github-release/prometheus/prometheus/LatestRelease/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

## 下载
wget https://github.com/prometheus/prometheus/releases/download/v2.43.0/prometheus-2.43.0.linux-amd64.tar.gz

## 可自定义解压目录
tar -xvf prometheus-2.43.0.linux-amd64.tar.gz  -C  /usr/local/prometheus

在这里插入图片描述

prometheus系统监控和报警系统,使用的端口是9090,所以需要开放9090端口(查看防火墙以及云服务器的安全组中端口是否开放) 。

prometheus 获取 edis_exporter监控到的数据进行分析

1.2 配置Prometheus

解压后在prometheus目录下有一个名为prometheus.yml的主配置文件。其中包含大多数标准配置及prometheus的自检控配置,修改prometheus配置文件

vi prometheus.yml
- job_name: "redis"
    static_configs:
      - targets: ["localhost:9121"]  #redis_exporte在哪台服务器启动的就填哪台服务器ip

IP对应的是我们内网的服务器,端口则是对应的exporter的监听端口。

1.3 启动服务

nohup ./prometheus --config.file=prometheus.yml > ./prometheus.log 2>&1 &

启动后浏览器通过如下url可查看prometheus 从redis_exporter拉取到的数据

http://服务器ip:9090/

在这里插入图片描述

2 使用Prometheus监控redis服务

2.1 下载redis_exporter安装包

下载安装包,打开github然后下载最新的安装包。这里我们选择v0.24.0,因为最新的版本,没有-redis.file参数,对多redis实例在grafana的dashboard中展示,无法所搜单个实例。

github地址
在这里插入图片描述
下载

wget https://github.com/oliver006/redis_exporter/releases/download/v0.24.0/redis_exporter-v0.24.0.linux-amd64.tar.gz

edis_exporter是用于监控redis的数据和性能的工具,其使用的端口是9121,所以需要开放9121端口(查看防火墙以及云服务器的安全组中端口是否开放) 。

2.2 解压安装

解压

tar -xf  redis_exporter-v0.24.0.linux-amd64.tar.gz  -C  /usr/local/prometheus

2.3 启动redis_exporter登陆redis

## 无密码
nohup ./redis_exporter -redis.addr 192.168.1.120:6379 &
## 有密码
nohup ./redis_exporter  -redis.addr 192.168.1.120:6379  -redis.password 123456 &

查看redis_exporte是否开启

netstat -lntp
tcp6       0      0 :::9121               :::*              LISTEN      32407/redis_exporte

启动后浏览器通过如下url可查看redis_exporter 监控到的数据
在这里插入图片描述

http://服务器ip:9121/metrics

配置成功,我们在普罗米修斯的dashboard也页面上可以看到,redis是UP状态 。
在这里插入图片描述

我们在搜索框中直接输入redis关键字,即可查询到关于redis的所有的数据。

在这里插入图片描述

3 Grafana展示Prometheus获取到的数据

grafana是数据可视化工具,可以做数据监控和数据统计,带有告警功能。

grafana将prometheus的分析数据以可视化的形式呈现,使用的端口是3000,所以需要开放3000端口(查看防火墙以及云服务器的安全组中端口是否开放) 。

3.1 grafana的安装

wget https://dl.grafana.com/oss/release/grafana-9.4.7.linux-amd64.tar.gz
tar -zxvf grafana-9.4.7.linux-amd64.tar.gz
 
 
刚安装完需要重载systemd配置:systemctl daemon-reload
启动服务:systemctl start grafana-server
查看状态:systemctl status grafana-server
设置开机启动: systemctl enable grafana-server.service

官网下载较慢,在清华镜像站下载
下载链接>> https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/

yum -y install grafana-7.3.3-1.x86_64.rpm 
#开启服务
systemctl start grafana-server
#查看端口验证(grafana默认监听3000端口)
[root@localhost ~]# netstat -nlpt|grep 3000
tcp6       0      0 :::3000                 :::*                    LISTEN      21185/grafana-serve 

也可以解压后后进入目录启动:

nohup ./grafana-server &	

访问 http://你的服务器ip:3000 , 默认用户名和密码是admin,登录后会提示更改密码。
在这里插入图片描述

相关文件位置

  • 访问地址 IP:3000
  • 账号密码 admin/admin
  • 环境文件 /etc/sysconfig/grafana-server
  • 日志文件 /var/log/grafana
  • 数据库 /var/lib/grafana/grafana.db
  • 配置文件 /etc/grafana/grafana.ini

安装包信息

  • 二进制文件: /usr/sbin/grafana-server init.d
  • 脚本: /etc/init.d/grafana-server
  • 环境变量文件: /etc/sysconfig/grafana-server
  • 配置文件: /etc/grafana/grafana.ini
  • 启动项: grafana-server.service
  • 日志文件:/var/log/grafana/grafana.log
  • 默认配置的sqlite3数据库:/var/lib/grafana/grafana.db

3.2 配置grafana的url:

在这里插入图片描述
url配置为:
(如果上面你的redis_exporter、prometheus、grafana都部署在同一服务器上,url可配置为 http://localhost:9090/ )

http://你安装的prometheus服务器ip:9090/

在这里插入图片描述

3.3 添加grafana插件:

在这里插入图片描述

3.4 下载prometheus-redis_rev1.json模板

wget  https://grafana.com/api/dashboards/763/revisions/1/download

3.5 在grafana中导入json模板

选择刚下载好的JSON文件导入:
在这里插入图片描述
接下来就是展示数据了,如果启动多个redis实例,那么这个列表就会展示出所有的redis实例,上面也说到用redis_exporter 0.24版本,有redis.file 参数,可以将所有的redis实例写到一个文件中。

3.6 最终效果:

在这里插入图片描述

;