应监控哪些指标? - Amazon MemoryDB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

应监控哪些指标?

以下 CloudWatch 指标可以很好地深入了解 MemoryDB 的性能。在大多数情况下,我们建议您为这些指标设置 CloudWatch 警报,以便在出现性能问题之前采取纠正措施。

CPUUtilization

这是以百分比形式报告的主机级指标。有关更多信息,请参阅 主机级指标

对于 2v CPUs 或更低的较小节点类型,请使用该CPUUtilization 指标来监控您的工作负载。

一般来说,我们建议您将阈值设置为可用 CPU 的 90%。因为 Valkey 和 Redis OSS 是单线程的,实际阈值应计算为节点总容量的一小部分。例如,假设您使用具有两个核心的节点类型。在这种情况下,的阈值 CPUUtilization 将为 90/2,即 45%。要查找您的节点类型拥有的内核数 (vCPUs),请参阅 M emoryDB 定价。

您需要根据所使用的节点中的核心数,来确定自己的阈值。如果超过此阈值,并且主要工作负载来自读取请求,则请通过添加只读副本来扩展集群。如果主要工作负载来自写入请求,我们建议您添加更多分片,以在更多主节点中分配写入工作负载。

提示

您可能可以使用向您报告有关 Valkey 或 Redis OSS 引擎核心的使用率百分比的指标 EngineCPUUtilization,而不是使用主机级指标 CPUUtilization。要了解此指标在您的节点上是否可用并了解更多信息,请参阅 MemoryDB 的指标

对于具有 4v CPUs 或更高版本的大型节点类型,您可能需要使用该EngineCPUUtilization指标,该指标报告 Valkey 或 Redis OSS 引擎核心的使用百分比。要了解此指标在您的节点上是否可用并了解更多信息,请参阅 MemoryDB 的指标

发动机 CPUUtilization

对于具有 4v CPUs 或更高版本的大型节点类型,您可能需要使用该EngineCPUUtilization指标,该指标报告 Valkey 或 Redis OSS 引擎核心的使用百分比。要了解此指标在您的节点上是否可用并了解更多信息,请参阅 MemoryDB 的指标

SwapUsage

这是以字节为单位报告的主机级指标。有关更多信息,请参阅 主机级指标

如果FreeableMemory CloudWatch 指标接近 0(即低于 100MB),或者SwapUsage指标大于FreeableMemory指标,则节点可能承受内存压力。

移出

这是引擎指标。我们建议您根据应用程序需求,为此指标确定自己的警报阈值。

CurrConnections

这是引擎指标。我们建议您根据应用程序需求,为此指标确定自己的警报阈值。

越来越多的CurrConnections可能表明您的应用程序存在问题;您需要调查应用程序行为才能解决此问题。

内存

内存是 Valkey 和 Redis OSS 的核心。了解集群的内存利用率对于避免数据丢失和适应数据集的未来增长是必要的。有关节点内存利用率的统计信息可在 INFO 命令的内存部分中找到。

网络

集群网络带宽容量的决定因素之一是您选择的节点类型。有关节点的网络容量的更多信息,请参阅 Amazon MemoryDB 定价

延迟

延迟指标SuccessfulWriteRequestLatencySuccessfulReadRequestLatency衡量 Valkey 引擎的 MemoryDB 响应请求所花费的总时间。

注意

在 Valkey 客户端上启用了 CLIENT REPLY 的情况下使用 Valkey 管道时,SuccessfulWriteRequestLatencySuccessfulReadRequestLatency指标的值可能会膨胀。Valkey pipeling 是一种通过一次发出多个命令来提高性能的技术,无需等待对每个命令的响应。为避免值膨胀,我们建议您将 Redis 客户端配置为在关闭客户端回的情况下管道命令。

复制

可通过 ReplicationBytes 指标了解被复制的数据量。您可以根据复制吞吐量监控 MaxReplicationThroughput。建议在达到最大复制吞吐量时添加更多分片。

ReplicationDelayedWriteCommands 还可以提示工作负载是否超过最大复制吞吐量。有关在 MemoryDB 中使用复制的更多信息,请参阅了解 MemoryDB 复制