当前位置: 首页 > news >正文

AWS OpenSearch 可观测最佳实践

AWS OpenSearch 介绍

OpenSearch 是一种全面开源搜索和分析引擎,使用案例包括日志分析、实时应用程序监控、点击流分析等。Amazon OpenSearch Service 是一项托管服务,让用户能够在 AWS 云中轻松部署、运行并扩展 OpenSearch 集群。

观测云

观测云是一款专为 IT 工程师打造的全链路可观测产品,它集成了基础设施监控、应用程序性能监控和日志管理,为整个技术栈提供实时可观察性。这款产品能够帮助工程师全面了解端到端的用户体验追踪,了解应用内函数的每一次调用,以及全面监控云时代的基础设施。此外,观测云还具备快速发现系统安全风险的能力,为数字化时代提供安全保障。

采集器配置

  1. 登陆观测云控制台
  2. 点击【集成】菜单,选择【云账号管理】
  3. 点击【添加云账号】,选择【AWS】,填写界面所需的信息,如之前已配置过云账号信息,则忽略此步骤
  4. 点击【测试】,测试成功后点击【保存】,如果测试失败,请检查相关配置信息是否正确,并重新测试
  5. 点击【云账号管理】列表上可以看到已添加的云账号,点击相应的云账号,进入详情页
  6. 点击云账号详情页的【集成】按钮,在未安装列表下,找到AWS OpenSearch,点击【安装】按钮,弹出安装界面安装即可。

关键指标

指标名称描述单位
ClusterStatus_green值为 1 指示将所有索引分片分配给集群中的节点,表示集群处于健康状态Int
ClusterStatus_yellow值为 1 指示将所有索引的主要分片分配给集群中的节点,但是至少有一个索引的分片副本不是如此Int
ClusterStatus_red值为 1 指示至少一个索引的主分片和副本分片未分配给集群中的节点Int
Shards_activePrimary活动主分区数Int
Shards_unassigned未分配给集群中节点的分区数Int
Shards_initializing正在初始化的分区数Int
SearchableDocuments跨集群中所有数据节点的可搜索文档的总数Int
Shards_active活动主分区和副本分区的总数Int
Shards_delayedUnassigned其节点分配因超时设置已延迟的分区数Int
Shards_relocating正在重新定位的分区数Int
DeletedDocuments跨集群的所有数据节点已标记为删除的文档总数Int
NodesOpenSearch 集群中的节点数Int
CPUUtilization集群中数据节点的 CPU 利用率百分比Int
FreeStorageSpace集群中各数据节点的可用空间Int
ClusterUsedSpace集群的已使用空间总量Int
2xx指定的 HTTP 响应代码 2xx 的对域的请求数Int
3xx指定的 HTTP 响应代码 3xx 的对域的请求数Int
4xx指定的 HTTP 响应代码 4xx 的对域的请求数Int
5xx指定的 HTTP 响应代码 5xx 的对域的请求数Int
ThroughputThrottle指示磁盘是否受到节流Int
IopsThrottle指示该域每秒进行读写操作的次数(IOPS)是否已被节流Int
JVMMemoryPressure用于集群中所有数据节点的 Java 堆的最大百分比Int
JVMGCYoungCollectionCount“年轻代”垃圾回收的运行次数Int
JVMGCOldCollectionCount“年老代”垃圾回收的运行次数Int
OldGenJVMMemoryPressure集群中所有数据节点上用于“上一代”的 Java 堆的最大百分比Int
JVMGCYoungCollectionTime集群执行“年轻代”垃圾回收所花费的时间,以毫秒为单位Int
JVMGCOldCollectionTime集群执行“年老代”垃圾回收所花费的时间,以毫秒为单位Int
IndexingLatency节点中所有索引操作所用的总时间差(以毫秒为单位)Int
IndexingRate每分钟的索引操作数Int
SearchLatency节点中所有搜索的总时间差(以毫秒为单位)Int
SearchRate数据节点上所有分片的每分钟搜索请求总数Int
SegmentCount数据节点上的分段数。您拥有的分段越多,每次搜索所花费的时间就越长Int
SysMemoryUtilization使用中的实例内存的百分比。此指标的值较高是正常的,通常不表示集群存在问题Int
ThreadpoolForce_mergeQueue强制合并线程池中的排队任务数。如果队列大小一直很大,请考虑扩展您的集群Int
ThreadpoolForce_mergeRejected强制合并线程池中的已拒绝任务数。如果此数字持续增长,请考虑扩展您的集群Int
ThreadpoolForce_mergeThreads强制合并线程池的大小Int
ThreadpoolSearchQueue搜索线程池中的排队任务数。如果队列大小一直很大,请考虑扩展您的集群Int
ThreadpoolSearchRejected搜索线程池中的已拒绝任务数。如果此数字持续增长,请考虑扩展您的集群Int
ThreadpoolSearchThreads搜索线程池的大小Int
Threadpoolsql-workerQueueSQL 搜索线程池中的排队任务数。如果队列大小一直很大,请考虑扩展您的集群Int
Threadpoolsql-workerRejectedSQL 搜索线程池中的已拒绝任务数。如果此数字持续增长,请考虑扩展您的集群Int
Threadpoolsql-workerThreadsSQL 搜索线程池的大小Int
ThreadpoolWriteQueue写入线程池中的排队任务数Int
ThreadpoolWriteRejected写入线程池中的已拒绝任务数Int
ThreadpoolWriteThreads写入线程池的大小Int
CoordinatingWriteRejected由于索引压力而在协调节点上发生的拒绝总数Int
PrimaryWriteRejected由于索引压力而在主分区上发生的拒绝总数Int
ReplicaWriteRejected由于索引压力而在副本分区上发生的拒绝总数Int
ReadLatencyEBS 卷上读取操作的延迟(以秒为单位)Int
WriteLatencyEBS 卷上写入操作的延迟(以秒为单位)Int
ReadThroughputEBS 卷上读取操作的吞吐量(以字节/秒为单位)Int
WriteThroughputEBS 卷上写入操作的吞吐量(以字节/秒为单位)Int
ReadIOPS针对 EBS 卷上的读取操作的每秒输入和输出 (I/O) 操作数Int
WriteIOPS针对 EBS 卷上的写入操作的每秒输入和输出 (I/O) 操作数Int
BurstBalance一个 EBS 卷的可爆发存储桶中剩余输入和输出(I/O)积分的百分比。值为 100 表示该卷积累的积分数量已达最大数量Int
AsynchronousSearchInitializedRate过去 1 分钟内初始化的异步搜索数Int
AsynchronousSearchRunningCurrent当前正在运行的异步搜索数Int
AsynchronousSearchCompletionRate过去 1 分钟内成功完成的异步搜索数Int
AsynchronousSearchFailureRate最后一分钟内完成和失败的异步搜索数Int
AsynchronousSearchPersistRate过去 1 分钟内持续存在的异步搜索数Int
AsynchronousSearchRejected自节点启动时间以来拒绝的异步搜索总数Int
AsynchronousSearchCancelled自节点启动时间以来取消的异步搜索总数Int
SQLRequestCount对 _sql API 的请求数Int
SQLUnhealthy值为 1 表示 SQL 插件将返回 5xx 响应代码或将无效的查询 DSL 传递到 OpenSearch 来响应特定请求。其他请求将继续成功。值为 0 表示最近未失败。如果您看到持续值为 1,请排查您的客户端对插件发出的请求的问题。Int
SQLDefaultCursorRequestCount类似于 SQLRequestCount,但仅统计分页请求Int
SQLFailedRequestCountByCusErr由于客户端问题而失败的对 _sql API 的请求数Int
SQLFailedRequestCountBySysErr由于服务器问题或功能限制而失败的对 _sql API 的请求数Int

场景视图

登录观测云控制台,点击「场景」 -「新建仪表板」,输入 “opensearch”, 选择 “AWS OpenSearch 监控视图”,点击 “确定” 即可添加视图。

监控器(告警)

观测云内置了监控器模板,可以选择从模版创建监控器,并开启适合业务的监控器以及时通知相关成员关注问题,触发条件、频率等信息可以依据实际业务进行调整。

登录观测云控制台,点击「监控」 -「新建监控器」,输入 “aws opensearch”, 选择对应的监控器,点击 “确定” 即可添加。

搜索线程池已拒绝任务数突增

ThreadpoolSearchRejected_Average:表示在一定时间内,OpenSearch 集群中搜索线程池中被拒绝的任务数量的平均值。该指标反映了搜索请求由于线程池队列已满而被拒绝的情况。最近 15 分钟被拒绝数大于等于 100 时,发出严重告警。

主分片和副分片分配异常

ClusterStatus_red_Average:表示 OpenSearch 集群处于红色状态的平均时间占比,红色状态意味着集群中至少有一个主分片及其副本未分配给任何节点,值为 0 表示集群运行正常,值大于 0 表示集群有部分时间处于红色状态。当集群完全处于红色状态时发出严重告警。

节点 CPU 使用率过高

CPUUtilization_Average 用于衡量 OpenSearch 集群中节点的平均 CPU 使用率,当节点的 CPU 使用率大于等于 90% 时,发出严重告警,当 CPU 使用率大于等于 80% 小于 90% 时,发出重要告警。

总结

通过将 AWS OpenSearch 的原生监控数据集成到观测云平台,用户可以实现对 OpenSearch 的实时性能监控、资源使用分析以及安全事件的可视化。观测云的高级分析和可视化功能,如实时仪表板、智能告警和根因分析,能够帮助用户快速定位问题、优化成本,并确保数据的高可用性和安全性。这种结合不仅提升了监控的效率和准确性,还通过集中管理的方式简化了运维流程,使用户能够更好地应对复杂的云环境挑战。

http://www.dtcms.com/a/353851.html

相关文章:

  • Maya绑定:人物绑定详细案例
  • 数据结构之 【红黑树的简介与插入问题的实现】
  • 数值分析离散积分近似求值
  • 【数据分析】微生物群落网络构建与模块划分的比较研究:SparCC、Spearman-RAW与Spearman-CLR方法的性能评估
  • Shell编程-随机密码生成
  • volitale伪共享问题及解决方案
  • SoC如何实现线程安全?
  • 【进阶篇第五弹】《详解存储过程》从0掌握MySQL中的存储过程以及存储函数
  • TypeScript:Interface接口
  • 如何启动一个分支网络改造试点?三步走
  • 【链表 - LeetCode】25. K 个一组翻转链表
  • 干眼症护理学注意事项
  • linux下的网络编程(2)
  • 技术分析 | Parasoft C/C++test如何突破单元测试的隔离难题
  • 亚马逊关键词策略全解析:类型、工具与多账号运营优化指南
  • AT_abc406_f [ABC406F] Compare Tree Weights
  • Windows/Linux 环境下 Jmeter 性能测试的安装与使用
  • 基于SpringBoot的宠物领养服务系统【2026最新】
  • MySQL 面试题系列(五)
  • Unity自定义Inspector面板之使用多选框模拟单选框
  • 前端技术演进录:从 AI 革命到架构新生
  • 【Linux】常用命令 拥有者和权限(四)
  • Python随机选择完全指南:从基础到高级工程实践
  • 安全向量模板类SiVector
  • vue 前端 区域自适应大小
  • AWS申请增加弹性IP配额流程
  • 《Vuejs设计与实现》第 17 章(编译优化)
  • 机器视觉学习-day05-图片颜色识别及颜色替换
  • # 快递单号查询系统:一个现代化的物流跟踪解决方案
  • YOLO12n-Deepsort多目标跟踪之昆虫数据集