复述,出口国
本页:
简介
下面的快速入门提供了Redis导出器的设置说明和预配置的仪表板、警报规则和记录规则。在运行完这个快速入门的步骤后,你将有:
设置和配置Redis出口商收集Redis指标,如Redis正常运行时间,每秒执行的命令,内存利用率,和更多。大部分项目来自
复述的信息
命令被导出。Redis出口商将揭露这些普罗米修斯风格的指标。配置普罗米修斯刮Redis出口商指标和可选的船到Grafana云。
设置一组预先配置的记录规则来缓存频繁的Prometheus查询。
导入Grafana仪表板来可视化您的指标数据。
设置普罗米修斯警报规则,以提醒您的指标数据。
指标使用
该出口商默认发布了大约190个普罗米修斯时间序列。要查看此导出器默认附带的指标列表,请下载示例指标刮在这里.
请注意,根据它的配置,Redis出口商可能收集和发布比默认设置更多的指标。要了解有关配置Redis出口商和切换其收集器的更多信息,请参阅Redis出口商GitHub库.
除了切换Redis出口商的设置,你可以通过删除时间序列来减少指标的使用,你不需要存储在普罗米修斯或Grafana云。要了解如何做到这一点,请参阅通过重新标签减少Prometheus参数的使用来自Grafana Cloud文档。
Grafana Cloud的Redis出口商集成
如果你正在使用Grafana Cloud,你可以通过安装Redis出口商集成来跳过本指南中的所有步骤,它旨在帮助你在几个命令和点击中启动和运行。免费注册.
要了解如何使用Redis导出器集成设置Redis导出器,请参见Redis出口商集成来自Grafana Cloud文档。
本页:
Redis出口商快速入门
在本指南中,您将学习如何设置和配置Redis导出器来收集Redis正常运行时间、每秒执行的命令和内存利用率等指标,并将它们作为普罗米修斯风格的指标公开。然后进行配置普罗米修斯来抓取Redis的指标,并有选择地将它们发送到Grafana Cloud。最后,您将设置一组预先配置和策划的记录规则, Grafana指示板,报警规则.在本指南的最后,你会有仪表板,你可以用它来可视化你的Redis指标,和一组预先配置的警报。
如果你在使用Grafana云,复述,集成可以帮助您快速启动和运行。Redis集成将Redis导出器嵌入Grafana Cloud Agent并自动提供警报规则和仪表板,因此您不必执行本指南中的步骤。要了解如何使用Redis集成设置Redis出口商,请参阅复述,集成来自Grafana Cloud文档。
先决条件
在你开始之前,你应该有以下可用的:
- 一个Redis服务器和端口6379可达的Redis出口商连接到,看他们的下载页面,如果你没有安装Redis。
- 一台与Redis出口商版本兼容的Linux机器。要查看可用版本的列表,请参见释放.
- 普罗米修斯在你的环境中运行或者直接在机器上运行。要了解如何安装Prometheus,请参见安装来自普罗米修斯文档。
- Grafana运行在您的环境或直接在机器上。要了解如何安装Grafana,请参见安装Grafana来自Grafana的文件。
- (可选)Grafana Cloud帐号。Grafana Cloud托管Grafana和一个皮质基于Prometheus度量端点。仍然需要使用安装在环境中的Prometheus或Grafana Cloud Agent.要了解更多关于Grafana Cloud的信息,请参见Grafana云.
步骤1:设置Redis出口商
在这一步中,你将在你的机器上设置Redis导出器,以Prometheus格式收集和公开Redis指标。本指南使用Ubuntu 20.04系统和Redis Server v6.2.1。根据操作系统和Redis版本的不同,步骤可能略有不同。
首先,登录到您的计算机并下载相关的Redis出口商二进制文件。本指南使用linux-amd64
二进制文件,但你应该选择一个对应于你的系统操作系统和体系结构:
wget https://github.com/oliver006/redis_exporter/releases/download/v1.18.0/redis_exporter-v1.18.0.linux-amd64.tar.gz
取代v1.18.0
与您想安装的版本。这个指南可能会变得陈旧,所以最好检查Redis出口商释放页面获取最新的稳定版本。
解压缩tarball和cd
进入目录:
Tar XVFZ redis_export -v1.18.0.linux-amd64. Tar .gz CD redis_export -v1.18.0.linux-amd64. gz
当运行Redis导出时,你需要指定你的Redis服务器正在运行的地址。这可能与您的设置不同,默认情况下,Redis导出器将连接到本地主机,但地址可以通过使用-redis.addr
国旗。
最后,运行导出器:
。/ redis_exporter复述。addr复述:/ / localhost: 6379
INFO[0000] Redis Metrics exports v1.18.0构建日期:2021-03-11-03:26:58 sha1: d0597c841d2c9fa30ce8b6ded6251d1994822e27 Go: go1.16.1 GOOS: linux GOARCH: amd64 INFO[0000]提供指标在:9121/ Metrics
如果您看到上面的输出,则说明您成功运行了Redis export。
Redis出口商在端口9121上以Prometheus格式发布Redis度量。您可以使用旋度
.您将需要打开一个新的SSH会话或后台Redis出口商进程来使用旋度
.
curl http://localhost: 9121 /指标
……redis_cluster_connections 0 #帮助redis_cluster_enabled cluster_enabled指标#式redis_cluster_enabled计redis_cluster_enabled 0 #帮助redis_commands_duration_seconds_total总额的时间在几秒钟内每个命令#类型redis_commands_duration_seconds_total计数器redis_commands_duration_seconds_total {cmd =“客户端”}1.7 e-05 redis_commands_duration_seconds_total {cmd =“命令”}0.000443 redis_commands_duration_seconds_total 0.000178 {cmd = "配置"}redis_commands_duration_seconds_total{cmd="info"} 8.1e-05 redis_commands_duration_seconds_total{cmd="latency"} 8e-06 redis_commands_duration_seconds_total{cmd="set"} 1.7e-05 redis_commands_duration_seconds_total{cmd="slowlog"} 1.4e-05 # HELP redis_commands_processed_total commandds_processed_total metric # TYPE redis_commands_processed_total counter redis_commands_processed_total
如果看到上面的输出,就可以开始使用Prometheus抓取Redis指标了。
为了避免从命令行运行和管理Redis export,您可以创建一个systemd
服务。要了解如何做到这一点,请参阅创建systemd服务来管理代理.将代理二进制文件的路径替换为Redis export的路径。
Redis出口商提供的功能,如:
- 使用Redis进行身份验证
- TLS配置
- Redis-only指标
还有更多。要了解有关这些功能的更多信息,请参阅Redis出口商GitHub存储库.
步骤2:使用普罗米修斯刮Redis出口商
现在Redis出口商已经在您的机器上启动并运行,您可以配置一个Prometheus刮作业来收集和存储Redis出口商的指标。
将以下抓取作业配置添加到scrape_configs
部分prometheus.yml
配置文件:
—job_name: redis static_configs:—targets: ['redis_exporter_machine_IP_address:9121']
取代redis_exporter_machine_IP_address
使用运行Redis导出器的机器的IP地址。如果你在同一台机器上运行普罗米修斯,这将是本地主机
.要了解有关配置Prometheus的更多信息,请参见配置来自普罗米修斯文档。
如果你没有prometheus.yml
配置文件,使用您喜欢的文本编辑器创建一个简单的配置文件。打开你喜欢的文本编辑器,并粘贴以下Prometheus配置:
global: scrape_interval: 15s scrape_configs:—job_name: redis static_configs:—targets: ['redis_exporter_machine_IP_address:9121']
这个配置告诉Prometheus每15秒抓取一次所有作业。唯一配置的抓取作业被调用redis-exporter
并定义了redis_exporter_machine_IP_address: 9121
目标。默认情况下,普罗米修斯会刮/指标
端点使用HTTP。
保存并关闭文件。然后,您可以使用以下命令运行Prometheus文件:
/ prometheus.yml /普罗米修斯——config.file =
向Grafana Cloud发送度量
要将Redis出口商度量从Prometheus发送到Grafana Cloud,请配置remote_write
参数prometheus.yml
配置文件。要了解更多,请参见米米修斯来自Grafana Cloud文档。了解更多关于remote_write
参数,请参见remote_write
来自普罗米修斯文档。
步骤3:配置录音规则
使用记录规则,您可以预计算和缓存经常查询的指标。例如,如果仪表板面板使用计算密集型查询,例如率()
,您可以创建一个记录规则,该规则以定期缩短的时间间隔运行,并将密集查询的结果保存在一个新的时间序列中。这避免了每次刷新仪表板时获取和计算数据。要了解更多关于普罗米修斯录音规则,请参见记录规则来自普罗米修斯文档。
注意:在加载本指南中的指示板之前,您应该加载以下记录规则。
仪表板查询和警报规则使用记录规则来减少Prometheus或Grafana Cloud Metrics服务器上的负载,这取决于您在哪里评估规则。
您可以获取录音规则YAML文件在这里.
这个记录规则YAML文件是使用Redis导出器生成的mixin.
将记录规则载入普罗米修斯
要将记录规则加载到Prometheus中,请将以下内容添加到您的prometheus.yml
配置文件:
Rule_files: - "redis_exporter_recording_rules.yml"
一定要更换redis_exporter_recording_rules.yml
与您的Redis出口商记录规则YAML文件的路径。
将记录规则加载到Grafana Cloud
要了解如何将记录规则加载到Grafana Cloud中,请参见普罗米修斯和洛基用cortextool统治.
步骤4:配置仪表板
这个快速入门包括以下仪表板:
- Redis仪表板普罗米修斯Redis出口商
要了解如何将这些仪表板导入到Grafana,请参见导入仪表板来自Grafana的文件。
注意:这些指示板查询可能依赖于前一步中定义的记录规则。确保在导入仪表板之前导入这些。
你可以取仪表板在这里.
步骤5:配置提醒
使用Prometheus警报规则,您可以定义警报,当PromQL表达式在一段时间内违反某个阈值或满足指定条件时触发警报。例如,您可以定义一个HighRequestLatency
在一段时间内,当请求延迟指标大于某个阈值时触发的警报。一旦触发警报条件,警报将移动到等待
状态。在满足条件后的一段时间内定义的为
参数时,警报移动到发射
状态。您可以使用类似的工具配置路由和通知来触发警报Alertmanager.Alertmanager也内置在Grafana Cloud中。
您可以获取告警规则YAML文件在这里.
将警报规则加载到Prometheus中
要将警报规则加载到Prometheus中,请将以下内容添加到您的prometheus.yml
配置文件:
Rule_files: - "redis_exporter_alerting_rules.yml"
一定要更换redis_exporter_alerting_rules.yml
你的Redis警报规则YAML文件的路径。
将警报规则加载到Grafana Cloud中
要了解如何将警报规则加载到Grafana Cloud中,请参见普罗米修斯和洛基用cortextool统治.
结论
在这个快速入门中,您将在Linux机器上安装并运行Redis导出器。然后配置普罗米修斯刮Redis出口商暴露的Redis指标。您将记录规则和警报规则加载到Prometheus中,最后导入Grafana仪表板以可视化您的Redis指标。
如果你正在使用Grafana Cloud,你可以通过安装与Grafana Cloud Agent的Redis集成来跳过本指南中的所有步骤。这种集成将预先配置的Redis出口商嵌入到代理中,并自动提供Grafana仪表板和Prometheus警报和记录规则,因此您不必手动导入它们。要了解如何设置Redis集成,请参见Grafana云集成.
仪表板、记录规则和警报规则是使用Redis exports Mixin生成的。Mixins是由主题专家策划和设计的仪表板、记录规则和警报的可重用模板。欲了解更多,请参阅复述,混合存储库。
本页:
注意:在加载本指南中的指示板之前,您应该加载以下记录规则。仪表板查询使用记录规则来减少Prometheus或Grafana Cloud Metrics服务器上的负载,这取决于您在哪里评估规则。
本快速入门包括以下录制规则:
redis_memory_fragmentation_ratio
组:—name: redis_rules rules:—expr: redis_memory_used_rss_bytes / redis_memory_used_bytes record: redis_memory_fragmentation_ratio
这个记录规则YAML文件是使用Redis导出器生成的mixin.
本页:
本快速入门包含以下告警规则:
RedisDown
Redis实例关闭
RedisOutOfMemory
Redis内存不足
RedisTooManyConnections
Redis有超过X个连接的客户端
下载以下警报规则YAML文件group:—name: redis rules:—alert: redis注解:description: |—redis实例down VALUE = {{$ VALUE}} LABELS: {{$ LABELS}} summary: redis实例down(实例{{$ LABELS . properties)instance}}) expr: redis_up == 0 for: 5m labels: severity: critical - alert: RedisOutOfMemory注解:description: |- Redis is running out of memory (> 90%) VALUE = {{$ VALUE}} labels: {{$labels}} summary: Redis out of memory(实例{{$labels. memory)实例}})expr: redis_memory_used_bytes / redis_total_system_memory_bytes * 100 > 90 for: 5m labels: severity: warning - alert: RedisTooManyConnections annotations: description: |- Redis instance has too many connections VALUE = {{$ VALUE}} labels: {{$labels}} summary: Redis connection too many(实例{{$labels. bytes)。实例}})expr: redis_connected_clients > 100 for: 5m labels: severity: warning
这个警报规则YAML文件是使用Redis导出器生成的mixin.
本页:
Grafana Cloud提供了一套不断扩展的集成,可以在几分钟内快速获得可观测性堆栈并运行。Redis集成,内置到Grafana云代理,暴露和刮基本的Redis指标,并将它们推到Grafana云。代理将使用嵌入式Redis出口商抓取指标,Grafana Cloud将自动提供定制的Grafana仪表板和警报,以便对这些数据进行可视化和操作。
要了解更多,请查看Grafana云文档.
它是如何工作的
配置、安装、连接和维护Prometheus监视组件通常涉及重要的领域知识。从设置到仪表板和警报可能需要相当长的时间。作为Grafana的创造者——以及Prometheus和Cortex的核心贡献者——我们构建了简单的集成来抽象一些工作,以便快速开始。工作原理:
- 注册(或登录)一个免费Grafana云帐户.
- 选择您想要观察的目标(不断扩大的目录)。
- 运行一行命令安装Grafana Agent。代理嵌入并预配置exports以公开默认指标,并将它们推送到Grafana Cloud指标后端。
- 瞧!您将看到定制的Grafana仪表板,并将受益于正常的警报默认值。
寻找不同的出口商或集成?查看我们的不断增长的流行组件集成库比如MySQL, Postgres, Redis, Memcached等等。