#作者:stackofumbrella
文章目录
- 使用CCR功能迁移数据
- 功能概述
- 约束限制
- 在主集群中创建索引
- 从集群中执行启用CCR复制功能
- 在主集群中写入测试数据
- 在从集群中查看同步状态
- 查看从集群中的同步数据
- 关闭CCR功能
- 查看远程集群信息
- 删除远程集群配置信息
使用CCR功能迁移数据
功能概述
OpenSearch服务支持将数据复制到一个或多个OpenSearch集群,通过opensearch-cross-cluster-replication插件,以Replication方式从OpenSearch迁移数据,可实现集群数据迁移和灾备。创建OpenSearch跨集群复制后,主 OpenSearch集群上对索引的所有操作,包括创建、更新、删除文档等,都将复制到从集群节点上。
约束限制
跨集群复制期间,复制到从集群的索引仅可读。
跨集群复制期间,不能将从集群索引复制到主集群。
复制停止后,不支持重启复制。
在从集群中配置CCR,其中leader_cluster配置主机群的transport地址和端口
PUT _cluster/settings { "persistent": { "cluster": { "remote": { "leader_cluster": { "seeds": ["192.168.131.158:9301"] } } } } }成功返回结果
在主集群中创建索引
PUT /test { "mappings": { "properties": { "main_data_type": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } } } } }从集群中执行启用CCR复制功能
PUT /_plugins/_replication/test/_start?pretty { "leader_alias": "leader_cluster", "leader_index": "test", "use_roles":{ "leader_cluster_role": "all_access", "follower_cluster_role": "all_access" } }在主集群中写入测试数据
POST /test/_doc { "name": "张三", "age": 30, "city": "北京" } POST /test/_doc { "name": "张3", "age": 32, "city": "男京" } POST /test/_doc { "name": "离你3", "age": 99, "city": "县城" }在从集群中查看同步状态
获取索引复制的状态。可能的状态包括SYNCING(正在同步)、BOOTSTRAPING(正在引导)、PAUSED(已暂停)和REPLICATION NOT IN PROGRESS(复制未进行)。使用同步详情来衡量复制延迟。将此请求在从集群执行
GET /_plugins/_replication/test/_status返回结果
查看从集群中的同步数据
GET test/_search { "query": { "match_all": {} } }返回结果
到此CCR的复制功能已经完成
关闭CCR功能
暂停
暂停索引的复制,将此请求在从集群执行,如果复制暂停超过12小时,则无法恢复,必须停止CCR复制并删除复制索引,然后重新启动索引的复制
POST /_plugins/_replication/test/_pause {}返回结果
停止复制
终止复制并将跟随复制的索引转换为标准索引,将此请求在从集群执行
POST /_plugins/_replication/test/_stop {}返回结果
查看远程集群信息
GET /_remote/info返回结果
删除远程集群配置信息
DELETE /_plugins/_replication/_autofollow { "leader_alias" : "leader_cluster", "name": "test" }返回结果