elasticsearch系列九:异地容灾-CCR跨集群复制

这篇具有很好参考价值的文章主要介绍了elasticsearch系列九:异地容灾-CCR跨集群复制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概述

   起初只在部分业务中采用es存储数据,在主中心搭建了个集群,随着es在我们系统中的地位越来越重要,数据也越来越多,针对它的安全性问题也越发重要,那如何对es做异地容灾呢?

   今天咱们就一起看下官方提供的解决方案cross-cluster replication(简称ccr)。

环境准备

物理机:96核 64G 2THDD   国产UOS系统的服务器一台 ip 192.168.229.48

   

通过docker快速启动2个es 节点、2个kibana节点,es2个节点为2套独立集群。

名称 ip 版本
es

172.17.0.2

172.17.0.4

7.15.0
kibana 7.15.0
jdk openjdk version 16.0.2

进程如下图:  

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

规划:172.17.0.2 为master  172.17.0.4 为follower     

设置CCR

      由于CCR是收费版本,如果购买公有云的服务就自带这个功能,此处我们通过试用30天来体验一下。

      我们先在0.4所在的kibana上打开ccr设置主节点的信息如下图:

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

      接口级设置:

PUT _cluster/settings{  "persistent": {    "cluster": {      "remote": {        "ccr_test": {          "skip_unavailable": false,          "mode": "sniff",          "proxy_address": null,          "proxy_socket_connections": null,          "server_name": null,          "seeds": [            "192.168.229.48:9300"          ],          "node_connections": 3        }      }    }  }}

      

      该功能采用TCP协议,所以我们设置默认端口9300,设置完以后如下图:

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

      并且该功能是基于索引级别的,提供2种方式:创建指定索引同步、自动同步按照索引规则,接下来我们看下2种情况分别如何设置。

设置特定的索引同步

打开follower的kibana,找到ccr设置项如下图:

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

可以创建一个同步任务,此处只能单个索引设置同步。

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

接口级设置:

PUT /ccr_test/_ccr/follow{  "remote_cluster": "ccr_test",  "leader_index": "ccr_test",  "max_read_request_operation_count": 5120,  "max_outstanding_read_requests": 12,  "max_read_request_size": "32mb",  "max_write_request_operation_count": 5120,  "max_write_request_size": "9223372036854775807b",  "max_outstanding_write_requests": 9,  "max_write_buffer_count": 2147483647,  "max_write_buffer_size": "512mb",  "max_retry_delay": "500ms",  "read_poll_timeout": "1m"}

创建以后我们就可以在主节点上对索引ccr_test进行crud操作了,在主节点上新增4百万的数据,再去follower上查看发现数据成功同步过来。

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

但是这种方式有局限性,因为实际生产环境可能有n个索引,比如这种按天生成的日志数据索引如何同步呢?总不能一个个的配置吧,接下来我们就看下自动同步。

设置自动同步

      我们打开自动同步,添加一个自动任务,通过弹框发现按照固定的格式设置索引同步:

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

接口级设置:​​​​​​​

PUT /_ccr/auto_follow/auto-log{  "remote_cluster": "ccr_test",  "leader_index_patterns": [    "log-server-*"  ],  "follow_index_pattern": "{{leader_index}}"}

这样我们就可以将log-server-开头的索引设置自动同步了,此时我们在主节点新增一个索引:​​​​​​​

POST /log-server-2023-12-25/_doc/1{  "name": "John Doe",  "age": 30,  "email": "johndoe@example.com"}

接着去从节点上看下发现数据已经同步成功

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎

总结

以上就是es官方针对跨集群同步的解决方案,官方文档:   https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ccr-getting-started-tutorial.html#ccr-getting-started-tutorial

      当然还有其他的方案比如应用双写、自研数据同步、MQ双写等等。对于自己维护的集群来通过MQ双写相对简单,对于公有云服务还是官方的解决方案更为合适。

      好了今天的分享就到这了,有什么疑问欢迎留言讨论。


Elasticsearch系列经典文章

  • elasticsearch列一:索引模板的使用

  • elasticsearch系列二:引入索引模板后发现数据达到一定量还是慢怎么办?

  • elasticsearch系列三:常用查询语法

  • elasticsearch系列四:集群常规运维

  • elasticsearch系列五:集群的备份与恢复

  • elasticsearch系列六:索引重建

  • elasticsearch系列七:聚合查询

  • elasticsearch系列八:如何解决聚合结果不精确问题

elasticsearch系列九:异地容灾-CCR跨集群复制,Elasticsearch,elasticsearch,大数据,搜索引擎文章来源地址https://www.toymoban.com/news/detail-766856.html

到了这里,关于elasticsearch系列九:异地容灾-CCR跨集群复制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ES实战】Elasticsearch6开始的CCR

    本文涉及官网文章地址 Overview Requirements for leader indices Automatically following indices Getting started with cross-cluster replication Upgrading clusters 跨集群复制 (CCR) 功能可以将远程集群中的索引复制到本地集群。 此功能可用于一些常见的生产用例: 主集群发生故障时的灾难恢复。 辅助集群可

    2024年01月15日
    浏览(26)
  • 异地容灾备份方式有哪些?异地容灾备份是什么意思

    在当今的数字时代,数据已经成为公司的主要资产。然而,数据的丢失或损坏可能会给公司带来巨大的损失。因此,异地容灾备份已成为企业应考虑的因素。本文将详细介绍异地容灾备份的形式,以帮助企业更好地维护其重要数据。 什么是异地容灾备份 nbsp;nbsp;nbsp;nbsp;nbsp;

    2024年02月11日
    浏览(32)
  • elasticsearch系列四:集群常规运维

    概述  在使用es中如果遇到了集群不可写入或者部分索引状态unassigned,明明写入了很多数据但是查不到等等系列问题该怎么办呢?咱们今天一起看下常用运维命令。 案例       起初我们es性能还跟得上,随着业务发展壮大,发现查询性能越来越不行了,我们可以通过cat api查

    2024年02月04日
    浏览(33)
  • 容灾双活方案,异地容灾备份与双活

    数据信息的安全性和完整性面临着硬件问题、病毒入侵、自然灾害等各种威胁。为了应对这些威胁,公司需要采取有效的数据保护措施,其中特别重要的是外部容灾备份和双活技术。 让我们来看看其他地方的容灾备份。这是一种可以将数据复制到避免初始区域的设备中,以避

    2024年02月11日
    浏览(30)
  • 【ElasticSearch系列-06】Es集群架构的搭建以及集群的核心概念

    ElasticSearch系列整体栏目 内容 链接地址 【一】ElasticSearch下载和安装 https://zhenghuisheng.blog.csdn.net/article/details/129260827 【二】ElasticSearch概念和基本操作 https://blog.csdn.net/zhenghuishengq/article/details/134121631 【三】ElasticSearch的高级查询Query DSL https://blog.csdn.net/zhenghuishengq/article/details/1

    2024年02月04日
    浏览(50)
  • 袁庭新ES系列14节 | 搭建Elasticsearch集群

    单节点的Elasticsearch需要在处理大量数据的时候需要消耗大量内存和CPU资源,数据量大到一定程度就会产生处理瓶颈,甚至会出现宕机。 为了解决单节点ES的处理能力的瓶颈及单节点故障问题,我们考虑使用Elasticsearch集群。接下来袁老师带领大家学习如何搭建Elasticsearch的集群

    2024年04月17日
    浏览(104)
  • Elasticsearch 系列(六)- ES数据同步和ES集群

    本章将和大家分享ES的数据同步方案和ES集群相关知识。废话不多说,下面我们直接进入主题。 1、数据同步问题 Elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,Elasticsearch也必须跟着改变,这个就是Elasticsearch与mysql之间的数据同步。 在微服务中,负责酒

    2024年04月28日
    浏览(71)
  • 探索容灾架构演进之路-从单点到异地多活

    在公司发展初期,业务发展和用户增长是首要关注的焦点。然而,随着业务规模不断扩大,用户数量逐渐攀升,应用稳定性的重要性也变得愈发凸显。在这个演进过程中,传统架构下的应用部署模式开始显露出多方面的稳定性风险,其中最为显著的问题之一就是机房单点故障

    2024年02月05日
    浏览(45)
  • 异地容灾系统和数据仓库系统设计和体系结构

    ( 1)生产系统数据同步到异地容灾系统 生产系统与异地容灾系统之间是通过百兆网连接的;生产系统的数据库是 Oracle 9i RAC,总的数据量大约为 3 TB,涉及五千多张表。对这些表进行分析归 类,发现容灾系统真正需要实时同步的表大约只有五百张,数据量约为 1 TB,只 要能

    2024年02月09日
    浏览(33)
  • 人大金仓助力中国人民银行征信中心业务系统异地容灾优化升级

    日前,人大金仓助力中国人民银行应收账款融资服务平台异地容灾项目顺利上线,保证了平台系统运行的连续性和数据安全,为充分发挥平台的融资功能,缓解中小微企业融资难提供了强有力的保障。 缓解中小微企业融资难 中国人民银行构于2013年底自主研发建设了应收账款

    2024年02月06日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包