使用 AutoOps 解决 CPU 使用率过高的问题

2024年12月24日   |   by mebius

作者:来自 ElasticMusab Dogan

%title插图%num

AutoOps 如何查明并解决 Elasticsearch 集群中的高 CPU 使用率问题:分步案例研究。

什么是 AutoOps?

在本文中,我们将深入探讨一个真实场景,其中 AutoOps 在诊断和解决生产 Elasticsearch 集群中的高 CPU 使用率方面发挥了重要作用。事件始于客户支持单,最终以可操作的见解结束,以确保未来运营更加顺畅。

引言

高效管理 Elasticsearch 集群对于保持应用性能和可靠性至关重要。当客户突然遇到性能瓶颈时,快速诊断问题并提供可行的建议成为关键的区分点。

本文回顾了 AutoOps —— 一款强大的监控和管理工具 —— 如何帮助我们识别并分析影响 Elasticsearch 集群的高 CPU 使用问题。文章以分步形式详细说明了 AutoOps 如何找到问题根源,并探讨了该工具在简化调查过程中的优势tgcode

情况

2024 年 7 月 14 日,一个名为“Palomino”的生产集群发生中断。客户第二天报告了这个问题,称高 CPU 使用率可能是根本原因。尽管这个问题并不紧急(因为中断已经解决),但了解根本原因对于防止再次发生仍然至关重要。

初始请求如下:

“We had an outage on 7/14 (screenshot attached) and are trying to figure out what happened and how to fix it. It seems like the CPU usage on the cluster is high. Would you be willing to advise us on how best to maintain the cluster?”

调查始于一个关键词:高 CPU 使用率。

使用 AutoOps 进行诊断

%title插图%num

步骤 1:分析 AutoOps 事件

AutoOps 立即标记了多个 “High CPU Utilization” 事件。单击事件即可获得全面的详细信息,包括:

  • 事件的开始和结束时间。
  • 承受最大压力的节点。
  • 初步建议,例如启用搜索慢日志。

虽然我们注意到了启用慢日志的建议,但我们仍在继续探索更深层次的根本原因。如果你想激活搜索慢日志,可以使用此链接。

%title插图%num

第 2 步:节点视图分析

AutoOps 重点关注 CPU 压力最高的节点 (instance-0000000008),过滤图表以突出显示事件窗口期间特定于该节点的指标。此视图确认了显著的 CPU 使用率峰值。

%title插图%num

步骤 3:更广泛的调查

通过缩小范围来分析更大的时间范围,我们观察到 CPU 的增加与搜索和索引请求的增加同时发生。进一步扩大视野发现,问题不仅限于一个节点,而是影响了集群中的所有节点。

%title插图%num

步骤 4:识别模式

调查揭示了一个关键模式:每天早上 7:00 左右出现规律性峰值,由同时进行的搜索和索引请求触发。这种重复行为是 CPU 利用率过高的根本原因。

%title插图%num

第 5 步:可操作的见解

AutoOps 提供了三个关键问题来询问客户:

  • 每天早上 7:40(GMT+3)发生了什么?(What is happening every day at 7:40 AM (GMT+3)?)
  • 这些请求是否可以更均匀地分布在一段时间内以减轻压力?(Can these requests be distributed more evenly over time to decrease pressure?)
  • 在实施更改后,你是否在早上 7:00 监控了 CPU 图表(AutoOps > 节点视图 > 主机和进程 > CPU)?(Have you monitored the CPU graph (AutoOps > Node View > Host and Process > CPU) at 7:00 AM after implementing changes?)

找到问题的根本原因通常需要 90% 的时间,而解决问题则需要 10%。多亏了 AutoOps,我们能够更轻松、更快地处理这个问题 90%。

提示:要找到有问题的查询,AutoOps 起着至关重要的作用。它将帮助你找到有问题的查询/索引在何处运行,例如在哪个节点、分片和索引上。此外,由于 long_running_search_task 事件,AutoOps 无需任何手动操作就可以识别有问题的查询并创建一个事件,并使用推荐的方法来微调查询。

使用 AutoOps 的好处

  • 快速识别:AutoOps 基于事件的监控可在几分钟内确定受影响的节点和时间范围。
  • 明确的建议:启用慢速日志等建议将有助于集中精力进行故障排除。
  • 模式识别:通过关联所有节点和时间范围内的指标,AutoOps 发现了问题的重复性。
  • 用户友好的视图:过滤和缩放功能可以轻松可视化趋势和异常。

结论

借助 AutoOps,我们将模糊的高 CPU 使用率报告转变为清晰、可操作的计划。通过识别重复的活动模式,我们为客户提供了工具和见解tgcode,以防止将来出现类似问题。

如果你的团队管理生产系统,将 AutoOps 等工具纳入您的工作流程可以显著提高可见性并减少解决关键问题的时间。

使用 AutoOps 可以轻松管理 Elastic Cloud。获得即时性能见解和成本可见性 – 免费试用 AutoOps 14 天。

原文:Resolving high tgcodeCPU usage issues with AutoOps – Elasticsearch Labs

文章来源于互联网:使用 AutoOps 解决 CPU 使用率过高的问题

Tags: