为 Amazon OpenSearch Service 推荐的 CloudWatch 警报
当一段时间内 CloudWatch 指标超出指定的值时,CloudWatch 警报将会执行某个操作。例如,您可能希望 Amazon 在集群运行状况为 red
的时间超过 1 分钟时向您发送电子邮件。本部分包括一些 Amazon OpenSearch Service 建议警报及其响应方式。
您可以使用 Amazon CloudFormation 自动部署这些告警。有关示例堆栈,请参阅相关的 GitHub 存储库
如果您部署 CloudFormation 堆栈,则 KMSKeyError
和 KMSKeyInaccessible
警报将以 Insufficient
Data
状态存在,因为这些指标仅在域遭遇加密密钥问题时才会出现。
有关配置告警的更多信息,请参阅的《Amazon CloudWatch 用户指南》中的创建 Amazon CloudWatch 告警。
警报 | 问题 |
---|---|
ClusterStatus.red 最大值 >= 1 达到 1 分钟,1 次连续时间 |
至少有一个主分片其及副本未分配给节点。请参阅红色集群状态。 |
ClusterStatus.yellow 最大值 >= 1 持续 1 分钟,连续 5 次 |
至少有一个副本分片未分配给节点。请参阅黄色集群状态。 |
FreeStorageSpace 最小值 <= 20480 达到 1 分钟,1 次连续时间 |
您的集群中的节点已降至 20GiB 的可用存储空间。请参阅缺少可用存储空间。此值以 MiB 为单位,因此我们建议将其设置为每个节点的存储空间的 25%,而不是 20480。 |
ClusterIndexWritesBlocked 大于等于 1 达到 5 分钟,1 次连续时间 |
您的群集正在阻止写入请求。请参阅ClusterBlockException。 |
Nodes 最小值 < x 达到 1 天,1 次连续时间 |
x 是您的集群中的节点数。此警报表示您的群集中至少有一个节点无法访问的时间已达到一天。请参阅集群节点失败。 |
AutomatedSnapshotFailure 最大值 >= 1 达到 1 分钟,1 次连续时间 |
自动快照失败。此故障通常由红色群集运行状况导致。请参阅红色集群状态。 有关所有自动快照的摘要和一些有关故障的信息,您也可以尝试以下操作:
|
CPUUtilization 或 WarmCPUUtilization 最大值 >= 80% 达到 15 分钟,连续 3 次 |
有时可能会出现 100% 的 CPU 利用率,但是持续的高利用率是有问题的。考虑使用更大的实例类型或添加实例。 |
JVMMemoryPressure 最大值 >= 95% 达到 1 分钟,连续 3 次 |
如果使用量增加,群集可能会遇到内存不足错误。请考虑垂直扩展。OpenSearch Service 将实例的一半内存用于 Java 堆,最大堆大小为 32 GiB。您最多可以将实例的 RAM 垂直扩展至 64GiB,此时可以通过添加实例水平扩展。 |
OldGenJVMMemoryPressure 最大值 >= 80% 达到 1 分钟,连续 3 次 |
|
MasterCPUUtilization 最大值 >= 50% 达到 15 分钟,连续 3 次 |
考虑将更大的实例类型用于您的专用主节点。由于其在集群稳定性和蓝/绿部署中的作用,专用主节点的 CPU 使用率应比数据节点低。 |
MasterJVMMemoryPressure 最大值 >= 95% 达到 1 分钟,连续 3 次 |
|
MasterOldGenJVMMemoryPressure 最大值 >= 80% 达到 1 分钟,连续 3 次 |
|
KMSKeyError >= 1 达到 1 分钟,1 次连续时间 |
您的域中用于加密静态数据的 Amazon KMS 加密密钥已禁用。重新启用它可恢复正常操作。有关更多信息,请参阅Amazon OpenSearch Service 中的静态数据加密。 |
KMSKeyInaccessible >= 1 达到 1 分钟,1 次连续时间 |
您的域中用于加密静态数据的 Amazon KMS 加密密钥已被删除或其对 OpenSearch Service 的授权已撤销。您无法恢复处于此状态的域。但如果您具有手动快照,则可以使用它迁移到新域。要了解更多信息,请参阅 Amazon OpenSearch Service 中的静态数据加密。 |
shards.active >= 30000 达到 1 分钟,1 次连续时间 |
活动主分区和副本分区的总数大于 30000。轮换索引的频率可能过于频繁。请考虑使用 ISM 在索引达到特定使用期限之后将其移除。 |
5xx 警报 >= OpenSearchRequests 的 10% |
一个或多个数据节点可能会重载,或者请求无法在空闲超时期限内完成。请考虑切换为更大的实例类型,或向集群添加更多节点。请确认您遵循以下分区和集群架构最佳实践。 |
MasterReachableFromNode < 1 达到 1 天,1 次连续时间 |
此警报指示主节点已停止或无法访问。这些故障通常是由网络连接问题或 Amazon 依赖问题导致的。 |
ThreadpoolWriteQueue 平均值 >= 100 达到 1 分钟,1 次连续时间 |
集群正在经历高索引并发。请检查和控制索引请求,或增加集群资源。 |
ThreadpoolSearchQueue 平均值 >= 500 达到 1 分钟,1 次连续时间 |
集群正在经历高搜索并发。请考虑扩展集群。您也可以增加搜索队列大小,但过度增加搜索队列大小可能会导致出现内存不足错误。 |
ThreadpoolSearchQueue 最大值 >= 5000 达到 1 分钟,1 次连续时间 |
|
ThreadpoolSearchRejected 最大值为 >=1 达到 1 分钟,1 次连续时间 |
这些警报会通知您可能会影响性能和稳定性的域问题。 |
ThreadpoolWriteRejected 最大值为 >=1 达到 1 分钟,1 次连续时间 |
如果您只是想查看指标,请参阅 使用 Amazon CloudWatch 监控 OpenSearch 集群指标。
您可能会考虑的其他警报
请考虑根据您经常使用的 OpenSearch Service 功能配置以下警报。
警报 | 问题 |
---|---|
WarmFreeStorageSpace 最小值 <= 10240 达到 1 分钟,1 次连续时间 |
您的集群中的 UltraWarm 节点已降至 10GiB 的可用存储空间。请参阅缺少可用存储空间。此值以 MiB 为单位,因此我们建议将其设置为每个 UltraWarm 节点的存储空间的 10%,而不是 10240。 |
HotToWarmMigrationQueueSize >= 20 达到 1 分钟,3 次连续时间 |
大量索引同时从热存储移动到 UltraWarm 存储。请考虑扩展集群。 |
HotToWarmMigrationSuccessLatency >= 1 天,1 次连续时间 |
配置此警报,以便在尝试轮询每日索引时,在 |
WarmJVMMemoryPressure 最大值 >= 95% 达到 1 分钟,连续 3 次 |
如果使用量增加,群集可能会遇到内存不足错误。请考虑垂直扩展。OpenSearch Service 将实例的一半内存用于 Java 堆,最大堆大小为 32 GiB。您最多可以将实例的 RAM 垂直扩展至 64GiB,此时可以通过添加实例水平扩展。 |
WarmOldGenJVMMemoryPressure 最大值 >= 80% 达到 1 分钟,连续 3 次 |
|
WarmToColdMigrationQueueSize >= 20 达到 1 分钟,3 次连续时间 |
大量索引同时从 UltraWarm 存储转移到冷存储。请考虑扩展集群。 |
HotToWarmMigrationFailureCount >= 1 达到 1 分钟,1 次连续时间 |
迁移可能会在快照、分区重新定位或强制合并期间失败。快照或分片重新定位期间的故障通常是由于节点故障或 S3 连接问题造成的。磁盘空间不足通常是强制合并失败的根本原因。 |
WarmToColdMigrationFailureCount >= 1 达到 1 分钟,1 次连续时间 |
如果在尝试将索引元数据迁移到冷存储时失败,迁移通常也会失败。在删除暖索引群集状态时,也可能会发生故障。 |
WarmToColdMigrationLatency >= 1 天,1 次连续时间 |
配置此警报,以便在尝试轮询每日索引时,在 |
AlertingDegraded >= 1 达到 1 分钟,1 次连续时间 |
警报索引为红色,或者一个或多个节点未按计划运行。 |
ADPluginUnhealthy >= 1 达到 1 分钟,1 次连续时间 |
异常检测插件未正常工作,原因是故障率过高,或者其中一个正在使用的索引为红色。 |
AsynchronousSearchFailureRate >= 1 达到 1 分钟,1 次连续时间 |
过去一分钟至少有一次异步搜索失败,这可能意味着协调器节点出现故障。异步搜索请求的生命周期仅在协调器节点上管理,因此,如果协调器关闭,则请求将会失败。 |
AsynchronousSearchStoreHealth >= 1 达到 1 分钟,1 次连续时间 |
持久索引中的异步搜索响应存储的运行状况为红色。您可能会存储大量异步响应,这可能会破坏集群的稳定性。请尝试将异步搜索响应限制为 10MB 或更少。 |
SQLUnhealthy >= 1 达到 1 分钟,3 次连续时间 |
SQL 插件将返回 5xx 响应代码,或将无效的查询 DSL 传递给 OpenSearch。排查客户端对插件发出的请求是否存在问题。 |
LTRStatus.red >= 1 达到 1 分钟,1 次连续时间 |
运行 Learning to Rank 插件所需的索引中至少有一个缺少主分片,且不起作用。 |