简介
对Redis数据库的有效监控对于保持最佳性能、识别潜在瓶颈以及确保系统整体可靠性至关重要。Redis Exporter服务是一个强大的工具,旨在使用Prometheus监控Redis数据库。
本教程将指导您完成Redis Exporter服务的完整设置和配置,确保您无缝地建立监控解决方案。通过遵循本教程,您将实现一个完全可操作的监控设置,有效监控Redis数据库的性能指标。
注意:本教程的大约设置时间为约25分钟。
先决条件
开始之前,请确保您已准备好以下先决条件:
- 你需要在一个Ubuntu Droplet上设置并运行Redis数据库服务器。你可以参考我们关于如何在Ubuntu上安装和保护Redis的教程。你希望监控的服务器应该可以从你计划安装Redis导出服务的机器访问。
- 你将需要SSH访问Redis服务器来安装和配置Redis导出服务。
- Prometheus MySQL导出器与Prometheus集成以抓取指标和与Grafana集成以可视化。在这里,我们使用来自DigitalOcean Marketplace的Prometheus和Grafana镜像来监控数据库Droplet。
注意:在本教程中,我们将介绍两种不同的方法来设置Redis Exporter服务,以监控Redis数据库。您可以选择手动配置和基于脚本的自动化,它们分别适用于不同的偏好和操作要求。按照每种方法的说明,有效地在您的基础设施上部署Redis Exporter服务。这种灵活性让您能够选择最佳的部署策略和操作工作流程方法。
方法1:手动配置
下面我们开始手动配置方法。
创建Prometheus系统和用户组
创建一个名为“prometheus”的系统用户和用户组来管理导出服务。
下载和安装Redis Exporter
从GitHub下载Redis Exporter的最新版本,解压下载的文件,并将可执行文件移动到/usr/local/bin/目录。
验证Redis导出器安装
以下是示例输出:
为Redis导出器配置systemd
服务
创建一个systemd
服务单元文件来管理Redis导出器服务。
在文件中添加以下内容:
–log-format=txt \
–web.listen-address=:9121 \
–web.telemetry-path=/metrics
重新加载systemd
并启动Redis导出器服务
配置Prometheus Droplet(手动方法)
我们现在来手动配置Prometheus droplet。
登录到您的Prometheus服务器,并添加要抓取的Redis Exporter端点。
用您的Redis Exporter端点(Redis Exporter服务的默认端口是9121
)替换IP地址和端口。
手动配置到此结束。现在,让我们继续使用脚本进行配置。
您还可以通过运行两个脚本来实现这一点 – 一个用于目标 Droplets,另一个用于 Prometheus 实例。
首先,我们来配置目标 Droplets。
通过 SSH 登录目标 Droplets。
使用以下命令下载目标配置脚本:
一旦脚本下载完成,运行以下命令确保它具有可执行权限:
运行脚本,使用以下命令:
配置完成。
注意:如果 redis_exporter.service
文件已存在,脚本将不会运行。
通过 SSH 登录 Prometheus 实例,并使用以下命令下载脚本:
一旦脚本下载完成,运行以下命令确保它具有可执行权限:
运行脚本,使用以下命令:
输入要添加到监控的 Droplets 的数量。
输入主机名和 IP 地址。
配置完成。
添加完成后,通过访问 URL prometheushostname:9090/targets
来检查目标是否已更新。
注意:如果您输入的IP地址已经添加到监控中,系统将要求您再次输入详细信息。另外,如果您没有更多服务器需要添加,可以输入0以退出脚本
在浏览器上访问Grafana-IP:3000
以登录Grafana仪表板。
前往配置 > 数据源。
点击添加数据源。
搜索并选择Prometheus。
输入名称为Prometheus,URL(Prometheushostname:9090
)并点击“保存 & 测试”。如果您看到“数据源正在工作”,则您已成功添加了数据源。完成后,前往创建 > 导入。
您可以手动配置仪表板,也可以通过上传JSON文件来导入仪表板。Redis监控的JSON模板可以在以下链接中找到:
填写字段并导入。
Grafana仪表板准备好了。选择主机并检查指标是否可见。请随时根据需要修改和编辑仪表板。
在本教程中,您学会了如何在服务器上自动化部署 Redis Exporter。脚本首先检查 redis_exporter.service
单元文件是否已经存在,如果存在则退出,以避免重复设置。接着,它创建了一个 Prometheus 系统用户和组,以实现安全的服务的隔离。脚本下载并安装了 Redis Exporter 二进制文件,并将它们放在了 /usr/local/bin/
标准化的目录中。
Source:
https://www.digitalocean.com/community/tutorials/monitor-redis-droplet-using-redis-exporter