前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Elasticsearch灾备同步方案设计(二)

Elasticsearch灾备同步方案设计(二)

原创
作者头像
低代码布道者
发布2022-07-26 09:11:06
1K0
发布2022-07-26 09:11:06
举报
文章被收录于专栏:架构师聊技术架构师聊技术

最近因为客户项目需要,所以专门调研了Elasticsearch的这些不常用的重要功能,并整理成文档,现在分享出来,希望对有这方面需求的同行有些帮助

由于内容较多,一共分为三部分分享

  1. Elasticsearch多主、多数据、多协调、多冷节点节点说明及配置
  2. Elasticsearch灾备同步方案设计
  3. Elasticsearch灾备同步方案设计验证
Elasticsearch灾备同步方案设计(二)
Elasticsearch灾备同步方案设计(二)
  • 为了避免ElasticSearch发生意外情况所以对存储的数据进行灾备是在使用ElasticSearch过程中,必不可少的重要环节,通过快照快照进行本地或者分布式备份,ElasticSearch支持多种存储,可以适应与各种场景下的数据灾备需求,并在意外发生后及时的数据还原,持续化的提供ElasticSearch服务能力。
  • 工作流程图
Elasticsearch灾备同步方案设计(二)
Elasticsearch灾备同步方案设计(二)
  • 为了多集群共享数据,所以需要创建分布式存储仓库,可以支持NFS、S3,同时需要设置ElasticSearch对应用户的权限
    • 第一次ElasticSearch数据备份是全量备份,再次备份则是增量备份,可以根据业务具体设置增量时间间隔。
    • 如果出现ElasticSearch出现问题,可以用镜像数据进行还原,同时如果也可以在另一个集群实时还原增量数据,以便出现故障时及时切换。
  • 涉及到的elasticsearch.yml配置文件的主要配置项
代码语言:javascript
复制
cluster.name: "BoCloud_cluster"
node.name: master_1
node.master: true
http.port: 9200
path.repo: /mount/elasticsearch/data
transport.tcp.port: 9300
discovery.seed_hosts: ["dc_es1","dc_es2","dc_es3"]
cluster.initial_master_nodes: ["dc_es1","dc_es2","dc_es3"]
  • 涉及到主要操作
    • 创建仓库
代码语言:javascript
复制
POST _snapshot/es_snapshot_202205
{
  "type": "fs",
  "settings": {
    "location": "/mount/elasticsearch/data",
    "compress": true
  }
}
  • 创建镜像
代码语言:javascript
复制
PUT /_snapshot/es_snapshot_202205/snapshot_log?wait_for_completion=true
{
    "indices": "access_log"
}
  • 数据还原&全量还原
代码语言:javascript
复制
POST /_snapshot/es_snapshot_202205/snapshot_log/_restore
  • 数据还原&部分索引还原
代码语言:javascript
复制
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
}
  • 实施建议
    • 快照名称带有日期时间,镜像文件管理
    • 恢复数据之前保证恢复的索引在当前ElasticSearch中没有创建,否则会恢复失败
    • 可以使用定时任务根据业务需求进行定时执行快照任务以保证ElasticSearch数据的可靠性

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档