E往无前 | 腾讯云大数据 ElasticSearch 高级功能:Cross Cluster Replication实战

news2024/11/26 6:02:46

前言

Elasticsearch在platinum版本中,推出了Cross Cluster Replication特性(以下简称CCR),也即跨集群远程复制。

该特性可以解决两类问题:

1,数据迁移;

2,异地备份。

本文以实战为主,基本概念及原理可参考官网文档。https://www.elastic.co/guide/en/elasticsearch/reference/current/xpack-ccr.html

基本架构

83357d303ce220623911460565abd9a1.png

图1.CCR结构

需要注意的点:

1、CCR是针对索引的主从复制,且复制动作是由从端发起的pull操作;

2、主端索引(即leader index)可以读写,从端索引(follower index)只读;

3、主端索引的属性 index.soft_deletes.enabled 必须为 true(具体原因可参考官方文档)

https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-requirements.html#ccr-overview-soft-deletes

4、CCR功能需白金版license。

  实战

1、环境简介

腾讯云大数据 Elasticsearch 6.8.2 白金版 集群 * 2,下面简称为集群A(remote cluster)和集群B(local cluster)

13cdffd776c2c258707e88c45be012f3.png

图2.实战架构图

2、配置

1)配置远端集群数据源

在集群A上执行:

PUT test
{
  "settings": {
    "index.soft_deletes.enabled": true
  }
}

2)在远端集群查询节点transport_address

在集群A上执行:

GET _nodes

结果如下,选取任意一个节点的 transport_address即可

e0c7f36dde672e8f6c82a9006d50dca6.png

图3.任意一个节点的transport_ip

3)在本地集群的Kibana上添加远端集群

3bada6a79d207791c29193d43f754777.png

图4.添加远端集群

6ad39400bbdbec839e78ddea1e367ccc.png

图5.添加远端集群

如上图,依次操作,在本地集群,也即集群B添加远端集群A。

需要注意,节点IP & PORT需要填写上一步获取到的transport_address。

4)在Kibana部署CCR

1864be829e4e4aac767e4a82ed5f94bd.png

图6.在Kibana部署CCR

bfb601d64d39b1c4cb829880c483db2a.png

图7.在Kibana部署CCR

81ccd76b592270ca9c2f4936581cca08.png

图8.在Kibana部署CCR

如上图,配置好CCR后,可以看到,CCR实例的状态会很快由Paused变为Active。

至此,已完成CCR的基本配置。

3、测试

我们可以使用如下方法测试上面配置的CCR是否生效。

1)在远端集群PUT文档

8c02ee8c832c923bb331a793d442fe35.png

图9.在远端集群创建索引

2)在本地集群GET对应索引

e5d88d5458b6051c99b911680fbdccc9.png

图10.在本地集群,查看索引内容

我们可以通过以上2步看到,远端集群的leader index索引test中的内容,已经通过CCR复制到了本地集群的follower index索引new中。

除创建以外,索引的变更、删除也都同上,此处不再赘述。

那么,我们如果在本地集群修改或删除follower索引,会如何呢?

112a726236e15808aaf38302058912fa.png

图11.修改follower index

为什么会出现无法写入的情况,请参考官方文档,如下图:

https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-overview.html

e5269a01b8b8c614a4b6616485bcb3e3.png

图12.follower index无法写入的原因

  总结

以上简单介绍了通过Kibana配置并使用Cross Cluster Replication的方法,实际仍然可以使用RESTFUL API完成所有上述操作,具体可以参考官方文档。有关CCR中,自动生成索引部分,这里也不再展开来讲。

CCR功能的提供,让集群间索引级别的数据复制变得简单。在实际商业应用中,往往是通过CCR将生产环境的数据复制到各个集群,供各业务部门分析使用,既能够满足数据分析需要,也避免了业务分析时因误操作修改了生产数据。

免费体验活动专区

Elasticsearch 新用户可享 2核4G,0元 体验 30 天!顺畅体验云上集群

481f1191e1071b6a49bf17072e70fd8a.png

推荐阅读

502c31225e6f10776a1a0bf663c77faa.jpeg

587cd6e3fa187f2c3a43d193da4f9c73.jpeg

16457669179784b9b315f4fda91c0861.jpeg

关注腾讯云大数据公众号

邀您探索数据的无限可能

1e7524e099f4a6af78a129a8c7c03924.png

点击阅读原文,了解更多相关资讯

↓↓↓

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/566097.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入解读 Flink 1.17

摘要:本文整理自阿里云技术专家,Apache Flink PMC Member & Committer、Flink CDC Maintainer 徐榜江(雪尽) 在深入解读 Flink 1.17 Meetup 的分享。内容主要分为四个部分: 1. Flink 1.17 Overview 2. Flink 1.17 Overall Story 3. Fli…

这可能是最全面的Java学习路线了

大家好,我是大彬~ 我本科学的不是计算机,大四开始自学Java,并且拿到了几个互联网中大厂的offer。在学习Java这方面还是比较有经验的,下面我来分享下我整理的Java自学路线。 在这里也提醒学弟学妹们,要尽早确定以后的…

自动化Jenkins管理?使用python-jenkins管理Jenkins

点击上方蓝字⭐️关注“DevOps云学堂”,接收最新技术实践 今天是「DevOps云学堂」与你共同进步的第 26 天 如果这篇文章对您有帮助,欢迎转发点赞分享。您的关注是我持续分享的动力! 简介 本次我们将要学习JenkinsAPI接口,我们先用…

Scrapy数据爬取,Django+PyEcharts实现可视化大屏(附源码)

大家好,我是小F~ 最近有个小伙伴问我有没有基于Django的可视化大屏,小F就顺手找了一下。 于是便在GitHub上发现了一个不错的实战项目,基于qunaer长沙景点数据。 还是作者最近几天刚更新的,保真~ 项目地址: …

Rust每日一练(Leetday0010) 子串下标、两数相除、串联子串

目录 28. 找出字符串中第一个匹配项的下标 Find-the-index-of-the-first-occurrence-in-a-string 🌟🌟 29. 两数相除 Divide Two Integers 🌟🌟 30. 串联所有单词的子串 Substring-with-concatenation-of-all-words &#x…

FL Studio 21最新中文版本发布!原生插件、UI、操作优化全面更新!

FL Studio 21现已推出,提供更快、更精确的音频编辑,升级后的DAW为用户提供了更多的内容发现和改进的界面。 Image-Line发布了FL Studio 21,称其可以实现更快、更精确的音频编辑,以及对整个DAW的更多控制。 期待已久的DAW升级为用…

网络安全的学习路线是怎么样的?

在众多高大上的学习路线指导中,尝试做一股清流,把要讲清楚的都讲清楚,该学些什么,学到哪个程度进入到下一阶段的学习这些才是最重要的。 在学习之前首先要做好学习的系统规划: 1.目前市场需求主流的岗位里&#xff0…

苏州狮山广场能耗管理系统

摘要:随着社会生活水平的提高,经济的繁荣发展,人们对能源的需求逐渐增长,由此带来的能源危机日益严重。商场如何实时的了解、分析和控制商场的能源消耗已成为需要解决的迫在眉睫的难题。传统的能源消耗智能以月/季度/年为周期进行…

springboot+jsp+java高校实验室设备管理系统

本次程序软件的开发的目的就是让使用者可以通过使用该软件提高信息数据的管理效率,同时该程序软件也需要针对不同的操作用户设置对应的功能,因此,此程序的操作流程应该尽量与用户日常操作软件的行为习惯相贴合,另外,程…

国内开源的中文Docker管理工具,界面清爽,赞!

文章目录 一、docker.ui1、简介2、docker.ui安装3、启动效果 一、docker.ui 1、简介 一个用于docker容器和docker集群的可视化管理工具,您可以浏览和维护docker单节点或集群节点worker和Manager。 2、docker.ui安装 安装命令如下: docker run --name…

Selinux 安全上下文与端口控制

Selinux Selinux 的全称是Security Enhance Linux,就是安全加强的Linux。在Selinux之前root账号能够任意的访问所有文档和服务在selinux中,访问控制属性叫做安全上下文,所有客体(文件、进程间通讯通道、套接字、网络主机等&#…

创客匠人CEO蒋洪波:抓住抓住市场需求发展

拍手访谈创客匠人CEO蒋洪波:创客匠人是如何开始的?未来又将如何发展? 一、创客匠人知识付费是如何开始的? 1.从爱好出发 我本人喜欢做产品,或者说是喜欢研究产品。 得益于在研发产品上的一些天赋,我们产品…

第五十一天学习记录:C语言进阶:枚举和联合(共用体)

枚举顾名思义就是一一列举。 枚举的优点 我们可以使用#define定义常量,为什么非要使用枚举? 1、增加代码的可读性和可维护性 2、和#define定义的标识符比较枚举有类型检查,更加严谨 3、防止了命名污染(封装) 4、便于…

【Simulink】示波器图形数据导入Matlab重新绘图(论文)

版本:Matlab2019b 效果 示波器波形图片: 黑色背景,而且坐标轴字体较小,不方便修改,不能直接用在论文上面 对比 Matlab 绘图: 接下来介绍如何设置~ Simulink 设置 选择需要导入的示波器数据 点击 Vi…

termux-x11教程

小粉丝已经求稿两个星期了,不写是不行了。 termux-x11 是Termux的一个图形化项目,官方是这么介绍的。 A Termux add-on app providing Android frontend for Xwayland.安装工具 我们需要在Termux和安卓系统上安装工具以成功的运行程序。 x11-repo&am…

实现图片懒加载的5种方式

目录 1、懒加载介绍 2、实现懒加载技术的方案 3、具体实现代码 1、懒加载介绍 当页面需要展示大量图片时,如果一次性渲染所有图片,会向服务器发出大量请求,导致服务器响应慢,出现页面卡顿或崩溃等问题。采用懒加载技术只预先加…

渗透测试 | 指纹识别

0x00 免责声明 本文仅限于学习讨论与技术知识的分享,不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任,一旦造成后果请自行承担…

LC-3中断实验

一、实验目的 学会分析和理解给定的编程问题;掌握中断驱动的基本原理;掌握键盘数据寄存器(KBDR)及键盘状态寄存器(KBSR)工作基本原理;掌握输出数据寄存器(DDR)及输出状态寄存器(DSR…

Splunk安装配置

前言 Splunk 社区 ,包括白皮书,各类手册,资源下载,社区问答等 入门:Splunk 入门指南 | Splunk 手册:Splunk Enterprise - Splunk Documentation 资源下载:数据可视化工具Splunk Enterprise免费下载 | S…

chatgpt赋能python:Python对Word文档的支持——打造高效办公新选择

Python对Word文档的支持——打造高效办公新选择 在现代社会,文档处理和管理已成为各行各业不可或缺的一部分。在这个领域中,Word文档一直占据主导地位,成为了几乎所有企业和机构必备的工具。而Python作为一门众所周知的高效编程语言&#xf…