什么是 Amazon MSK? - Amazon Managed Streaming for Apache Kafka
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

什么是 Amazon MSK?

Amazon Managed Streaming for Apache Kafka (Amazon MSK) 是一项完全托管服务,使您能够构建和运行使用 Apache Kafka 处理流数据的应用程序。Amazon MSK 提供控制层面操作,例如,用于创建、更新和删除集群的操作。它允许您使用 Apache Kafka 数据层面操作,例如,用于生成和使用数据的操作。它运行 Apache Kafka 的开源版本。这意味着支持来自合作伙伴和 Apache Kafka 社区的现有应用程序、工具和插件,而无需更改应用程序代码。您可以使用 Amazon MSK 创建使用 Apache Kafka 版本 1.1.1、2.2.1、2.3.1 或 2.4.1 的集群。

下图概述了 Amazon MSK 的工作原理。


       显示示例 Amazon MSK 集群的体系结构的示意图。

该图演示了以下各个组件之间的交互:

  • 代理节点 — 创建 Amazon MSK 集群时,您可以指定 Amazon MSK 要在每个可用区中创建的代理节点数。在此图显示的示例集群中,每个可用区有一个代理。每个可用区都有自己的 Virtual Private Cloud (VPC) 子网。

  • ZooKeeper 节点 — Amazon MSK 还会为您创建 Apache ZooKeeper 节点。Apache ZooKeeper 是一个开源服务器,可实现高度可靠的分布式协调。

  • 生成器、使用器和主题创建器 — Amazon MSK 允许您使用 Apache Kafka 数据层面操作来创建主题以及生成和使用数据。

  • AWS CLI — 您可以使用 AWS Command Line Interface (AWS CLI) 或软件开发工具包中的 API 来执行控制层面操作。例如,您可以使用 AWS CLI 或软件开发工具包创建或删除 Amazon MSK 集群、列出账户中的所有集群或查看集群属性。

Amazon MSK 会检测集群的最常见故障情况并自动进行恢复,以尽可能降低对创建器和使用器应用程序的影响,使它们能够继续执行写入和读取操作。当 Amazon MSK 检测到代理故障时,它会解决故障或用新的代理替换不正常或无法访问的代理。此外,如果可能,它会重用旧代理的存储来减少 Apache Kafka 需要复制的数据。可用性影响将仅限于 Amazon MSK 完成检测和恢复所需的时间。恢复后,生成器和使用器应用程序可以继续与发生故障前使用的相同代理 IP 地址进行通信。

要开始使用 Amazon MSK,请参阅开始使用 Amazon MSK

要查看通过 Amazon MSK 提供的控制层面操作,请参阅 Amazon MSK API 参考

创建集群后,您可以使用 Amazon CloudWatch 进行监控。有关使用指标监控集群的更多信息,请参阅监控 Amazon MSK 集群