elasticsearch 备份恢复步骤

发布于:2025-02-18 ⋅ 阅读:(100) ⋅ 点赞:(0)

1、查看仓库,

GET _snapshot

返回, 仓库名是aliyun_auto_snapshot

{
  "aliyun_auto_snapshot" : {
    "type" : "oss",
    "settings" : {
      "compress" : "true",
      "base_path" : "fb632b-1241148226163200/xxx",
      "endpoint" : "http://oss-cn-shenzhen-internal.aliyuncs.com"
    }
  }
}

2、查看当前备份文件

GET /_cat/snapshots/aliyun_auto_snapshot?v

返回

id                                      status start_epoch start_time end_epoch  end_time duration indices successful_shards failed_shards total_shards
es-xxx_20241206030009 SUCCESS 1733425210  19:00:10   1733425218 19:00:18     7.9s       4                13             0           13
es-xxx_20241207030008 SUCCESS 1733511609  19:00:09   1733511615 19:00:15     6.6s       4   

3、备份最新数据。排除系统索引。

PUT _snapshot/aliyun_auto_snapshot/aliyun_auto_snapshot_2024012121614
{"indices":"*,-.*"}

4、查看备份

GET /_cat/snapshots/aliyun_auto_snapshot?v

5、恢复备份的方法,恢复之前关闭索引(如果是增量恢复),或者清空索引数据。

POST _snapshot/aliyun_auto_snapshot/aliyun_auto_snapshot_2024012121614/_restore 
{"indices":"*,-.*","ignore_unavailable":"true"}

如果是增量恢复关闭索引的方法

POST *,-.*/_close  

如果需要把备份备份到自定义仓库中,以oss为例子,创建方法


PUT _snapshot/my_es_snapshot_from_oss/
{
    "type": "oss",
    "settings": {
        "endpoint": "oss-cn-shenzhen-internal.aliyuncs.com",
        "access_key_id": "xxx",
        "secret_access_key": "xxx",
        "bucket": "es-snapshot-qianyi",
        "compress": true,
        "chunk_size": "500mb",
        "base_path": "my_es_snapshot_from_oss/"
    }
}

加速快照恢复的方法

GET _cluster/settings?flat_settings&include_defaults


PUT _cluster/settings
{
  "persistent": {
    "cluster.routing.allocation.node_concurrent_recoveries": "4",
    "indices.recovery.max_bytes_per_sec": "100mb"
  }
}
修改分片迁移的配置,以便在rebalance或者recovery时更快恢复集群。

indices.recovery.max_bytes_per_sec:恢复时单个节点的总进出流量限制。(默认40mb)

indices.recovery.max_concurrent_file_chunks:恢复时可并发拷贝的文件块数量。(默认2)

cluster.routing.allocation.cluster_concurrent_rebalance:整个集群范围内允许同时rebalance的shard数。(默认2)

cluster.routing.allocation.node_initial_primaries_recoveries:单个节点主分片并行恢复的数据。(默认4)

cluster.routing.allocation.node_concurrent_recoveries:单个节点允许同时接收、传出恢复的shard数,(默认2)

网站公告

今日签到

点亮在社区的每一天
去签到