当前位置: 首页 > article >正文

跨集群复制:在Amazon OpenSearch服务中实现数据同步

在当今的数据驱动世界中,跨地域的数据同步和灾难恢复变得尤为重要。Amazon OpenSearch服务通过其跨集群复制功能,提供了一种高效的方法来同步不同服务域之间的用户索引、映射和元数据。这一功能不仅有助于确保业务连续性,还能减少因地理位置分散而产生的延迟。然而,在使用这一功能时,我们需要注意一些限制和先决条件。

跨集群复制的限制

在使用Amazon OpenSearch服务的跨集群复制时,以下几点限制需要特别注意:

  1. 服务域限制:无法在Amazon OpenSearch服务域与自管的OpenSearch或Elasticsearch集群之间复制数据。
  2. 索引复制方向:不能将索引从一个关注者域复制到另一个关注者域。所有复制必须源自单个领导者域。
  3. 连接限制:一个域最多可以与20个其他域建立入站和出站连接。
  4. 版本兼容性:在建立跨集群连接时,领导者域的版本必须等于或高于关注者域。
  5. CloudFormation限制:不能使用Amazon CloudFormation来建立域间的连接。
  6. 实例限制:在M3和可突增(T2和T3)实例上不能使用跨集群复制。
  7. 索引存储限制:不能在UltraWarm或冷索引之间复制数据;所有索引必须位于热存储中。
  8. 索引删除:删除领导者域中的索引不会自动删除关注者域中的对应索引。

在设置跨集群复制之前,请确保域满足以下要求:

Elasticsearch 7.10 或 1.1 或 OpenSearch 更高版本

已启用精细访问控制

N 已启用ode-to-node 加密
在这里插入图片描述

在这里插入图片描述

复制单个索引

要开始复制过程,首先需要确保拥有对远程领导者域的es:ESCrossClusterGet权限。以下是一个推荐的IAM策略,它不仅允许执行复制操作,还能进行文档索引编制和标准搜索:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "es:ESHttp*"
      ],
      "Resource": "arn:aws:es:region:account:domain/leader-domain/*"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "es:ESCrossClusterGet",
      "Resource": "arn:aws:es:region:account:domain/leader-domain"
    }
  ]
}

一旦满足了权限要求,就可以通过发送特定的API请求来启动复制过程。例如,以下命令可以在关注者域中启动对领导者域中名为my_index的索引的复制:

PUT _plugins/_replication/follower-01/_start
{
   "leader_alias": "ccr",
   "leader_index": "my_index",
   "use_roles":{
      "leader_cluster_role": "all_access",
      "follower_cluster_role": "all_access"
   }
}

监控复制状态

复制开始后,可以通过以下命令监控复制状态,确保数据同步按预期进行:

GET _plugins/_replication/follower-01/_status

如果需要,还可以暂停和恢复复制过程,或者完全停止复制。需要注意的是,一旦停止复制,关注者索引将变为标准索引,且无法重新启动复制。

自动复制索引

Amazon OpenSearch服务还支持自动复制索引的功能。通过定义复制规则,可以自动复制匹配特定模式的索引。例如,以下命令创建了一个自动复制以a开头的所有索引的规则:

POST _plugins/_replication/_autofollow
{
   "leader_alias" : "ccr",
   "name": "ccr-name",
   "pattern": "a*",
   "use_roles":{
      "leader_cluster_role": "all_access",
      "follower_cluster_role": "all_access"
   }
}

自动复制规则的统计信息可以通过以下命令检索:

GET _plugins/_replication/autofollow_stats

如果需要停止自动复制,可以删除相应的复制规则:

DELETE _plugins/_replication/_autofollow
{
   "leader_alias" : "ccr",
   "name": "ccr-name"
}

通过这些功能,Amazon OpenSearch服务为用户提供了强大的工具来实现跨集群的数据同步和灾难恢复,确保数据的高可用性和一致性。


http://www.kler.cn/news/343142.html

相关文章:

  • 牛上脑和各类牛排的叫法,不要土老帽了~
  • NRF24L01无线通信模块学习 来自正点原子标准库
  • Unity3D 动画回调函数详解
  • Spring14——案例:利用AOP环绕通知计算业务层接口执行效率
  • API项目3:API签名认证
  • React高阶组件详解
  • 51c大模型~合集68
  • 如何设置 GitLab 密码长度?
  • lua多条件组合排序
  • Pygame开发贪吃蛇
  • QT学习笔记1.2(QT的应用)
  • 【数学分析笔记】第5章第1节 微分中值定理(1)
  • Unity 从零开始的框架搭建1-1 unity中对象调用的三种方式的优缺点分析【干货】
  • C++ | Leetcode C++题解之第461题汉明距离
  • 大数据毕业设计选题推荐-B站短视频数据分析系统-Python数据可视化-Hive-Hadoop-Spark
  • Word 插入表格的具体步骤图解
  • 服务器部署‌Traefik 实现子级域名路由服务(对外子域名80,路由对内大端口)
  • 【网络】详解TCP协议的“三次握手”/“四次挥手“
  • 自由学习记录(3)
  • DM原生JDBC,查询结果用Jackson序列化,字段为TEXT类型且存的json字符串时,报错“Infinite recursion“