本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在主 AWS 区域的服务事件结束后,您可以回切到该区域。
如果使用相同主题名称复制配置,请按照以下步骤操作:
创建一个新的 MSK Replicator,将辅助群集作为源,主群集作为目标,起始位置设置为最早,主题名称复制相同(在控制台中保留相同的主题名称)。
这将启动将失效转移后写入辅助群集的所有数据复制回主区域的过程。
在 Amazon 中监控新复制器上的
MessageLag
指标, CloudWatch 直到达到该指标0
,这表明所有数据都已从辅助复制到主副本。所有数据复制完成后,停止所有连接到辅助集群的生产者,并启动连接到主集群的生产者。
等待连接到辅助集群的使用者的
MaxOffsetLag
指标变成0
,以确保它们已处理完所有数据。请参阅 监控消费者延迟。所有数据处理完毕后,停止辅助区域中的消费者并启动连接到主集群的消费者以完成失效自动恢复。
删除在第一步中创建的将数据从辅助集群复制到主集群的复制器。
验证将数据从主集群复制到辅助集群的现有 Replicator 在 Amazon CloudWatch
0
中的状态是否为 “RUNNING” 和ReplicatorThroughput
指标。请注意,当您创建一个新的复制器并将其起始位置设为最早以进行失效自动恢复时,它会开始读取辅助集群主题中的所有数据。根据您的数据留存设置,您的主题可能包含来自源集群的数据。虽然 MSK Replicator 会自动筛选这些消息,但辅助集群中的所有数据仍会产生数据处理和传输费用。您可以使用
ReplicatorBytesInPerSec
跟踪复制器处理的总数据。请参阅 MSK复制器指标。
如果使用带前缀主题名称配置,请按照以下步骤进行操作:
只有在从辅助区域的集群复制到主区域的集群已赶上并且 Amazon 中的 MessageLag 指标接近 0 之后, CloudWatch 才应启动故障恢复步骤。计划的失效自动恢复不应导致数据丢失。
关闭所有连接到辅助区域中MSK集群的生产者和使用者。
-
对于主动-被动拓扑,请删除正在将数据从二级区域的集群复制到主区域的复制器。对于主动-主动拓扑,您无需删除复制器。
-
启动生产者连接到主区域的MSK集群。
-
请按照以下选项卡之一的步骤操作,具体取决于应用程序的消息排序要求。
如果您的应用程序不需要消息排序,则在主 AWS 区域中启动使用通配符运算符(例如
topic
)同时读取本地(例如<sourceKafkaClusterAlias>.topic
)和复制主题(例如.*topic
)的使用者。本地主题(例如 topic)的使用器将从失效转移前消耗的最后一个偏移恢复。如果在失效转移之前有任何未处理的数据,则现在将对其进行处理。如果是计划内失效转移,则不应有此类记录。 -
使用和延迟指标验证从主区域的群集到辅助区域的群集的现有 Replicator 是否处于RUNNING状态
ReplicatorThroughput
并按预期运行。