【播资讯】ElasticSearch的灾备同步方案

2022-12-13 18:09:05 来源:51CTO博客


(资料图)

为了避免ElasticSearch发生意外情况发生,导致数据丢失或者整个集群不能提供服务,所以对存储的数据进行灾备是在使用ElasticSearch过程中,必不可少的重要环节。

主要分享低代码、微服务、容器化、SAAS‬、系统架构方面的的‬内容‬‬,希望‬大家‬点赞‬,评论,关注‬。

为了避免ElasticSearch发生意外情况所以对存储的数据进行灾备是在使用ElasticSearch过程中,必不可少的重要环节,通过快照快照进行本地或者分布式备份,ElasticSearch支持多种存储,可以适应与各种场景下的数据灾备需求,并在意外发生后及时的数据还原,持续化的提供ElasticSearch服务能力。工作流程图为了多集群共享数据,所以需要创建分布式存储仓库,可以支持NFS、S3,同时需要设置ElasticSearch对应用户的权限第一次ElasticSearch数据备份是全量备份,再次备份则是增量备份,可以根据业务具体设置增量时间间隔。如果出现ElasticSearch出现问题,可以用镜像数据进行还原,同时如果也可以在另一个集群实时还原增量数据,以便出现故障时及时切换。涉及到的elasticsearch.yml配置文件的主要配置项
cluster.name: "BoCloud_cluster"node.name: master_1node.master: truehttp.port: 9200path.repo: /mount/elasticsearch/datatransport.tcp.port: 9300discovery.seed_hosts: ["dc_es1","dc_es2","dc_es3"]cluster.initial_master_nodes: ["dc_es1","dc_es2","dc_es3"]
path.repo 需要设置仓库地址,进行数据存储是需要在改目录下,支持nfs、s3、hdfs。在创建仓库前一定要设置好仓库地址涉及到主要操作=创建仓库
POST _snapshot/es_snapshot_202205{  "type": "fs",  "settings": {    "location": "/mount/elasticsearch/data",    "compress": true  }}
es_snapshot_202205 仓库名称type 文件类型compress 是否启用压缩创建镜像
PUT /_snapshot/es_snapshot_202205/snapshot_log?wait_for_completion=true{    "indices": "access_log"}
snapshot_log 镜像名称wait_for_completion 是否等待快照保存结束时才会返回结果。反之异步返回结果indices 设置要备份的索引,也可以不设置备份全部索引数据数据还原&全量还原
POST /_snapshot/es_snapshot_202205/snapshot_log/_restore
恢复snapshot_log镜像中的索引及数据,注意如果集群中已有快照的索引那就会报索引已存在的错误。所以在数据还原时需要确认是否存在同名的索引数据还原&部分索引还原
POST /_snapshot/es_snapshot_202205/snapshot_log/_restore{  "indices": "access_log",  "ignore_unavailable": true,  "include_global_state": false,                "rename_pattern": "access_log",  "rename_replacement": "restored_access_log",  "include_aliases": false}
ignore_unavailable false表示当缺少access_log索引时报错include_global_state false 将还原快照中的所有数据流和索引,但不还原群集状态include_aliases 是否需要恢复别名,true恢复,false不恢复别名实施建议快照名称带有日期时间,镜像文件管理恢复数据之前保证恢复的索引在当前ElasticSearch中没有创建,否则会恢复失败可以使用定时任务根据业务需求进行定时执行快照任务以保证ElasticSearch数据的可靠性

主要分享低代码、微服务、容器化、SAAS‬、系统架构方面的的‬内容‬‬,希望‬大家‬点赞‬,评论,关注‬。

标签: 重要环节 必不可少 时间间隔

上一篇:要闻速递:QT实现动态曲线
下一篇:容器指南之自定义 jira 容器镜像