华为云用户手册

  • 规划集群可用区 为防止数据丢失,并确保在服务中断情况下能降低集群的停机时间,从而增强集群的高可用性, CSS 服务支持跨可用区(即多可用区)部署。用户可以在同一个区域内选择两个或三个不同的可用区进行集群部署。 在创建集群时,如果用户选择了两个或三个可用区, CS S服务将自动开启跨AZ的高可用性特性,确保节点在这些可用区内均匀分配。具体的节点分布情况,包括不同数量的节点如何在各个可用区中分布,可以参考表1。 在创建集群时,选择的任意类型的节点数量都要大于等于所选的AZ数量,否则跨可用区部署会失败。 部署跨AZ集群时,任意类型的节点都会被均匀的分布在不同的AZ上,满足各个AZ之间节点数量的差小于等于1。 当集群中数据节点和冷数据节点的数量和可用区的数量不是整数倍关系时,集群的数据分布可能会不均匀,从而影响数据查询或写入业务。 表1 节点数量和AZ分布 集群节点个数 单AZ 两AZ 三AZ AZ1 AZ1 AZ2 AZ1 AZ2 AZ3 1个节点 1 不支持 不支持 2个节点 2 1 1 不支持 3个节点 3 2 1 1 1 1 4个节点 4 2 2 2 1 1 … … … … … … … 在选择多可用区部署时,建议合理配置副本数量,以更高效地利用跨可用区的高可用性特性。 在跨两个可用区的部署中,当其中一个AZ不可用时,剩下的AZ需要继续提供服务,因此索引的副本个数至少为1个。由于Elasticsearch默认副本数为1个,因此如果您对读性能没有特殊要求,可以直接使用默认值。 在跨三个可用区部署中,为了保证其中任意一个AZ不可用时,剩余的AZ可以继续提供服务,因此索引的副本数至少要为1个。为了提高集群的查询能力,也可以设置更多的副本。由于Elasticsearch默认的副本数为1个,因此需要用户修改setting配置来实现修改索引副本个数。 可以通过如下命令修改索引的副本个数,如: curl -XPUT http://ip:9200/{index_name}/_settings -d '{"number_of_replicas":2}' 也可以通过在模板中指定所有索引的副本个数,如: curl -XPUT http://ip:9200/_template/templatename -d '{ "template": "*", "settings": {"number_of_replicas": 2}}' 其中,“ip”表示集群内网访问地址,“index_name”表示索引名称,“number_of_replicas”表示修改后的索引副本个数,此处以修改为2个索引副本为例。 当采用多可用区部署时,如果某个可用区发生故障,相关的业务故障行为分析及应对策略请参见表2。 表2 AZ故障的业务故障行为分析 可用区数量 主节点个数 业务中断行为及应对建议 2 0 如果节点个数为2的倍数: 一半的数据节点故障,需要替换故障可用区中的一个节点,才能继续选择主节点。 如果节点数为奇数: 故障AZ含多一个节点,需要替换故障可用区中一个节点,才能继续选择主节点。相关替换请联系技术支持。 故障AZ含少一个节点,不中断业务,能够继续选择主节点。 2 3 有50%机会的停机时间。当两个专用主节点分配到一个可用区中,一个主节点分配到另一个可用区中时: 如果具有一个专用主节点的可用区遇到中断,则剩余可用区具有两个专用主节点,这两个专用主节点可以选择出主节点。 如果具有两个专用主节点的可用区遇到中断,剩余可用区只有一个专用主节点,无法选择出主节点,业务中断,需要联系技术支持。 3 0 当您选择3个可用区,节点个数为4,三个可用区的节点分布数为2,1,1,如果节点个数为2的可用区故障,那么此时业务中断,建议您选择三个可用区时避免选择4个节点。 一般不会出现业务中断时间。 3 3 无业务中断时间。 当集群创建完成后,支持切换可用区,具体操作请参见切换Elasticsearch集群可用区。 切换可用区包含两大场景:可用区高可用改造和可用区平移切换。 可用区高可用改造:适用于单AZ改造成两AZ、单AZ改造成三AZ或两AZ改造成三AZ的场景,目的是为了提升集群的高可用性。 可用区平移切换:适用于从一个AZ完全迁移到另一个AZ的场景,目的是为了解决当前可用区资源不足的问题。
  • 变更影响 在扩容前,您需要了解以下关键影响和操作建议,以便合理规划变更,最小化业务影响。 扩容节点存储容量(纵向扩展)对业务没有影响,而增加节点数量或增加节点类型(横向扩展)可能产生以下影响: 性能影响 扩容节点不会中断业务,但是扩容过程中数据分片需要均衡到新节点以分摊负载。此过程会消耗IO性能,建议在业务低峰期执行。 建议在业务低峰期提高数据迁移速率以缩短任务耗时,并在业务高峰期前降低迁移速率以减轻对集群性能的影响。数据迁移速率由“indices.recovery.max_bytes_per_sec”参数决定,该参数值默认是“CPU核数 x 32MB”(如4核CPU默认128MB)。该参数取值范围为40MB至1000MB,可根据业务需求调整。 PUT /_cluster/settings { "transient": { "indices.recovery.max_bytes_per_sec": "1000MB" } } 变更过程特性 扩容任务一旦启动就无法中止,直到任务成功或失败才会结束。
  • 约束限制 集群的节点存储容量只支持扩容不支持缩容,请基于业务量合理选择节点存储容量。 包周期集群不支持同时扩容“节点数量”和“节点存储容量”。 集群的Master节点和Client节点的存储容量不支持扩容。 本地盘类型的数据节点不支持扩容节点存储容量。 扩容集群的节点数量时,不同节点类型的取值范围请参见表3。 表2 节点数量的取值说明 节点类型 取值范围 数据节点 集群没有Master节点时:1~32 集群有Master节点时:1~200 Master节点 3、5、7、9(必须是3~9之间的奇数) Client节点 1~32 冷数据节点 1~32
  • 规划索引分片数 在使用集群的过程时,特别是在进行数据导入操作之前,建议根据具体的业务需求,提前对集群的数据结构和分布进行规划。这包括合理设计索引和确定分片数量。为了确保集群在性能和可扩展性方面达到最佳状态,以下是一些建议。 单个分片大小:建议将每个分片的大小控制在10GB到50GB之间。这有助于在存储效率和查询性能之间取得平衡。 集群总分片数量:为了管理方便和避免过度扩展,建议将集群的总分片数量控制在3万以内。这有助于保持集群的稳定性和响应速度。 内存与分片比例:在资源分配上,建议每1GB的内存空间放置20到30个分片。这样可以确保每个分片都有足够的内存资源进行索引和查询操作。 单节点分片数:为了避免单点过载,建议每个节点上的分片数量不超过1000个。这有助于避免节点资源竞争,确保节点的稳定运行。 索引分片与节点数的关系:对于单个索引,建议其分片数与集群的节点数保持一致,或者设置为节点数的整数倍。这有助于实现负载均衡,优化查询和索引的性能。 通过以上建议,可以更有效地规划和管理CSS集群的索引分片,从而提升集群的整体性能和可维护性。
  • 规划集群安全模式 表9 集群类型介绍 集群类型 集群描述 适用场景 非安全集群 非安全模式的集群 非安全模式的集群无需安全认证即可访问,采用HTTP协议明文传输数据。建议确认访问环境的安全性,勿将访问接口暴露到公网环境上。 适合内网业务,用于测试场景。 优点:简单,接入集群容易。 缺点:安全性差,任何人都可以访问集群。 安全集群 安全模式+HTTP协议的集群 安全模式的集群需要通过安全认证才能访问,且支持对集群进行授权、加密等功能。采用HTTP协议明文传输数据。建议确认访问环境的安全性,勿将访问接口暴露到公网环境上。 可以实现用户权限隔离,适用于对集群性能敏感的场景。 优点:访问集群需要安全认证,提升了集群安全性。通过HTTP协议访问集群又能保留集群的高性能。 缺点:无法公网访问集群。 安全模式+HTTPS协议的集群 安全模式的集群需要通过安全认证才能访问,且支持对集群进行授权、加密等功能。采用HTTPS协议进行通信加密,使数据更安全。 有非常高的安全要求,且需要公网访问集群的场景。 优点:访问集群需要安全认证,提升了集群安全性,且HTTPS协议的通讯加密可以实现集群公网访问功能。 缺点:通过HTTPS协议访问集群,集群的读取性能相对HTTP协议来说,会下降20%左右。 当访问安全模式的集群时,需要输入用户名和密码通过安全认证才能访问。CSS服务支持以下两类用户的安全认证: 集群的管理员:管理员账户名默认为admin,密码为创建集群时设置的管理员密码。 集群的用户:集群的管理员通过Kibana创建集群的用户和密码。创建方式请参见创建OpenSearch集群用户并授权使用。 当集群创建完成后,支持切换安全模式,具体操作请参见更改OpenSearch集群安全模式。 切换安全模式包含三大场景:非安全模式切换为安全模式、安全模式切换为非安全模式、安全模式的协议切换。
  • 规划虚拟私有云和子网 CSS服务支持在非共享VPC和共享VPC内创建集群。 共享VPC和非共享VPC相比,有如下优势: 在一个账号内统一创建资源,并将资源共享给其他账号,其他账号无需创建重复资源,可以精简资源数量以及网络架构,提升管理效率并节约成本。 比如不同账号下的VPC网络互通需要建立对等连接,使用共享VPC后,则不同账号用户可以在同一个VPC创建资源,免去了对等连接配置,有效的简化组网结构。 在一个账号内统一管理运维资源,便于企业集中配置业务安全策略,并且利于对资源使用情况的监控和审计,支撑业务的安全诉求。 当选择使用共享VPC创建集群时,需要提前完成共享VPC子网的创建,操作流程请参见表8。有关共享VPC的使用限制及详细操作指导等信息可以参考共享VPC概述。 表8 共享子网创建流程说明 方法 说明 操作指导 方法A 通过 RAM 管理控制台,所有者创建共享,将子网共享给使用者。配置如下: 选择共享子网。 为共享子网选择权限,即指定使用者对该共享子网具备的权限。 CSS服务在共享VPC中创建集群需要选择权限:default vpc subnet statement。 指定共享子网的使用者,可以指定多个。 共享创建完成后,通过RAM管理控制台,使用者可以选择接受或者拒绝共享申请。 使用者接受共享申请,子网共享成功。 如果后续使用者不再需要使用该共享子网,可以退出该共享。 使用者拒绝共享申请,子网共享失败。 创建共享 接受/拒绝共享邀请 退出共享 方法B 通过RAM管理控制台,所有者创建共享,将子网共享给使用者。配置如下: 选择共享子网。 为共享子网选择权限,即指定使用者对该共享子网具备的权限。 CSS服务在共享VPC中创建集群需要选择权限:default vpc subnet statement。 指定共享子网的使用者,可以指定多个。 通过VPC管理控制台,选择上一步中已创建的共享,将子网加入到该共享内。 共享创建完成后,通过RAM管理控制台,使用者可以选择接受或者拒绝共享申请。 使用者接受共享申请,子网共享成功。 如果后续使用者不再需要使用该共享子网,可以退出该共享。 使用者拒绝共享申请,子网共享失败。 创建共享 将VPC子网共享给其他账号 接受/拒绝共享邀请 退出共享
  • 规划节点类型 在OpenSearch集群中,合理规划不同节点类型对于优化性能和资源利用率至关重要。在创建集群时,应根据业务需求、查询负载、数据增长模式和性能目标来确定添加哪些类型的节点,以实现合适的集群性能和资源管理。表4是介绍了不同节点类型的适用场景,建议用户根据具体的业务需求和性能预期来选择是否启用该类节点。 如果创建集群时未启用Master节点或Client节点,当业务运行一段时间后,发现数据节点压力太大时,支持单独添加Master节点或Client节点,具体操作请参见增加节点类型。 如果创建集群时未启用冷数据节点,则集群创建完成后不支持单独添加冷数据节点,请在创建集群时合理选择是否启用冷数据节点。 表4 各类节点的适用场景 节点类型 节点功能描述 适用场景 数据节点(ess) 数据节点用于存储数据,当集群没有Master节点和Client节点时,数据节点会同时兼顾这两类节点的功能。 集群必配的节点类型。 当集群未启用Master节点和Client节点时,数据节点将同时承担集群管理、存储数据、提供接入集群和分析数据的职责。此时,为保证集群中数据的稳定性,建议设置节点数量大于等于3个。 当集群启用了Master节点但未启用Client节点时,数据节点将用于存储数据并提供接入集群和分析数据的功能。 当集群未启用Master节点但启用了Client节点时,数据节点将用于存储数据并提供集群管理功能。 当集群同时启用了Master节点和Client节点时,数据节点将仅用于存储数据。 Master节点(ess-master) Master节点负责管理集群中所有节点任务,如元数据管理、索引创建与删除、分片分配等。在大规模集群的元数据管理、节点管理、稳定性保障和集群操作控制中发挥着至关重要的作用。 集群规模较大:当集群的节点数超过16个时,为了更有效地管理集群状态和元数据,建议添加专用的Master节点。 拥有高索引和分片数量:如果索引数量或分片数超过1万个,Master节点可以处理更复杂的集群管理任务,避免对数据节点的性能造成影响。 单独管理集群节点:Master节点负责维护集群的元数据,包括索引映射、设置和别名等,对于复杂的集群结构,专用的Master节点可以提供更好的管理。包括节点加入、退出以及故障检测等,Master节点在集群节点管理中扮演核心角色。 提升集群稳定性和可靠性:专用的master节点可以提高集群的稳定性和可靠性,因为它减少了对同时承担数据存储和查询任务的节点的依赖。 优化数据节点性能:通过将集群管理任务从数据节点分离到Master节点,可以优化数据节点的性能,使其专注于数据操作。 Client节点(ess-client) Client节点负责接收并协调外部请求,如search和write请求,在处理高负载查询、复杂聚合、大量分片管理以及优化集群扩展性方面发挥着重要作用。 存在高查询QPS:当集群面临高查询每秒查询率(QPS)时,独立的Client节点可以更均匀地分发查询请求,减轻数据节点的负担,提高整体查询性能。 存在复杂的聚合查询: 对于需要大量计算资源的复杂聚合查询,Client节点可以专门处理聚合结果,从而提升聚合查询的效率和响应速度。 集群分片数量多:在分片数量较多的集群中,Client节点可以有效地协调和管理对各个分片的查询请求,提高请求的转发和处理效率。 可以减轻数据节点压力:Client节点负责解析search请求,确定索引分片的位置,并协调分片节点执行查询。可以减轻数据节点的负载,使它们更专注于数据的存储和索引。 提高集群扩展性:增加client节点可以提供更好的集群扩展性和灵活性,支持更大规模的数据集和更复杂的查询需求。 冷数据节点(ess-cold) 冷数据节点用于存储对查询时延要求不高,但数据量较大的历史数据,是管理大规模数据集和优化存储成本的有效方式。 需要存储大量历史数据:当需要存储大量不常访问但对分析有用的历史数据时,使用冷数据节点可以提供成本效益较高的存储解决方案。 需要优化热数据性能:通过将旧数据迁移到冷数据节点,可以减少对热数据节点的存储压力,从而优化热数据的查询和写入性能。 对查询时延要求不高:对于那些查询频率不高且可以容忍较高查询时延的数据,冷数据节点是合适的存储选择。 追求成本效益:冷数据节点通常采用具有较大磁盘容量的规格,这有助于降低存储成本,同时满足大规模数据存储需求。
  • 规划节点数量 创建集群时,集群的节点数量应当基于业务性能需求和预期负载进行规划。表6提供了计算方式用以确定合适的节点数量。通过这个计算方式可以更科学地规划集群的节点数量,以满足业务需求并保证集群的性能和稳定性。 表6 节点数量的计算方式 节点 性能基线 节点数量计算方式 示例 写入节点 对于挂载云盘的节点,其单核写入性能基线为1MB/s。 对于超高IO型的节点,其单核写入性能基线为1.5MB/s。 写入节点数=业务峰值时的流量÷单节点的核数÷单核写入性能基线x副本数 业务峰值写入100MB/s,使用16u64g的节点,预计需要100÷16÷1x2=12个节点。 查询节点 相同节点,不同业务场景下的性能差异非常大,单节点的性能基线难以评估。这里以业务平均查询响应时间(单位为秒)作为查询的性能基线进行测算。 查询节点数=QPS÷(单节点的核数x3÷2÷平均查询响应时间)x分片数量 查询QPS要求1000,平均查询响应时间100ms,索引规划3个分片,使用16u64g的节点,预计需要1000÷(16x3÷2÷0.1)x3=12个节点。 总节点数量 不涉及 总节点数量=写入节点数+查询节点数 总节点数=写入节点数+查询节点数=24个节点数。 说明: 这里计算的总节点数量表示数据节点和冷数据节点的数量之和。 当一个集群包含的节点类型不同时,各节点类型支持的节点数量不同,设置节点数量时可以参考表7。 表7 节点数量的取值说明 节点类型 取值范围 数据节点 集群没有Master节点时:1~32 集群有Master节点时:1~200 Master节点 3、5、7、9(必须是3~9之间的奇数) Client节点 1~32 冷数据节点 1~32
  • 规划集群可用区 为防止数据丢失,并确保在服务中断情况下能降低集群的停机时间,从而增强集群的高可用性,CSS服务支持跨可用区(即多可用区)部署。用户可以在同一个区域内选择两个或三个不同的可用区进行集群部署。 在创建集群时,如果用户选择了两个或三个可用区,CSS服务将自动开启跨AZ的高可用性特性,确保节点在这些可用区内均匀分配。系统均匀分配的节点满足各个AZ之间节点数量的差小于等于1,具体的节点分布情况,包括不同数量的节点如何在各个可用区中分布,可以参考表1。 在创建集群时,选择的任意类型的节点数量都要大于等于所选的AZ数量,否则跨可用区部署会失败。 部署跨AZ集群时,任意类型的节点都会被均匀的分布在不同的AZ上,满足各个AZ之间节点数量的差小于等于1。 当集群中数据节点和冷数据节点的数量和可用区的数量不是整数倍关系时,集群的数据分布可能会不均匀,从而影响数据查询或写入业务。 表1 节点数量和AZ分布 集群节点个数 单AZ 两AZ 三AZ AZ1 AZ1 AZ2 AZ1 AZ2 AZ3 1个节点 1 不支持 不支持 2个节点 2 1 1 不支持 3个节点 3 2 1 1 1 1 4个节点 4 2 2 2 1 1 … … … … … … … 在选择多可用区部署时,建议合理配置副本数量,以更高效地利用跨可用区的高可用性特性。 在跨两个可用区的部署中,当其中一个AZ不可用时,剩下的AZ需要继续提供服务,因此索引的副本个数至少为1个。由于OpenSearch默认副本数为1个,因此如果您对读性能没有特殊要求,可以直接使用默认值。 在跨三个可用区部署中,为了保证其中任意一个AZ不可用时,剩余的AZ可以继续提供服务,因此索引的副本数至少要为1个。为了提高集群的查询能力,也可以设置更多的副本。由于OpenSearch默认的副本数为1个,因此需要用户修改setting配置来实现修改索引副本个数。 可以通过如下命令修改索引的副本个数,如: curl -XPUT http://ip:9200/{index_name}/_settings -d '{"number_of_replicas":2}' 也可以通过在模板中指定所有索引的副本个数,如: curl -XPUT http://ip:9200/_template/templatename -d '{ "template": "*", "settings": {"number_of_replicas": 2}}' 其中,“ip”表示集群内网访问地址,“index_name”表示索引名称,“number_of_replicas”表示修改后的索引副本个数,此处以修改为2个索引副本为例。 当采用多可用区部署时,如果某个可用区发生故障,相关的业务故障行为分析及应对策略请参见表2。 表2 AZ故障的业务故障行为分析 可用区数量 主节点个数 业务中断行为及应对建议 2 0 如果节点个数为2的倍数: 一半的数据节点故障,需要替换故障可用区中的一个节点,才能继续选择主节点。 如果节点数为奇数: 故障AZ含多一个节点,需要替换故障可用区中一个节点,才能继续选择主节点。相关替换请联系技术支持。 故障AZ含少一个节点,不中断业务,能够继续选择主节点。 2 3 有50%机会的停机时间。当两个专用主节点分配到一个可用区中,一个主节点分配到另一个可用区中时: 如果具有一个专用主节点的可用区遇到中断,则剩余可用区具有两个专用主节点,这两个专用主节点可以选择出主节点。 如果具有两个专用主节点的可用区遇到中断,剩余可用区只有一个专用主节点,无法选择出主节点,业务中断,需要联系技术支持。 3 0 当您选择3个可用区,节点个数为4,三个可用区的节点分布数为2,1,1,如果节点个数为2的可用区故障,那么此时业务中断,建议您选择三个可用区时避免选择4个节点。 一般不会出现业务中断时间。 3 3 无业务中断时间。 当集群创建完成后,支持切换可用区,具体操作请参见切换OpenSearch集群可用区。 切换可用区包含两大场景:可用区高可用改造和可用区平移切换。 可用区高可用改造:适用于单AZ改造成两AZ、单AZ改造成三AZ或两AZ改造成三AZ的场景,目的是为了提升集群的高可用性。 可用区平移切换:适用于从一个AZ完全迁移到另一个AZ的场景,目的是为了解决当前可用区资源不足的问题。
  • 规划集群版本 选择OpenSearch集群版本时,建议综合考虑业务需求、特性支持、性能改进、安全性更新和长期支持等因素,以确保选择的版本能够满足当前和未来的业务发展,同时提供稳定和安全的运行环境。 表3 集群版本支持情况 特性 OpenSearch 1.3.6 OpenSearch 2.17.1 相关文档 向量检索 √ x 配置OpenSearch集群向量检索 存算分离 √ x 配置OpenSearch集群存算分离 切换冷热数据 √ √ 切换OpenSearch集群冷热数据 导入性能增强 √ x 增强OpenSearch集群数据导入性能
  • 约束限制 当集群的网络配置中,“虚拟私有云”选择的是共享VPC,“子网”选择的是共享VPC下的子网,则该集群不支持配置终端节点服务。 创建终端节点需要有相关的权限,请参考 VPC终端节点 权限管理。 公网访问和终端节点服务使用的是同一个负载均衡。当集群开启了公网访问白名单,由于白名单是作用在负载均衡上面,将会同时限制公网访问集群和内网通过VPCEP访问集群的IP地址。此时需要在公网访问白名单中添加一个网络白名单“198.19.128.0/17”,通过该白名单用来放通经过VPCEP的流量。 终端节点服务开通后,在内网通过终端节点IP或内网 域名 访问CSS将不受集群安全组规则限制,需要配合终端节点本身的白名单功能进行访问控制,操作指导请参见设置终端节点的访问控制。
  • 查询存储冷数据的OBS实时速率 仅2023年2月之后创建的、版本为7.6.2或7.10.2的Elasticsearch集群才支持查询存储冷数据的OBS实时速率。 为了更清晰的了解到存算分离的插件在OBS中的使用情况,CSS服务新增了OBS实时速率的统计接口,并且将实时速率记录到系统索引“.freeze_obs_rate-YYYY.mm.dd”中。 OBS实时速率的计算方式:每5秒计算一次,查询前5秒内的平均OBS操作速率。 系统索引“.freeze_obs_rate-YYYY.mm.dd”用于存放OBS操作实时速率和OBS操作数据,便于了解存储冷数据的OBS的操作趋势。该索引的默认保留时间是30天。 查询存储冷数据的OBS实时速率。 执行如下命令,查询所有节点中存储冷数据的OBS实时速率。 GET _frozen_stats/obs_rate 执行如下命令,查询指定节点中存储冷数据的OBS实时速率。 GET _frozen_stats/obs_rate/{nodeId} “{nodeId}”为节点ID。 响应示例: { "_nodes" : { "total" : 1, "successful" : 1, "failed" : 0 }, "cluster_name" : "elasticsearch", "nodes" : { "dflDvcSwTJ-fkiIlT2zE3A" : { "name" : "node-1", "transport_address" : "127.0.0.1:9300", "host" : "127.0.0.1", "ip" : "127.0.0.1", "update_time" : 1671777600482, // 当前统计值的更新时间。 "obs_rate" : { "list_op_rate" : 0.0, // obs list操作的速率,单位:次/秒。 "get_meta_op_rate" : 0.0, // obs get meta操作的速率,单位:次/秒。 "get_obj_op_rate" : 0.0, // obs get操作的速率,单位:次/秒。 "put_op_rate" : 0.0, // obs put操作的速率,单位:次/秒。 "obs_total_op_rate" : 0.0, // obs所有操作的速率,单位:次/秒。 "obs_upload_rate" : "0.0 MB/s", // obs上传数据的速率,MB/秒。 "obs_download_rate" : "0.0 MB/s" // obs下载数据的速率,MB/秒。 } } } } 修改存储OBS实时速率的索引“.freeze_obs_rate-YYYY.mm.dd”的保留时间。索引的默认保留时间是30天。 执行如下命令,将索引保留时间改成7天。 PUT _cluster/settings { "persistent": { "low_cost.obs_rate_index.evict_time": "7d" } } 表17 配置项说明 配置项 类型 scope 是否可动态修改 说明 low_cost.obs_rate_index.evict_time String node 是 用于控制索引“.freeze_obs_rate-YYYY.mm.dd”的保留时间。 取值范围:1d~365d。 默认值:30d。 单位:天。
  • 恢复已归档的索引 执行以下命令,转换OBS中已归档的索引数据的存储类别,从归档存储转换标准存储。恢复后的归档索引会自动被open,此时索引在恢复有效期内可以被正常检索到。 POST {index_name}/_freeze_archive_restore { "days": 1, "tier": "EXPEDITED" } 表10 请求参数说明 参数名 说明 index_name 需要恢复的索引名称。 days 恢复归档索引后,会对该索引下的文件对象生成一个对象的标准存储副本,此参数指定恢复有效期,即标准存储副本的保存时间,在超出了恢复有效期后,索引下的文件对象会再次转换成归档存储,并且索引会在超出恢复有效期前被close。 取值范围:1~30 默认值:1 单位: 天 tier 恢复类型,可选值为EXPEDITED、STANDARD,两者的计费会有差异。 EXPEDITED:快速恢复,恢复耗时5分钟,索引会在恢复完成以后被自动打开。 STANDARD:标准恢复,恢复耗时5小时,索引会在恢复完成以后被自动打开。 默认值:EXPEDITED 返回结果如下: { "task_uuid" : "FA2a5hWgQ66MQ7ENCFKjCg" } 表11 返回参数说明 参数名 说明 task_uuid 恢复索引的任务ID,在提交恢复请求后会启动一个异步任务,请求返回任务ID,使用该ID可以查询恢复索引任务的进度。
  • 提升冷数据的查询性能 仅2023年2月之后创建的、版本为7.6.2或7.10.2的Elasticsearch集群才支持提升冷数据的查询性能。 在Kibana的Discover页面首次查询冷数据时,由于此时无任何缓存,导致所有数据均需要从OBS上获取,当命中的数据较多时,需要耗费大量的时间从OBS上获取对应的时间字段以及文件元数据。如果将这一部分数据直接缓存在本地,即可大幅提升查询性能,解决Discover页面首次查询慢的问题。 云搜索服务 就是通过冷数据的本地缓存,实现冷数据的查询性能提升。本地缓存配置是预置的,用户可以基于业务场景修改配置,也可以查询、了解本地缓存信息。 修改冷数据的本地缓存配置。 表16 本地缓存配置项说明 配置项 类型 scope 是否可动态修改 说明 low_cost.local_cache.max.capacity Integer node 是 节点上,能够打开的冷数据缓存的最大数量。(每个shard对应一个缓存对象) 取值范围:10~5000 默认值:500 当堆内存使用率一直很高时,可以尝试降低该值。 当查询冷数据本地缓存的相关统计指标中load_overflow_count数值一直持续快速增加时,建议调大该值。 index.low_cost.local_cache.threshold Integer index 是 启用冷数据本地缓存的阈值。 当date类型字段的占比小于此值时,启用冷数据本地缓存date类型字段。否则不使用。 如果当前索引的date类型字段占据当前索引的绝大部分数据量,则不建议使用此功能。 单位:% 取值范围:0~100 默认值:50 index.low_cost.local_cache.evict_time 字符串 index 是 冷数据的本地缓存的淘汰时间,当缓存时间大于该值,缓存将被删除。根据index.frozen_date(冻结成功的时间)判定,当索引无index.frozen_date时,则根据索引创建时间判定。 单位:天 取值范围:1d~365d 默认值:30d 建议根据磁盘用量调整淘汰时长,节省磁盘空间。 执行如下命令,修改“low_cost.local_cache.max.capacity”。 PUT _cluster/settings { "persistent": { "low_cost.local_cache.max.capacity":1000 } } 执行如下命令,修改“index.low_cost.local_cache.threshold”。 PUT es_write_pref2-00000000021/_settings { "index.low_cost.local_cache.threshold":20 } 执行如下命令,修改“index.low_cost.local_cache.evict_time”。 PUT es_write_pref2-00000000021/_settings { "index.low_cost.local_cache.evict_time":"7d" } 查询冷数据的本地缓存信息。 执行如下命令,查询所有节点中冷数据的本地缓存相关指标。 GET /_frozen_stats/local_cache 执行如下命令,查询指定节点中冷数据的本地缓存相关指标。 GET /_frozen_stats/local_cache/{nodeId} “{nodeId}”为节点ID。 返回结果如下: { "_nodes" : { "total" : 1, "successful" : 1, "failed" : 0 }, "cluster_name" : "elasticsearch", "nodes" : { "6by3lPy1R3m55Dcq3liK8Q" : { "name" : "node-1", "transport_address" : "127.0.0.1:9300", "host" : "127.0.0.1", "ip" : "127.0.0.1", "local_cache" : { "get_stats" : { "get_total_count" : 562, //从冷数据本地缓存查询数据的总次数 "get_hit_count" : 562, //从冷数据本地缓存查询数据命中的次数 "get_miss_count" : 0, //从冷数据本地缓存查询数据未命中的次数 "get_total_ns" : 43849200, //从冷数据本地缓存查询数据的总时长 "get_avg_ns" : 78023 //从冷数据本地缓存查询数据的平均时长 }, "load_stats" : { "load_count" : 2, //加载冷数据本地缓存的次数 "load_total_ms" : 29, //加载冷数据本地缓存的总时长 "load_avg_ms" : 14, //加载冷数据本地缓存的平均时长 "load_fail_count" : 0, //加载冷数据本地缓存的失败次数 "load_overflow_count" : 0 //加载冷数据本地缓存时超过缓存池的次数 }, "reload_stats" : { "reload_count" : 0, //重新生成冷数据本地缓存的次数 "reload_total_ms" : 0, //重新生成冷数据本地缓存的总时长 "reload_avg_ms" : 0, //重新生成冷数据本地缓存的平均时长 "reload_fail_count" : 0 //重新生成冷数据本地缓存的失败次数 }, "init_stats" : { "init_count" : 0, //初始化冷数据本地缓存的次数 "init_total_ms" : 0, //初始化冷数据本地缓存的总时长 "init_avg_ms" : 0, //初始化冷数据本地缓存的平均时长 "init_fail_count" : 0 //初始化冷数据本地缓存的失败次数 } } } } }
  • 查看归档索引任务 执行以下命令,查看归档索引任务、恢复归档索引任务的状态。 GET _freeze_archive_progress/{task_uuid} 表12 请求参数说明 参数名 说明 task_uuid 归档索引任务或恢复归档索引任务的ID,该ID由归档已冻结索引任务或恢复已归档索引任务时获取。 返回结果如下: { "id" : "archive:XJTn3hsHSaCjPnvIgv-FFw", "indices" : [ { "index_name" : "log-1017", // 索引名字 "index_uuid" : "HXjhvo9QTwSvjzGBBZBCTw" // 索引ID } ], "stage" : "ARCHIVE_DONE", // 当前状态 "type" : "archive", // 类型,可能为archive(归档)或restore(恢复归档) "node" : "css-d0e8-ess-esn-1-1", // 执行任务的节点名 "start" : 1729222604074, // 开始时间 "time_in_millis" : 788, // 总耗时 "files" : { "total" : 30, // 总文件数 "success" : 30, // 成功文件数 "incremental" : 0, // 多次执行时,部分文件可能已经处于归档状态,此字段标识这样的文件个数 "bytes" : 0, // 所有文件字节数,只有恢复归档索引时才会有该值 "fail" : 0 // 失败文件数 } }
  • 查询存储在OBS中冷数据的缓存状态 冻结索引之后,当冷数据第一次被查询时,系统会自动进行数据缓存,集群支持查询存储在OBS中冷数据的缓存状态。当需要调试集群性能时,也可以重置缓存状态。 查询节点中存储在OBS中冷数据的缓存状态。 执行如下命令,查询所有节点中冷数据的缓存信息。 GET _frozen_stats 执行如下命令,查询指定节点中冷数据的缓存信息。 GET _frozen_stats/${node_id} 表15 请求参数说明 参数名 说明 node_id 节点ID。 返回结果如下: { "_nodes" : { "total" : 3, // 所有节点数量 "successful" : 3, // 成功的节点数量 "failed" : 0 // 失败的节点数量 }, "cluster_name" : "css-zzz1", // 集群名称 "nodes" : { "7uwKO38RRoaON37YsXhCYw" : { "name" : "css-zzz1-ess-esn-2-1", // 节点名称 "transport_address" : "10.0.0.247:9300", // 节点transport连接地址 "host" : "10.0.0.247", // 节点host "ip" : "10.0.0.247", // 节点IP "block_cache" : { "default" : { "type" : "memory", // cache类型,memory表示内存cache "block_cache_capacity" : 8192, // cache容量 "block_cache_blocksize" : 8192, // cache中单个block大小,单位为bytes,如此处表示8k "block_cache_size" : 12, // cache已被占用的大小 "block_cache_hit" : 14, // cache命中数 "block_cache_miss" : 0, // cache未命中数 "block_cache_eviction" : 0, // cache被逐出次数 "block_cache_store_fail" : 0 // 如果cache满了,可能导致新的cache存储失败,此处表示存储失败的次数 } }, "obs_stats" : { "list" : { "obs_list_count" : 17, // 调用OBS list接口的次数 "obs_list_ms" : 265, // 调用OBS list接口的总耗时 "obs_list_avg_ms" : 15 // 调用OBS list接口的平均耗时 }, "get_meta" : { "obs_get_meta_count" : 79, // 调用OBS 获取元数据接口的次数 "obs_get_meta_ms" : 183, // 调用OBS 获取元数据接口的总耗时 "obs_get_meta_avg_ms" : 2 // 调用OBS 获取元数据接口的平均耗时 }, "get_obj" : { "obs_get_obj_count" : 12, // 调用OBS getObject接口的次数 "obs_get_obj_ms" : 123, // 调用OBS getObject接口的总耗时 "obs_get_obj_avg_ms" : 10 // 调用OBS getObject接口的平均耗时 }, "put_obj" : { "obs_put_obj_count" : 12, // 调用OBS putObject接口的总次数 "obs_put_obj_ms" : 2451, // 调用OBS putObject接口的总耗时 "obs_put_obj_avg_ms" : 204 // 调用OBS putObject接口的平均耗时 }, "obs_op_total" : { "obs_op_total_ms" : 3022, // 调用OBS接口的总耗时 "obs_op_total_count" : 120, // 调用OBS接口的总次数 "obs_op_avg_ms" : 25 // 调用OBS接口的平均耗时 } }, "reader_cache" : { "hit_count" : 0, "miss_count" : 1, "load_success_count" : 1, "load_exception_count" : 0, "total_load_time" : 291194714, "eviction_count" : 0 } }, "73EDpEqoQES749umJqxOzQ" : { "name" : "css-zzz1-ess-esn-3-1", "transport_address" : "10.0.0.201:9300", "host" : "10.0.0.201", "ip" : "10.0.0.201", "block_cache" : { "default" : { "type" : "memory", "block_cache_capacity" : 8192, "block_cache_blocksize" : 8192, "block_cache_size" : 12, "block_cache_hit" : 14, "block_cache_miss" : 0, "block_cache_eviction" : 0, "block_cache_store_fail" : 0 } }, "obs_stats" : { "list" : { "obs_list_count" : 17, "obs_list_ms" : 309, "obs_list_avg_ms" : 18 }, "get_meta" : { "obs_get_meta_count" : 79, "obs_get_meta_ms" : 216, "obs_get_meta_avg_ms" : 2 }, "get_obj" : { "obs_get_obj_count" : 12, "obs_get_obj_ms" : 140, "obs_get_obj_avg_ms" : 11 }, "put_obj" : { "obs_put_obj_count" : 12, "obs_put_obj_ms" : 1081, "obs_put_obj_avg_ms" : 90 }, "obs_op_total" : { "obs_op_total_ms" : 1746, "obs_op_total_count" : 120, "obs_op_avg_ms" : 14 } }, "reader_cache" : { "hit_count" : 0, "miss_count" : 1, "load_success_count" : 1, "load_exception_count" : 0, "total_load_time" : 367179751, "eviction_count" : 0 } }, "EF8WoLCUQbqJl1Pkqo9-OA" : { "name" : "css-zzz1-ess-esn-1-1", "transport_address" : "10.0.0.18:9300", "host" : "10.0.0.18", "ip" : "10.0.0.18", "block_cache" : { "default" : { "type" : "memory", "block_cache_capacity" : 8192, "block_cache_blocksize" : 8192, "block_cache_size" : 12, "block_cache_hit" : 14, "block_cache_miss" : 0, "block_cache_eviction" : 0, "block_cache_store_fail" : 0 } }, "obs_stats" : { "list" : { "obs_list_count" : 17, "obs_list_ms" : 220, "obs_list_avg_ms" : 12 }, "get_meta" : { "obs_get_meta_count" : 79, "obs_get_meta_ms" : 139, "obs_get_meta_avg_ms" : 1 }, "get_obj" : { "obs_get_obj_count" : 12, "obs_get_obj_ms" : 82, "obs_get_obj_avg_ms" : 6 }, "put_obj" : { "obs_put_obj_count" : 12, "obs_put_obj_ms" : 879, "obs_put_obj_avg_ms" : 73 }, "obs_op_total" : { "obs_op_total_ms" : 1320, "obs_op_total_count" : 120, "obs_op_avg_ms" : 11 } }, "reader_cache" : { "hit_count" : 0, "miss_count" : 1, "load_success_count" : 1, "load_exception_count" : 0, "total_load_time" : 235706838, "eviction_count" : 0 } } } } 执行如下命令,可以重置缓存状态。 POST _frozen_stats/reset 此命令主要用于调试性能问题,例如重置缓存状态后再次执行查询可以清晰看到本次查询的缓存命令情况。在业务运行阶段不需要执行此命令。 返回结果如下: { "_nodes" : { "total" : 1, "successful" : 1, "failed" : 0 }, "cluster_name" : "Es-0325-007_01", "nodes" : { "mqTdk2YRSPyOSXfesREFSg" : { "result" : "ok" } } }
  • 基于归档状态查询索引列表 执行以下命令,基于归档状态查询索引列表。 GET _cat/archive_indices?stage={STAGE} 表13 请求参数说明 参数名 说明 STAGE 索引的归档状态,可选值如下: ARCHIVE_INIT:已接收到归档任务,尚未开始 ARCHIVE_STARTED: 归档任务已开始 ARCHIVE_PARTIAL: 归档任务部分成功 ARCHIVE_DONE: 归档任务成功结束 ARCHIVE_FAILURE: 归档任务失败 RESTORE_INIT: 已接收到恢复归档任务,尚未开始 RESTORE_STARTED: 恢复归档任务已开始 RESTORE_PARTIAL: 恢复归档任务部分成功 RESTORE_DONE: 恢复归档任务成功,此时的索引文件恢复仍需要一定的时间,由 RESTORE_FAILURE: 恢复归档任务失败 RESTORE_OPENED: 索引恢复归档任务已完成,索引已打开 RESTORE_CLOSED: 索引的归档的数据已经到达恢复有效期,索引已关闭 返回结果如下: health status index uuid pri rep docs.count docs.deleted store.size pri.store.size close log-105 M0uRAWj_SKydjg0dFzyJow 此命令的参数和返回值与开源Elasticsearch的_cat/indices一致。
  • 归档已冻结的索引 只有集群版本是Elasticsearch 7.10.2、镜像版本不小于7.10.2_24.3.0_x.x.x的集群才支持归档索引。 只有已冻结且处于closed状态的索引才支持归档索引。 索引归档后,直接打开索引会超时并导致索引red,需要先恢复归档索引,将索引数据的存储类别从归档存储转换标准存储,等待自动打开。 执行归档索引命令,转换OBS中已冻结的索引数据的存储类别,从标准存储转换成归档存储。 POST {index_name}/_freeze_archive 表8 请求参数说明 参数名 说明 index_name 需要归档的索引名称。 返回结果如下: { "task_uuid" : "XJTn3hsHSaCjPnvIgv-FFw" } 表9 返回参数说明 参数名 说明 task_uuid 归档索引的任务ID,在提交归档请求后会启动一个异步任务,请求返回任务ID,使用该ID可以查询归档索引任务的进度。
  • 查看冻结索引任务 执行如下命令,查看冻结索引任务的进度。 GET _freeze_low_cost_progress/${freeze_uuid} 表3 请求参数说明 参数名 说明 freeze_uuid 冻结索引任务的ID,该ID由冻结索引时获取。 返回结果如下: { "stage" : "STARTED", "shards_stats" : { "INIT" : 0, "FAILURE" : 0, "DONE" : 0, "STARTED" : 3, "ABORTED" : 0 }, "indices" : { "data1" : [ { "uuid" : "7OS-G1-tRke2jHZPlckexg", "index" : { "name" : "data1", "index_id" : "4b5PHXJITLaS6AurImfQ9A", "shard" : 2 }, "start_ms" : 1611972010852, "end_ms" : -1, "total_time" : "10.5s", "total_time_in_millis" : 10505, "stage" : "STARTED", "failure" : null, "size" : { "total_bytes" : 3211446689, "finished_bytes" : 222491269, "percent" : "6.0%" }, "file" : { "total_files" : 271, "finished_files" : 12, "percent" : "4.0%" }, "rate_limit" : { "paused_times" : 1, "paused_nanos" : 946460970 } }, { "uuid" : "7OS-G1-tRke2jHZPlckexg", "index" : { "name" : "data1", "index_id" : "4b5PHXJITLaS6AurImfQ9A", "shard" : 0 }, "start_ms" : 1611972010998, "end_ms" : -1, "total_time" : "10.3s", "total_time_in_millis" : 10359, "stage" : "STARTED", "failure" : null, "size" : { "total_bytes" : 3221418186, "finished_bytes" : 272347118, "percent" : "8.0%" }, "file" : { "total_files" : 372, "finished_files" : 16, "percent" : "4.0%" }, "rate_limit" : { "paused_times" : 5, "paused_nanos" : 8269016764 } }, { "uuid" : "7OS-G1-tRke2jHZPlckexg", "index" : { "name" : "data1", "index_id" : "4b5PHXJITLaS6AurImfQ9A", "shard" : 1 }, "start_ms" : 1611972011021, "end_ms" : -1, "total_time" : "10.3s", "total_time_in_millis" : 10336, "stage" : "STARTED", "failure" : null, "size" : { "total_bytes" : 3220787498, "finished_bytes" : 305789614, "percent" : "9.0%" }, "file" : { "total_files" : 323, "finished_files" : 14, "percent" : "4.0%" }, "rate_limit" : { "paused_times" : 3, "paused_nanos" : 6057933087 } } ] } } 表4 返回参数说明 参数名 说明 stage 当前所处状态。取值包括: INIT:刚启动或者正在初始化。 FAILURE:失败。 DONE:完成。 STARTED:已启动。 ABORTED:取消,预留字段。 shards_stats 处在各个状态的shard个数。 indices 每个索引的状态详情。 表5 indices返回值说明 参数名 说明 uuid freeze的uuid。 index 索引信息和shard信息。 start_ms 开始时间。 end_ms 结束时间,如果没有结束则显示为-1。 total_time 已花费时间。 total_time_in_millis 已花费时间毫秒数。 stage 当前shard所处的状态。 failure 失败原因,如果没有失败则显示为null。 size.total_bytes 总共需要冻结的文件的字节数。 size.finished_bytes 已经完成冻结的字节数。 size.percent 已经完成冻结的字节数百分比。 file.total_bytes 总共需要冻结的文件个数。 file.finished_bytes 已经完成冻结的文件个数。 file.percent 已经完成冻结的文件个数百分比。 rate_limit.paused_times 达到限速导致冻结暂停的次数。 rate_limit.paused_nanos 达到限速导致冻结暂停的时间纳秒数。 冻结完成的索引会增加以下settings,可参考表6。 表6 冻结索引settings 参数 说明 index.frozen_low_cost 标识该索引为冻结索引。取值为true。 index.blocks.write 冻结后的索引禁止写入。取值为true。 index.store.type 标识该索引的存储类型为obs。取值为obs。
  • 基于冻结状态查询索引列表 执行如下命令,基于冻结状态查询索引列表。 GET _cat/freeze_indices?stage=${STAGE} 表7 请求参数说明 参数名 说明 STAGE 索引的冻结状态,可选值如下: start:开始冻结但是还未完成的索引列表 done: 已经完成冻结的索引列表 unfreeze:没有冻结的索引列表 空或者其他值:正在冻结过程中或者已经冻结完成的所有索引列表 返回结果如下: green open data2 0bNtxWDtRbOSkS4JYaUgMQ 3 0 5 0 7.9kb 7.9kb green open data3 oYMLvw31QnyasqUNuyP6RA 3 0 51 0 23.5kb 23.5kb 此命令的参数和返回值与开源Elasticsearch的_cat/indices一致。
  • 约束限制 Elasticsearch集群仅7.6.2和7.10.2版本支持存算分离功能。其中,归档索引只有集群版本是Elasticsearch 7.10.2、镜像版本大于等于24.3.0.C001的集群才支持。 在执行冻结索引前,系统会将待冻结的索引配置为只读状态,即便在索引数据转储到OBS后,索引也是只读状态,不支持写入数据。 在冻结索引过程中,查询请求不受影响。在冻结完成后,会将索引先Close再Open,在这段时间内,索引不可查询,集群可能短暂出现Red状态,索引Open结束后集群恢复正常。 将历史索引数据转储到OBS的过程中会占用网络带宽。 冻结索引后,索引会被转储到OBS中,同时本地磁盘中的索引数据会被删除。当查询被冻结的索引时,时延会增加,在聚合时,由于查询复杂、数据读取多,时延变长会更明显。 已转储到OBS中的索引不支持解冻,即不可回退为可写的索引。 在配置了读写分离的集群中,从集群无法对由主集群同步过来的索引数据设置存算分离。 由于存算分离的特性依赖OBS,所以使用过程中要遵守OBS的“带宽”和“每秒请求数(QPS)”的使用限制,详细请参见OBS使用限制。当超过限制时,集群中涉及到OBS查询的性能都会下降,例如恢复分片的速度变慢、查询数据时变慢等。
  • 冻结索引 执行如下命令,将指定索引转储到OBS中,存储类别为标准存储。 POST ${index_name}/_freeze_low_cost 表1 请求参数说明 参数名 说明 index_name 需要冻结的索引名称。 返回结果如下: { "freeze_uuid": "pdsRgUtSTymVDWR_HoTGFw" } 表2 返回参数说明 参数名 说明 freeze_uuid 冻结索引任务的ID,在提交冻结请求后会启动一个异步任务,请求返回任务ID,使用该ID可以查询冻结索引任务的进度。
  • 方案架构 图1 存算分离 通过存算分离可以实现索引数据的生命周期管理。 热状态的索引数据支持写入,且可以实现毫秒级检索。 冻结状态的索引数据,是指将长期不使用的历史数据转储到CSS服务的OBS桶中(该OBS桶用户无感知,且无法在OBS控制台查看),降低数据的存储成本,提升SSD的存储能力。此时,被冻结的索引数据的检索速率会降低到秒/分级别。 当确定OBS中的历史数据不再使用时,可以关闭索引数据,此状态的索引数据将无法被检索到。 OBS中被关闭的索引数据,可以通过转换OBS的存储类别,从标准存储转换成归档存储,进一步降低历史数据的存储成本。 已归档的索引默认不可被检索,但是可以通过恢复归档索引,使索引在恢复有限期内可以被正常检索。 OBS中的归档存储的索引数据支持定期删除,释放存储资源。 本文通过Kibana访问集群,介绍如何使用存算分离。
  • 通过内网地址访问OpenSearch Dashboards登录OpenSearch集群 同一VPC下的服务器才能通过OpenSearch集群的内网访问地址访问OpenSearch Dashboards。 登录 云搜索 服务管理控制台。 在OpenSearch集群管理页面,单击集群名称,进入集群基本信息页面。 在集群基本信息页面,获取集群的内网访问地址。 图2 获取内网地址 将集群的内网访问地址的端口号从“9200”改为“5601”,即为OpenSearch Dashboards的内网地址。例如,集群的“内网访问IPv4地址”是“192.168.0.***:9200”,则OpenSearch Dashboards的内网地址为“192.168.0.***:5601”。 在服务器中,输入OpenSearch Dashboards的内网地址即可进入OpenSearch Dashboards登录界面。 非安全模式的集群:将直接进入OpenSearch Dashboards操作界面。 安全模式的集群:需要在登录页面输入用户名和密码,单击“Log In”进入OpenSearch Dashboards操作界面。用户名默认为admin,密码为创建集群时设置的管理员密码。 登录成功后,可在OpenSearch Dashboards界面进行相关操作访问OpenSearch集群。
  • 通过公网地址访问OpenSearch Dashboards登录OpenSearch集群 仅安全模式的集群支持通过Kibana公网访问地址访问OpenSearch Dashboards。 Kibana公网访问配置的白名单依赖ELB的白名单能力。更新白名单后,白名单对新建的连接是实时生效的,但对于已存在的长连接,可能会出现去掉的白名单IP地址还能访问OpenSearch Dashboards的场景,这是因为要等长连接断开后才生效,预计1分钟左右。 当关闭Kibana公网访问后再重新打开,Kibana的公网地址可能会发生变化,请谨慎操作。 登录云搜索服务管理控制台。 开启OpenSearch集群的Kibana公网访问。支持在创建集群的时候就配置Kibana公网访问,或者在集群创建完之后再开启Kibana公网访问。 在创建集群时配置Kibana公网访问:操作指导请参见创建OpenSearch集群(旧版)。 集群创建完之后再开启Kibana公网访问: 在集群管理页面,单击需要配置Kibana公网访问的集群名称,进入集群基本信息页面。 左侧菜单栏选择“Kibana公网访问”,在“Kibana公网访问”右侧单击开关,打开Kibana公网访问功能。 在开启Kibana公网访问页面,配置相关参数。如果集群已配置Kibana公网访问,此时也支持修改相关配置。 表2 配置Kibana公网访问 参数 说明 带宽 设置公网访问的带宽。 取值范围:1-100。 单位:Mbit/s。 访问控制开关 如果关闭访问控制开关,则允许任何IP通过公网IP访问集群Kibana。如果开启访问控制开关,则只允许白名单列表中的IP通过公网IP访问集群Kibana。 白名单 设置允许访问的IP地址或网段,中间用英文逗号隔开。仅当打开“访问控制开关”时才需要配置。 建议开启白名单。 说明: Kibana公网访问配置的白名单依赖ELB的白名单能力。更新白名单后,白名单对新建的连接是实时生效的,但对于已存在的长连接,可能会出现去掉的白名单IP地址还能访问Kibana的场景,这是因为要等长连接断开后才生效,预计1分钟左右。 配置完成后,单击“确定”。 待集群的Kibana公网访问开通以后,在Kibana公网访问页面获取“kibana公网访问地址”。 图1 获取Kibana公网访问地址 在浏览器中,输入“kibana公网访问地址”即可进入OpenSearch Dashboards登录界面。 在登录页面输入用户名和密码,单击“Log In”进入OpenSearch Dashboards操作界面。用户名默认为admin,密码为创建集群时设置的管理员密码。 登录成功后,可在OpenSearch Dashboards界面进行相关操作访问OpenSearch集群。
  • 通过控制台访问OpenSearch Dashboards登录OpenSearch集群 登录云搜索服务管理控制台。 在“集群管理”页面选择需要登录的集群,单击“操作”列中的“Kibana”进入OpenSearch Dashboards登录界面。 非安全模式的集群:将直接进入OpenSearch Dashboards操作界面。 安全模式的集群:需要在登录页面输入用户名和密码,单击“Log In”进入OpenSearch Dashboards操作界面。用户名默认为admin,密码为创建集群时设置的管理员密码。 登录成功后,可在OpenSearch Dashboards界面进行相关操作访问集群。
  • 变更时长 变更集群安全模式的时长估算公式如下: 变更时长(分钟)= 5(分钟)x 节点总个数 + 数据恢复时长(分钟) 其中: 5分钟为初始化等非数据恢复操作的基准耗时,是经验值。 节点总个数是集群的数据节点、Master节点、Client节点和冷数据节点数量之和。 数据恢复时长(分钟)= 数据总量(MB)÷ [ 数据节点的CPU核数 x 32(MB/s)x 60(秒)] 其中: 32MB/s表示每个CPU核每秒可处理32MB数据,是经验值。 以上公式为理想状态下的理论估算值,实际恢复速率受集群负载影响。
  • 变更影响 在更改安全模式前,您需要了解以下关键影响和操作建议,以便合理规划变更,最小化业务影响。 表3 变更影响总览 变更类型 业务是否会中断 认证方式变化 性能影响 公网访问变化 安全账号风险 非安全 → 安全+HTTP 是 增加安全认证 不涉及 不支持 不涉及 非安全 → 安全+HTTPS 是 增加安全认证 下降 支持 不涉及 安全 → 非安全 是 移除安全认证 提升 自动禁用 永久删除 HTTP → HTTPS 是 无变化 下降 支持 不涉及 HTTPS → HTTP 是 无变化 提升 自动禁用 不涉及 变更影响说明: 非安全表示非安全模式的集群;安全表示安全模式的集群。 业务中断:在更改集群安全模式的过程中,集群会自动重启,导致业务暂时不可用。 认证方式变化:更改集群安全模式后,访问集群时的安全认证机制会发生改变,此时客户端必须同步更新认证逻辑。如未及时完成适配,可能导致业务服务中断。 性能影响:当集群安全模式变更导致通信协议从HTTP切换为HTTPS后,在相同硬件配置下,集群处理高并发请求时的性能指标(如吞吐量)将出现约20%的下降。相反,当通信协议从HTTPS切换为HTTP后,集群性能会有所提升。 公网访问变化:只有安全模式+HTTPS协议的集群才支持配置公网访问,其他类型的集群都不支持。 安全账号风险:当安全模式变更为非安全模式的集群,系统会清理安全集群的账号,所有安全账号将被永久删除。 工具影响:对于已打开过Kibana会话框的集群,在更改集群安全模式后,Kibana会提示Session错误,此时需要清理缓存再打开Kibana才能正常访问。 由于更改安全模式会导致节点访问方式改变,此过程可能会引起业务中断,建议在业务上线前或集群可接受停机变更的场景下使用。
  • 节点监控指标列表 表2 云搜索服务节点支持的监控指标 指标ID 指标名称 指标含义 取值范围 单位 进制 测量对象(维度) 监控周期(原始指标) jvm_heap_usage JVM堆使用率 节点JVM堆内存使用率。 0~100 % 不涉及 CSS集群-云服务节点 1分钟 cpu_usage CPU利用率 CPU利用率。 0~100 % 不涉及 CSS集群-云服务节点 1分钟 disk_util 最大磁盘使用率 节点的磁盘使用率。 0~100 % 不涉及 CSS集群-云服务节点 1分钟 load_average 节点Load值 操作系统中1分钟平均排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 open_file_descriptors 已打开的文件描述符数 节点已打开的文件描述符数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 max_file_descriptors 最大允许的文件描述符数 最大允许的文件描述符数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_write_queue Write队列中总排队任务数 写入线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_search_queue Search队列中总排队任务数 搜索线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_force_merge_queue ForceMerge队列中总排队任务数 强制合并线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_write_rejected Write队列中总的已拒绝任务数 写入线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_search_rejected Search队列中总的已拒绝任务数 搜索线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_force_merge_rejected ForceMerge队列中总的已拒绝任务数 强制合并线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_write_threads Write线程池总大小 写入线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_search_threads Search线程池总大小 搜索线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_force_merge_threads ForceMerge线程池总大小 强制合并线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_flush_queue Flush队列中总排队任务数 Flush线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_flush_rejected Flush队列中总的已拒绝任务数 Flush线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_flush_threads Flush线程池总大小 Flush线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_generic_queue Generic队列中总排队任务数 Generic线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_generic_rejected Generic队列中总的已拒绝任务数 Generic线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_generic_threads Generic线程池总大小 Generic线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_management_queue Management队列中总排队任务数 Management线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_management_rejected Management队列中总的已拒绝任务数 Management线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_management_threads Management线程池总大小 Management线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_refresh_queue Refresh队列中总排队任务数 Refresh线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_refresh_rejected Refresh队列中总的已拒绝任务数 Refresh线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_refresh_threads Refresh线程池总大小 Refresh线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_searcher_queue OBS Searcher队列中总排队任务数 OBS Searcher线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_searcher_rejected OBS Searcher队列中总的已拒绝任务数 OBS Searcher线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_searcher_threads OBS Searcher线程池总大小 OBS Searcher线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_queue OBS队列中总排队任务数 OBS线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_rejected OBS队列中总的已拒绝任务数 OBS线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_threads OBS线程池总大小 OBS线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_upload_queue OBS Upload队列中总排队任务数 OBS Upload线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_upload_rejected OBS Upload队列中总的已拒绝任务数 OBS Upload线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_upload_threads OBS Upload线程池总大小 OBS Upload线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_download_queue OBS Download队列中总排队任务数 OBS Download线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_download_rejected OBS Download队列中总的已拒绝任务数 OBS Download线程池中的已拒绝任务数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 thread_pool_obs_download_threads OBS Download线程池总大小 OBS Download线程池的大小。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 free_fs_size 文件系统可用大小 CSS集群的文件系统可用大小。 ≥ 0 byte 1024 CSS集群-云服务节点 1分钟 total_fs_size 文件系统总大小 CSS集群的文件系统总大小。 ≥ 0 byte 1024 CSS集群-云服务节点 1分钟 jvm_old_gc_count JVM老年代总GC次数 “老年代”垃圾回收的运行次数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 jvm_old_gc_time JVM老年代总GC时间 执行“老年代”垃圾回收所花费的时间。 ≥ 0 ms 不涉及 CSS集群-云服务节点 1分钟 jvm_young_gc_count JVM年轻代总GC次数 “年轻代”垃圾回收的运行次数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 jvm_young_gc_time JVM年轻代GC时间 执行“年轻代”垃圾回收所花费的时间。 ≥ 0 ms 不涉及 CSS集群-云服务节点 1分钟 mem_free_in_bytes 可用内存空间 节点未使用的内存容量。 ≥ 0 byte 1024 CSS集群-云服务节点 1分钟 mem_free_percent 可用内存比例 节点未使用的内存比例。 0~100 % 不涉及 CSS集群-云服务节点 1分钟 mem_used_in_bytes 已用内存空间 节点已使用的内存容量。 ≥ 0 byte 1024 CSS集群-云服务节点 1分钟 current_opened_http_count 当前已打开HTTP连接数 节点当前打开的HTTP连接数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 total_opened_http_count 全部打开的HTTP连接数 节点全部打开的HTTP连接数。 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 disk_read_requests_rate 磁盘读IOPS CSS集群节点的磁盘每秒读取数据的请求总次数。 ≥ 0 request/s 不涉及 CSS集群-云服务节点 1分钟 disk_write_requests_rate 磁盘写IOPS CSS集群节点的磁盘每秒写数据的请求总次数。 ≥ 0 request/s 不涉及 CSS集群-云服务节点 1分钟 disk_read_bytes_rate 磁盘读带宽 CSS集群节点的磁盘每秒读出数据量。 ≥ 0 Byte/s 1024 CSS集群-云服务节点 1分钟 disk_write_bytes_rate 磁盘写带宽 CSS集群节点的磁盘每秒写入数据量。 ≥ 0 Byte/s 1024 CSS集群-云服务节点 1分钟 shards_count 分片数量 CSS集群节点的分片数量 ≥ 0 Count 不涉及 CSS集群-云服务节点 1分钟 vector_index_off_heap_used_in_bytes 向量索引堆外内存使用量 CSS集群节点向量索引查询加载的堆外内存使用量。 ≥ 0 byte 1024 CSS集群-云服务节点 1分钟 vector_index_off_heap_usage 向量索引堆外内存使用率 CSS集群节点向量索引查询加载的堆外内存使用率。 0~100 % 不涉及 CSS集群-云服务节点 1分钟
  • 集群监控指标列表 累计值:从节点启动时开始叠加数值,当节点重启后清零重新累计。 表1 云搜索服务支持的监控指标 指标ID 指标名称 指标含义 取值范围 单位 进制 测量对象(维度) 监控周期(原始指标) status 集群健康状态 该指标用于统计测量监控对象的状态。 0:集群是100%可用的。 1:数据是完整的,部分副本缺失。高可用性在某种程度上弱化,存在风险,请及时关注集群情况。 2:数据缺失,集群使用时将出现异常。 3:没有获取到集群状态。 0、1、2、3 不涉及 不涉及 CSS集群 1分钟 disk_util 最大磁盘使用率 CSS集群中各个节点的磁盘使用率的最大值。 0~100 % 不涉及 CSS集群 1分钟 max_jvm_heap_usage 最大JVM堆使用率 CSS集群中各个节点的JVM堆使用率的最大值。 0~100 % 不涉及 CSS集群 1分钟 max_jvm_young_gc_time 最大JVM Young GC耗时 CSS集群中各个节点的JVM Young GC耗时累计值的最大值。 ≥ 0 ms 不涉及 CSS集群 1分钟 max_jvm_young_gc_count 最大JVM Young GC次数 CSS集群中各个节点的JVM Young GC次数累计值的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_jvm_old_gc_time 最大JVM Old GC耗时 CSS集群中各个节点的JVM Old GC耗时累计值的最大值。 ≥ 0 ms 不涉及 CSS集群 1分钟 max_jvm_old_gc_count 最大JVM Old GC次数 CSS集群中各个节点的JVM Old GC次数累计值的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 total_fs_size 文件系统总大小 CSS集群的文件系统总大小。 ≥ 0 byte 1024 CSS集群 1分钟 free_fs_size 文件系统可用大小 CSS集群的文件系统可用大小。 ≥ 0 byte 1024 CSS集群 1分钟 max_cpu_usage 最大CPU利用率 CSS集群中各个节点的CPU利用率的最大值。 0~100 % 不涉及 CSS集群 1分钟 max_cpu_time_of_jvm_process 最大JVM进程使用的CPU时间 CSS集群中各个节点JVM进程使用CPU的时间累计值的最大值。 ≥ 0 ms 不涉及 CSS集群 1分钟 max_virtual_memory_size_of_jvm_process 最大JVM进程使用的虚拟内存大小 CSS集群中各个节点JVM进程可使用的虚拟内存大小的最大值。 ≥ 0 byte 1024 CSS集群 1分钟 max_current_opened_http_count 最大当前打开的HTTP连接数 CSS集群中各个节点打开且尚未关闭的HTTP连接数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_total_opened_http_count 最大全部打开的HTTP连接数 CSS集群中各个节点打开过的HTTP连接数累计值的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 indices_count 索引数量 CSS集群的索引数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 total_shards_count 分片数量 CSS集群的分片数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 primary_shards_count 主分片数量 CSS集群的主分片数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 docs_count 文档数量 CSS集群的文档数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 docs_deleted_count 被删除的文档数量 CSS集群的被删除的文档数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 nodes_count 节点数量 CSS集群的节点数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 data_nodes_count 数据节点数量 CSS集群的数据节点数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 coordinating_nodes_count 协调节点数量 CSS集群的协调节点数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 master_nodes_count Master节点数量 CSS集群的Master节点数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 ingest_nodes_count Client节点数量 CSS集群的Client节点数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_load_average 最大节点Load值 CSS集群中各个节点在操作系统中1分钟平均排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_cpu_usage 平均CPU使用率 CSS集群中各节点CPU利用率的平均值。 0~100 % 不涉及 CSS集群 1分钟 avg_load_average 平均节点Load值 CSS集群中各节点在操作系统中1分钟平均排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_jvm_heap_usage 平均JVM堆使用率 CSS集群中各节点JVM堆内存使用率的平均值。 0~100 % 不涉及 CSS集群 1分钟 max_open_file_descriptors 已打开的最大文件描述符数 CSS集群中各个节点已打开的文件描述符数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_open_file_descriptors 已打开的平均文件描述符数 CSS集群中各节点已打开的文件描述符数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_max_file_descriptors 最大允许的文件描述符数 CSS集群中各节点最大允许的文件描述符数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_open_file_descriptors 已打开的文件描述符数 CSS集群中各节点已打开的文件描述符数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_write_queue Write队列中总排队任务数 写入线程池中的排队任务数。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_search_queue Search队列中总排队任务数 CSS集群中各节点在搜索线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_force_merge_queue ForceMerge队列中总排队任务数 CSS集群中各节点在强制合并线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_write_rejected Write队列中总的已拒绝任务数 CSS集群中各节点在写入线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_search_rejected Search队列中总的已拒绝任务数 CSS集群中各节点在搜索线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_force_merge_rejected Forcemerge队列中总的已拒绝任务数 CSS集群中各节点在强制合并线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_search_queue Search队列中最大排队任务数 CSS集群中各个节点在搜索线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_force_merge_queue ForceMerge队列中最大排队任务数 CSS集群中各个节点在强制合并线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_write_threads Write线程池总大小 CSS集群中各节点写入线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_search_threads Search线程池总大小 CSS集群中各节点搜索线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_force_merge_threads ForceMerge线程池总大小 CSS集群中各节点强制合并线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_write_queue Write队列中平均排队任务数 CSS集群中各节点在写入线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_search_queue Search队列中平均排队任务数 CSS集群中各节点在搜索线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_force_merge_queue ForceMerge队列中平均排队任务数 CSS集群中各节点在强制合并线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_search_threads Search线程池平均大小 CSS集群中各节点搜索线程池的大小的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_write_threads Write线程池平均大小 CSS集群中各节点写入线程池的大小的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_force_merge_threads ForceMerge线程池平均大小 CSS集群中各节点强制合并线程池的大小的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_write_rejected Write队列中平均已拒绝任务数 CSS集群中各节点写入线程池中的已拒绝任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_flush_queue Flush队列中总排队任务数 CSS集群中各个节点在Flush线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_flush_rejected Flush队列中总的已拒绝任务数 CSS集群中各节点在Flush线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_flush_queue Flush队列中最大排队任务数 CSS集群中各个节点在Flush线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_flush_threads Flush线程池总大小 CSS集群中各节点Flush线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_flush_queue Flush队列中平均排队任务数 CSS集群中各节点在Flush线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_flush_threads Flush线程池平均大小 CSS集群中各节点在Flush线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_generic_queue Generic队列中总排队任务数 CSS集群中各个节点在Generic线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_generic_rejected Generic队列中总的已拒绝任务数 CSS集群中各节点在Generic线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_generic_queue Generic队列中最大排队任务数 CSS集群中各个节点在Generic线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_generic_threads Generic线程池总大小 CSS集群中各节点Generic线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_generic_queue Generic队列中平均排队任务数 CSS集群中各节点在Generic线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_generic_threads Generic线程池平均大小 CSS集群中各节点在Generic线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_management_queue Management队列中总排队任务数 CSS集群中各个节点在Management线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_management_rejected Management队列中总的已拒绝任务数 CSS集群中各节点在Management线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_management_queue Management队列中最大排队任务数 CSS集群中各个节点在Management线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_management_threads Management线程池总大小 CSS集群中各节点Management线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_management_queue Management队列中平均排队任务数 CSS集群中各节点在Management线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_management_threads Management线程池平均大小 CSS集群中各节点在Management线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_refresh_queue Refresh队列中总排队任务数 CSS集群中各个节点在Refresh线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_refresh_rejected Refresh队列中总的已拒绝任务数 CSS集群中各节点在Refresh线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_refresh_queue Refresh队列中最大排队任务数 CSS集群中各个节点在Refresh线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_refresh_threads Refresh线程池总大小 CSS集群中各节点Refresh线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_refresh_queue Refresh队列中平均排队任务数 CSS集群中各节点在Refresh线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_refresh_threads Refresh线程池平均大小 CSS集群中各节点在Refresh线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_searcher_queue OBS Searcher队列中总排队任务数 CSS集群中各个节点在OBS Searcher线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_searcher_rejected OBS Searcher队列中总的已拒绝任务数 CSS集群中各节点在OBS Searcher线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_obs_searcher_queue OBS Searcher队列中最大排队任务数 CSS集群中各个节点在OBS Searcher线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_searcher_threads OBS Searcher线程池总大小 CSS集群中各节点OBS Searcher线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_searcher_queue OBS Searcher队列中平均排队任务数 CSS集群中各节点在OBS Searcher线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_searcher_threads OBS Searcher线程池平均大小 CSS集群中各节点在OBS Searcher线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_queue OBS队列中总排队任务数 CSS集群中各个节点在OBS线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_rejected OBS队列中总的已拒绝任务数 CSS集群中各节点在OBS线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_obs_queue OBS队列中最大排队任务数 CSS集群中各个节点在OBS线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_threads OBS线程池总大小 CSS集群中各节点OBS线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_queue OBS队列中平均排队任务数 CSS集群中各节点在OBS线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_threads OBS线程池平均大小 CSS集群中各节点在OBS线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_upload_queue OBS Upload队列中总排队任务数 CSS集群中各个节点在OBS Upload线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_upload_rejected OBS Upload队列中总的已拒绝任务数 CSS集群中各节点在OBS Upload线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_obs_upload_queue OBS Upload队列中最大排队任务数 CSS集群中各个节点在OBS Upload线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_upload_threads OBS Upload线程池总大小 CSS集群中各节点OBS Upload线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_upload_queue OBS Upload队列中平均排队任务数 CSS集群中各节点在OBS Upload线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_upload_threads OBS Upload线程池平均大小 CSS集群中各节点在OBS Upload线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_download_queue OBS Download队列中总排队任务数 CSS集群中各个节点在OBS Download线程池中的排队任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_download_rejected OBS Download队列中总的已拒绝任务数 CSS集群中各节点在OBS Download线程池中的已拒绝任务数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 max_thread_pool_obs_download_queue OBS Download队列中最大排队任务数 CSS集群中各个节点在OBS Download线程池中的排队任务数的最大值。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_thread_pool_obs_download_threads OBS Download线程池总大小 CSS集群中各节点OBS Download线程池的大小之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_download_queue OBS Download队列中平均排队任务数 CSS集群中各节点在OBS Download线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_thread_pool_obs_download_threads OBS Download线程池平均大小 CSS集群中各节点在OBS Download线程池中的排队任务数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 min_free_fs_size 最小可用存储空间 CSS集群中各个节点可用存储空间的最小值。 ≥ 0 byte 1024 CSS集群 1分钟 avg_jvm_old_gc_count JVM老年代平均GC次数 CSS集群中各个节点“老年代”垃圾回收的运行次数的累计值的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_jvm_old_gc_time JVM老年代平均GC时间 CSS集群中各个节点执行“老年代”垃圾回收所花费的时间累计值的平均值。 ≥ 0 ms 不涉及 CSS集群 1分钟 avg_jvm_young_gc_count JVM年轻代平均GC次数 CSS集群中各个节点“年轻代”垃圾回收的运行次数的累计值的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_jvm_young_gc_time JVM年轻代平均GC时间 CSS集群中各个节点执行“年轻代”垃圾回收所花费的时间累计值的平均值。 ≥ 0 ms 不涉及 CSS集群 1分钟 avg_max_file_descriptors 最大允许的文件描述符数-平均值 CSS集群中各节点最大允许的文件描述符数的平均值。 ≥ 0 Count 不涉及 CSS集群 1分钟 avg_mem_free_in_bytes 平均可用内存空间 CSS集群中各节点未使用的内存容量的平均值。 ≥ 0 byte 1024 CSS集群 1分钟 avg_mem_free_percent 平均可用内存比例 CSS集群中各节点未使用的内存比例的平均值。 0~100 % 不涉及 CSS集群 1分钟 avg_mem_used_in_bytes 平均已用内存空间 CSS集群中各节点已使用的内存容量的平均值。 ≥ 0 byte 1024 CSS集群 1分钟 avg_mem_used_percent 平均已用内存比例 CSS集群中各节点已使用的内存比例的平均值。 0~100 % 不涉及 CSS集群 1分钟 max_mem_free_in_bytes 最大可用内存空间 CSS集群中各个节点未使用的内存容量的最大值。 ≥ 0 byte 1024 CSS集群 1分钟 max_mem_free_percent 最大可用内存比例 CSS集群中各个节点未使用的内存比例的最大值。 0~100 % 不涉及 CSS集群 1分钟 max_mem_used_in_bytes 最大已用内存空间 CSS集群中各个节点已使用的内存容量的最大值。 ≥ 0 byte 1024 CSS集群 1分钟 max_mem_used_percent 最大已用内存比例 CSS集群中各个节点已使用的内存比例的最大值。 0~100 % 不涉及 CSS集群 1分钟 sum_jvm_old_gc_count JVM老年代总GC次数 CSS集群中各个节点“老年代”垃圾回收的运行次数的累计值之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_jvm_old_gc_time JVM老年代总GC时间 CSS集群中各个节点执行“老年代”垃圾回收所花费的时间累计值之和。 ≥ 0 ms 不涉及 CSS集群 1分钟 sum_jvm_young_gc_count JVM年轻代总GC次数 CSS集群中各个节点“年轻代”垃圾回收的运行次数的累计值之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_jvm_young_gc_time JVM年轻代总GC时间 CSS集群中各个节点执行“年轻代”垃圾回收所花费的时间累计值之和。 ≥ 0 ms 不涉及 CSS集群 1分钟 sum_current_opened_http_count 当前已打开HTTP连接数 CSS集群中各个节点打开且尚未关闭的HTTP连接数之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_total_opened_http_count 历史已打开HTTP连接数 CSS集群中各个节点打开过的HTTP连接数累计值之和。 ≥ 0 Count 不涉及 CSS集群 1分钟 IndexingLatency 平均索引延迟 分片完成索引操作所需的平均时间。 ≥ 0 ms 不涉及 CSS集群 1分钟 IndexingRate 平均索引速率 入库TPS,集群每秒平均索引操作数。 ≥ 0 Count 不涉及 CSS集群 1分钟 SearchLatency 平均查询延迟 分片完成搜索操作所需的平均时间。 ≥ 0 ms 不涉及 CSS集群 1分钟 SearchRate 平均查询速率 查询QPS,集群每秒平均查询操作数。 ≥ 0 Count 不涉及 CSS集群 1分钟 task_max_running_time 最大Task运行时长 该指标为集群运行的所有查询、写入Task中,运行时长最长的task耗时。 ≥ 0 ms 不涉及 CSS集群 1分钟 number_of_pending_tasks Pending Task排队任务数 CSS集群中待Master处理的task的排队任务数。 ≥ 0 Count 不涉及 CSS集群 1分钟 sum_disk_read_requests_rate 磁盘读总IOPS CSS集群所有节点的磁盘每秒读取数据的请求总次数。 ≥ 0 request/s 不涉及 CSS集群 1分钟 sum_disk_write_requests_rate 磁盘写总IOPS CSS集群所有节点的磁盘每秒写数据的请求总次数。 ≥ 0 request/s 不涉及 CSS集群 1分钟 sum_disk_read_bytes_rate 磁盘读总带宽 CSS集群所有节点的磁盘每秒读出数据量。 ≥ 0 Byte/s 1024 CSS集群 1分钟 sum_disk_write_bytes_rate 磁盘写总带宽 CSS集群所有节点的磁盘每秒写入数据量。 ≥ 0 Byte/s 1024 CSS集群 1分钟 avg_vector_index_off_heap_used_in_bytes 平均向量索引堆外内存使用量 CSS集群各节点的向量索引查询加载的堆外内存使用量的平均值。 ≥ 0 byte 1024 CSS集群 1分钟 avg_vector_index_off_heap_usage 平均向量索引堆外内存使用率 CSS集群各节点的向量索引查询加载的堆外内存使用率的平均值。 只有触发向量索引的查询才会触发对应向量索引的查询加载的堆外内存使用率。 0~100 % 不涉及 CSS集群 1分钟 max_vector_index_off_heap_used_in_bytes 最大向量索引堆外内存使用量 CSS集群各节点的向量索引查询加载的堆外内存使用量的最大值。 ≥ 0 byte 1024 CSS集群 1分钟 max_vector_index_off_heap_usage 最大向量索引堆外内存使用率 CSS集群各节点的向量索引查询加载的堆外内存使用率的最大值。 只有触发向量索引的查询才会触发对应向量索引的查询加载的堆外内存使用率。 0~100 % 不涉及 CSS集群 1分钟 vector_index_circuit_breaker_status 向量索引熔断状态 向量索引的熔断状态。 0:未熔断。 1:熔断状态,请及时关注集群堆外内存使用率是否超阈值。 0、1 不涉及 不涉及 CSS集群 1分钟 cold_data_storage 冷数据存储量 CSS集群冷数据存储总量,是集群的索引冷冻后存放到OBS的数据总量,每小时统计一次。该OBS是CSS服务的OBS桶,用户无法在OBS控制台查看。 ≥ 0 byte 1024 CSS集群 1分钟 number_of_index_creation_failures 索引创建失败次数 CSS集群中索引创建失败的次数。 ≥ 0 Count 不涉及 CSS集群 1分钟 shard_doc_exceed_threshold_count 文档数超过阈值的分片数量 CSS集群中文档数超过阈值的分片数量。 ≥ 0 Count 不涉及 CSS集群 1分钟 write_fail_alias_error 因别名异常导致的写入失败次数 在CSS集群中,因为索引别名异常而导致的写入失败的总次数。 OpenSearch集群仅1.3.6版本支持该监控指标。 ≥ 0 Count 不涉及 CSS集群 1分钟 write_fail_documents_count_exceed 因文档数超限导致的写入失败次数 在CSS集群中,因为索引文档数超过限制而导致的写入失败的总次数。 OpenSearch集群仅1.3.6版本支持该监控指标。 ≥ 0 Count 不涉及 CSS集群 1分钟 write_fail_fields_count_exceed 因字段数超限导致的写入失败次数 在CSS集群中,因为索引字段数超过限制而导致的写入失败的总次数。 OpenSearch集群仅1.3.6版本支持该监控指标。 ≥ 0 Count 不涉及 CSS集群 1分钟 write_fail_shards_count_exceed 因集群分片总数超限导致的写入失败次数 在CSS集群中,因为集群分片总数超限而导致的写入失败的总次数。 OpenSearch集群仅1.3.6版本支持该监控指标。 ≥ 0 Count 不涉及 CSS集群 1分钟 write_fail_index_blocks_write 因索引配置禁止写入导致的写入失败次数 在CSS集群中,因为索引配置禁止写入而导致的写入失败的总次数。 OpenSearch集群仅1.3.6版本支持该监控指标。 ≥ 0 Count 不涉及 CSS集群 1分钟 write_fail_mapping_malformed 因字段类型不正确导致的写入失败次数 在CSS集群中,因为索引字段类型不正确导致的写入失败的总次数。 OpenSearch集群仅1.3.6版本支持该监控指标。 ≥ 0 Count 不涉及 CSS集群 1分钟 index_storage 索引数据量 在CSS集群中,所有索引的数据量之和。 ≥ 0 byte 1024 CSS集群 1分钟 backup_failed_task_count 备份失败任务个数 在CSS集群中,快照备份任务的失败个数。 ≥ 0 Count 不涉及 CSS集群 1分钟 disk_total 磁盘总量 在CSS集群中,所有节点数据盘大小之和。 ≥ 0 byte 1024 CSS集群 1分钟 number_of_unassigned_shards 未分配的分片数量 在CSS集群中,未分配的分片总数。 ≥ 0 Count 不涉及 CSS集群 1分钟
共100000条