管理跨集群复制

编辑

使用以下信息管理跨集群复制任务,例如检查复制进度、暂停和恢复复制、重新创建跟随者索引以及终止复制。

要开始使用跨集群复制,请访问 Kibana 并转到 管理 > 堆栈管理。在侧边导航中,选择 跨集群复制

检查复制统计信息

编辑

要检查跟随者索引的复制进度并查看详细的分片统计信息,请访问跨集群复制并选择 跟随者索引 选项卡。

选择要查看复制详细信息的跟随者索引的名称。侧滑面板显示跟随者索引的设置和复制统计信息,包括由跟随者分片管理的读写操作。

要查看更详细的统计信息,请点击 在索引管理中查看,然后在索引管理中选择跟随者索引的名称。打开有关跟随者索引的详细统计信息的选项卡。

API 示例

使用获取跟随者统计信息 API检查分片级别的复制进度。此 API 提供了对跟随者分片管理的读写操作的洞察。该 API 还报告可以重试的读取异常和需要用户干预的致命异常。

暂停和恢复复制

编辑

要暂停和恢复领导者索引的复制,请访问跨集群复制并选择 跟随者索引 选项卡。

选择要暂停的跟随者索引并选择 管理 > 暂停复制。跟随者索引状态更改为已暂停。

要恢复复制,请选择跟随者索引并选择 恢复复制

API 示例

您可以使用暂停跟随者 API暂停复制,然后稍后使用恢复跟随者 API恢复复制。结合使用这些 API 使您能够调整跟随者分片任务上的读写参数,如果您的初始配置不适合您的用例。

重新创建跟随者索引

编辑

当文档被更新或删除时,底层操作会在 Lucene 索引中保留一段时间,该时间由index.soft_deletes.retention_lease.period参数定义。您可以在领导者索引上配置此设置。

当跟随者索引启动时,它会从领导者索引获取保留租约。此租约告知领导者,它不应允许软删除被修剪,直到跟随者指示它已收到操作,或直到租约过期。

如果跟随者索引落后于领导者,并且无法复制操作,Elasticsearch 会报告 indices[].fatal_exception 错误。要解决此问题,请重新创建跟随者索引。当新的跟随索引启动时,远程恢复过程会从领导者重新复制 Lucene 段文件。

重新创建跟随者索引是一个破坏性操作。包含跟随者索引的集群上所有现有的 Lucene 段文件都将被删除。

要重新创建跟随者索引,请访问跨集群复制并选择 跟随者索引 选项卡。

选择跟随者索引并暂停复制。当跟随者索引状态更改为已暂停时,重新选择跟随者索引并选择取消跟随领导者索引。

跟随者索引将转换为标准索引,并且将不再显示在跨集群复制页面上。

在侧边导航中,选择 索引管理。从上一步中选择跟随者索引并关闭跟随者索引。

然后,您可以重新创建跟随者索引以重新启动复制过程。

使用 API

使用暂停跟随 API暂停复制过程。然后,关闭跟随者索引并重新创建它。例如

resp = client.ccr.pause_follow(
    index="follower_index",
)
print(resp)

resp1 = client.indices.close(
    index="follower_index",
)
print(resp1)

resp2 = client.ccr.follow(
    index="follower_index",
    wait_for_active_shards="1",
    remote_cluster="remote_cluster",
    leader_index="leader_index",
)
print(resp2)
response = client.ccr.pause_follow(
  index: 'follower_index'
)
puts response

response = client.indices.close(
  index: 'follower_index'
)
puts response

response = client.ccr.follow(
  index: 'follower_index',
  wait_for_active_shards: 1,
  body: {
    remote_cluster: 'remote_cluster',
    leader_index: 'leader_index'
  }
)
puts response
const response = await client.ccr.pauseFollow({
  index: "follower_index",
});
console.log(response);

const response1 = await client.indices.close({
  index: "follower_index",
});
console.log(response1);

const response2 = await client.ccr.follow({
  index: "follower_index",
  wait_for_active_shards: 1,
  remote_cluster: "remote_cluster",
  leader_index: "leader_index",
});
console.log(response2);
POST /follower_index/_ccr/pause_follow

POST /follower_index/_close

PUT /follower_index/_ccr/follow?wait_for_active_shards=1
{
  "remote_cluster" : "remote_cluster",
  "leader_index" : "leader_index"
}

终止复制

编辑

您可以取消跟随领导者索引以终止复制并将跟随者索引转换为标准索引。

访问跨集群复制并选择 跟随者索引 选项卡。

选择跟随者索引并暂停复制。当跟随者索引状态更改为已暂停时,重新选择跟随者索引并选择取消跟随领导者索引。

跟随者索引将转换为标准索引,并且将不再显示在跨集群复制页面上。

然后,您可以选择 索引管理,从上一步中选择跟随者索引,并关闭跟随者索引。

使用 API

您可以使用取消跟随 API终止复制。此 API 将跟随者索引转换为标准(非跟随者)索引。