阿里云ElasticSearch跨集群备份恢复实践 阿里云ElasticSearch跨集群备份恢复实践背景操作流程创建OSS引用仓库查看引用实例的快照信息通过快照还原指定索引数据新建快照还原索引数据注意背景在ES跨大版本升级以及ES实例数据切换场景下可依托于阿里云elasticsearch-repository-oss插件实现跨实例间的ES数据备份与恢复。前提条件相同地域归属于相同账号。源端实例的版本低于或等于目标端实例的版本。如果源端和目标端实例的版本都是商业版6.7.0请确保两个实例的内核版本都是最新或者目标端的内核版本比源端高。操作流程创建OSS引用仓库1.打开阿里云Elasticsearch控制台。2.在左侧导航栏点击ES实例。3.进入目标实例。点击左侧菜单栏的数据备份菜单在跨集群OSS仓库设置区域单击立即创建。点击创建OSS引用仓库选择要引用的源端实例添加成功后会在目标实例显示引用的源端实例ID和生成一个引用仓库名称以及引用仓库状态查看引用实例的快照信息1.登录目标端实例的kibana控制台点击开发者工具2.在Console中执行以下命令查看引用实例仓库中的所有快照信息GET /_cat/snapshots/引用仓库名称?v通过快照还原指定索引数据新建快照如果实例自动创建的快照时间差较大可先将要恢复的索引写入停掉后创建最新快照设置源实例索引不允许写入PUT /index_name/_settings{index.blocks.write:true}在源实例创建快照--可以传入多个索引 PUT _snapshot/aliyun_auto_snapshot/snapshot_name{indices:index_name}还原索引数据目标实例查看快照GET /_cat/snapshots/引用仓库名称?v目标实例还原快照-- 可以传入多个索引 POST _snapshot/oss引用集地址/snapshot_name/_restore{indices:index_name}等待索引运行状况变为green代表还原完成注意如果索引恢复时没有停掉源实例索引写入要有补偿机制针对数据备份过程中产生的差异数据需要做补偿机制另外关闭索引写入功能要搭配应用侧重试机制使用。