You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ES v7.5.1如何提升GCP环境下GCS快照仓库的快照恢复速度

ES v7.5.1 GCS快照恢复速度优化方案

你已经完成了基础设施层面瓶颈排查、取消了ES恢复流量限速的基础操作,当前瓶颈集中在ES集群和GCS仓库的并发配置限制,可按照以下方案调整:

核心瓶颈说明

你扩容节点后集群总吞吐量保持4.5Gbps不变的表现,符合ES全局恢复并发数限制的特征:ES默认对全集群同时执行的恢复任务做了保守限制,无论集群节点规模多大,超过限制的恢复任务都会排队等待,直接导致整体吞吐量上不去。

可落地优化操作

  • 调整集群级恢复并发配置
    这是解决当前瓶颈的核心配置,通过API修改集群持久化设置:

    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.cluster_concurrent_recoveries": 60,
        "cluster.routing.allocation.node_initial_primaries_recoveries": 20,
        "cluster.routing.allocation.node_concurrent_recoveries": 12
      }
    }
    

    参数说明:cluster_concurrent_recoveries默认值仅为2,是全集群恢复任务的总并发上限,调整后可同时执行更多恢复任务;另外两个参数分别控制单节点主分片、所有分片的恢复并发上限,匹配你的10~20节点规模设置即可。

  • 调整单恢复任务的传输配置
    提升单个恢复任务的GCS下载效率:

    PUT _cluster/settings
    {
      "persistent": {
        "indices.recovery.concurrent_streams": 10,
        "indices.recovery.max_concurrent_file_chunks": 5,
        "indices.recovery.chunk_size": "512mb"
      }
    }
    

    参数说明:这组参数分别控制每个恢复任务的并行下载流数、单文件并发传输块数、单块传输大小,大幅降低小文件传输的请求开销,充分利用GCS的带宽能力。

  • 调整GCS快照仓库的并发配置
    更新你已创建的GCS快照仓库配置,放开GCS客户端的并发请求限制:

    PUT _snapshot/你的GCS仓库名称
    {
      "type": "gcs",
      "settings": {
        "bucket": "你的GCS桶名称",
        "chunk_size": "1gb",
        "max_concurrent_operations": 100
      }
    }
    
  • 临时优化建议
    恢复期间可临时关闭副本分片分配,优先保证主分片恢复占用全部带宽,主分片恢复完成后再开启副本自动同步:

    // 恢复前执行,仅允许主分片分配
    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.enable": "primaries"
      }
    }
    
    // 主分片恢复完成后执行,恢复全部分片分配
    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.enable": "all"
      }
    }
    

效果预期

调整完成后重新触发快照恢复,集群总吞吐量可直接突破4.5Gbps限制,单节点恢复速度可达到300~450MBps,接近磁盘和GCS的性能上限。

内容的提问来源于stack exchange,提问作者Amit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 15:12:02