热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

elasticsearch索引迁移_Elasticsearch实现跨集群复制功能?

目前,Elasticsearch6.5.0是Elastic最为稳定的版本,它是基于Lucene7.5.0开发的,可以实现通过Elastic

目前,Elasticsearch 6.5.0是Elastic最为稳定的版本,它是基于Lucene 7.5.0开发的,可以实现通过Elastic Cloud 的Service进行部署。Elasticsearch 6.5.0能够实现跨群集复制功能,将数据从一个节点复制到另外一个节点 。Elasticsearch 的集群内的自动复制性能不断的提高,以此同时,故障转移和数据恢复方面的性能不断改进。

03981f6c567360a0b7a8f34021af7ec3.png

Elasticsearch 6.5.0为目前最稳定版本

跨越数据集群时常见会发生高延迟的情况,低带宽和更频繁的网络分区意味着如果Elasticsearch中的传统方法扩展到类似WAN的连接,则会导致更为糟糕的体验。必须通过使用外部队列将数据分发到这些数据中心或执行定期快照来切换到多数据中心。有多种方法可以将数据分配到数据中心的多个集群中,但每种方法都需要权衡,从操作复杂性到更高的成本,再到显着的恢复延迟。Elasticsearch实现跨集群复制功能?

1)Elasticsearch的索引设计

  • 一份索引(index)可分成多个分片(shard)并分配在不同节点上(node) 。
  • 一份shard可由一个主分片(primary)和多个备副本(replica)组成。
  • 数据先写到主分片,写入成功则同步到各个备副本上。

elasticsearch分析primary到replica的内部复制处理流程,将复制目标扩展到外部集群达成跨集群数据同步效果。

812669a2323e43ce756c8d4fa7841eeb.png

2)Elasticsearch跨集群同步设计

  • 类似于k8s|hippo,ES的分布式调度模型也采用一种目标式的资源管理方式,即master发布一个全局状态(ClusterState),工作节点共同协作,直到整体集群状态达到一致。
  • RoutingTable(路由表)是状态的一个子模块,他管理了所有索引的路由状态,如新建的索引放在那些节点上,某些节点磁盘快满了应该迁移出去等等。
  • ShardRouting 是RoutingTable的具体表现,他表示一个分片的路由规则,如分片是否为主分片、放在哪个节点、现在处于什么状态等等。

当我们为一个索引建立一个新的副本,Master节点便会发布一个新的集群状态,被分配的Work节点根据ShardRouting找到主分片位置并建立恢复任务,此过程在ES中被称之为peer_recovery。

8efbad8ce01985db4be888d1d6a3c5b9.png

3)Elasticsearch跨集群同步数据实例

curl -XPUT -H'Content-Type: application/json' localhost:9201/_cluster/settings -d '{ "persistent": { "search.remote": { "america": { "skip_unavailable": "true



推荐阅读
  • 在安装并配置了Elasticsearch后,我在尝试通过GET /_nodes请求获取节点信息时遇到了问题,收到了错误消息。为了确保请求的正确性和安全性,我需要进一步排查配置和网络设置,以确保Elasticsearch集群能够正常响应。此外,还需要检查安全设置,如防火墙规则和认证机制,以防止未经授权的访问。 ... [详细]
  • ElasticSearch版本:elasticsearch-7.3.0环境准备:curl-HContent-Type:applicationjso ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了markdownElasticsearch:更新现有索引的映射和设置相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 利用爬虫技术抓取数据,结合Fiddler与Postman在Chrome中的应用优化提交流程
    本文探讨了如何利用爬虫技术抓取目标网站的数据,并结合Fiddler和Postman工具在Chrome浏览器中的应用,优化数据提交流程。通过详细的抓包分析和模拟提交,有效提升了数据抓取的效率和准确性。此外,文章还介绍了如何使用这些工具进行调试和优化,为开发者提供了实用的操作指南。 ... [详细]
  • 在CentOS上部署和配置FreeSWITCH
    在CentOS系统上部署和配置FreeSWITCH的过程涉及多个步骤。本文详细介绍了从源代码安装FreeSWITCH的方法,包括必要的依赖项安装、编译和配置过程。此外,还提供了常见的配置选项和故障排除技巧,帮助用户顺利完成部署并确保系统的稳定运行。 ... [详细]
  • Elasticsearch 嵌套调用中动态类导致数据返回异常分析与解决方案 ... [详细]
  • Kubernetes 1.2 新功能解析:multizone(多区)支持
    导论Kubernetes1.2增加的一个新的功能是把一个集群跑在多个failurezone里(谷歌GCE管它叫“zone”,亚马逊AWS管它们叫“ava ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 本文提供了详细的 Filebeat 部署指南,涵盖了解压安装包、配置文件编辑以及启动服务等关键步骤。具体操作包括使用 `tar -zxvf filebeat-6.1.1-linux-x86_64.tar.gz` 解压安装包,并通过 `vi /home/elk/filebeat-6.4.2-linux/filebeat.yml` 编辑配置文件。此外,文章还介绍了最佳实践,帮助用户确保 Filebeat 的高效运行和数据传输的可靠性。 ... [详细]
  • 成都万有算力(广州算力网络科技有限公司)
    在同期举办的第十三届天翼智能生态高峰论坛上,中国电信正式发布《中国电信AI+计划》。但从目前来看,后者的影响早已反过来远大于受置疑的前者。包括自由的金针菇、单纯的长颈鹿在内多位专家 ... [详细]
  • 对mysql的总结与反思_一次DB故障引起的反思和MySQL Operator选型
    前言在一次数据库故障后,我们发现业务库会根据业务的等级会划分多个MySQL实例,许多业务库会同时属于一个MySQL实例,当一个库引发问题后 ... [详细]
  • 一站式全屋家具定制(一站式海外婚礼定制)
    而且业务系统数据存储量大,有的企业选择迁移升级数据库,有的企业根据企业的需求选择进行深度定制。公司上线OA系统以后,也不会出现业务与系统相冲突的情况。与此同时,他们不得不不断地测试 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
author-avatar
mobiledu2502885017
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有