按计划向辅助服务器执行故障转移 AWS 区域 - Amazon Managed Streaming for Apache Kafka

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

按计划向辅助服务器执行故障转移 AWS 区域

您可以按计划进行故障转移,以测试应用程序在主服务器中发生意外事件时的弹性 AWS 包含您的源MSK集群的区域。计划的故障转移不应导致数据丢失。

如果您使用的是相同主题名称复制配置,请按照以下步骤操作:

  1. 关闭所有连接到您的源集群的生成器和使用器。

  2. 创建新的 MSK Replicator,使用MSK相同的主题名称复制(在控制台中保留相同的主题名称)将数据从辅助区域的MSK集群复制到主区域中的集群。这是将要写入二级区域的数据复制回主区域所必需的,这样您就可以在意外事件结束后对主区域执行失效自动恢复。

  3. 在辅助集群中启动连接到目标集群的生产者和使用者 AWS 区域。

如果您使用的是带前缀的主题名称配置,请按照以下步骤进行故障转移:

  1. 关闭所有连接到您的源集群的生成器和使用器。

  2. 创建新的 MSK Replicator,将数据MSK从辅助区域的MSK集群复制到主区域中的集群。这是将要写入二级区域的数据复制回主区域所必需的,这样您就可以在意外事件结束后对主区域执行失效自动恢复。

  3. 在辅助集群的目标集群上启动生产者 AWS 区域。

  4. 请按照以下选项卡之一的步骤操作,具体取决于应用程序的消息排序要求。

    No message ordering

    如果您的应用程序不需要消息排序,请在辅助服务器中启动使用者 AWS 使用通配符运算符(例如,)同时读取本地(例如主题<sourceKafkaClusterAlias>.topic)和复制主题(例如.*topic)的区域。

    Message ordering

    如果您的应用程序需要消息排序,则仅为目标集群上复制的主题(例如 <sourceKafkaClusterAlias>.topic)启动使用器,而不为本地主题(例如 topic)启动使用器。

  5. 等待目标MSK集群上所有已复制主题的使用者完成所有数据的处理,这样使用者延迟为 0,处理的记录数也为 0。然后,停止目标集群上已复制主题的使用器。此时,从源MSK集群复制到目标MSK集群的所有记录都已消耗。

  6. 在目标MSK集群上启动本地主题(例如topic)的使用者。