elasticsearch 备份恢复步骤

1、查看仓库,

bash 复制代码
GET _snapshot

返回, 仓库名是aliyun_auto_snapshot

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

2、查看当前备份文件

bash 复制代码
GET /_cat/snapshots/aliyun_auto_snapshot?v

返回

bash 复制代码
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、备份最新数据。排除系统索引。

bash 复制代码
PUT _snapshot/aliyun_auto_snapshot/aliyun_auto_snapshot_2024012121614
{"indices":"*,-.*"}

4、查看备份

bash 复制代码
GET /_cat/snapshots/aliyun_auto_snapshot?v

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

bash 复制代码
POST _snapshot/aliyun_auto_snapshot/aliyun_auto_snapshot_2024012121614/_restore 
{"indices":"*,-.*","ignore_unavailable":"true"}

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

bash 复制代码
POST *,-.*/_close  

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

bash 复制代码
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/"
    }
}

加速快照恢复的方法

bash 复制代码
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"
  }
}
bash 复制代码
修改分片迁移的配置,以便在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)
相关推荐
村雨遥3 小时前
Flink 状态管理的核心能力
大数据·flink
qq_508823409 小时前
金融量化指标--2Alpha 阿尔法
大数据·人工智能
好家伙VCC10 小时前
数学建模模型 全网最全 数学建模常见算法汇总 含代码分析讲解
大数据·嵌入式硬件·算法·数学建模
2301_7816686112 小时前
Elasticsearch 02
大数据·elasticsearch·搜索引擎
isfox13 小时前
Google GFS 深度解析:分布式文件系统的开山之作
大数据·hadoop
用户Taobaoapi201414 小时前
京东店铺所有商品API技术开发文档
大数据·数据挖掘·数据分析
在未来等你14 小时前
Kafka面试精讲 Day 8:日志清理与数据保留策略
大数据·分布式·面试·kafka·消息队列
没有bug.的程序员14 小时前
Redis Stream:轻量级消息队列深度解析
java·数据库·chrome·redis·消息队列
江畔独步15 小时前
Flink TaskManager日志时间与实际时间有偏差
大数据·flink
TDengine (老段)15 小时前
TDengine 选择函数 Last() 用户手册
大数据·数据库·sql·物联网·时序数据库·tdengine·涛思数据