使用 AWS 管理控制台 创建预置 MSK 集群
此主题中的过程介绍了使用 AWS 管理控制台 中的自定义创建选项创建预置 MSK 集群的常见任务。使用 AWS 管理控制台 中提供的其他选项,您还可以创建以下内容:
本主题中的程序
在 https://console.aws.amazon.com/msk/
打开 Amazon MSK 控制台。 -
选择创建集群。
-
对于集群创建方法,请选择自定义创建。
-
对于集群名称,指定一个唯一且不超过 64 个字符的名称。
对于集群类型,选择已预置。
-
对于 Apache Kafka 版本,选择要在代理上运行的版本。要查看每个 Apache Kafka 版本支持的 Amazon MSK 功能的比较,请选择查看版本兼容性。
-
请在代理部分执行以下操作:
-
对于代理类型,选择以下选项之一:
-
快速代理:高性能、可扩展的代理,具有完全托管的虚拟存储。对于要求苛刻的高吞吐量应用程序,请选择此代理类型。
-
标准代理:传统的 Kafka 代理,可完全控制配置。对于吞吐量要求适中的通用工作负载,请选择此代理类型。
有关这些代理类型的更多信息,请参阅Amazon MSK 代理类型。
-
-
对于代理大小,根据集群的计算、内存和存储需求,选择用于集群的大小。
-
对于区数量,选择代理分布的 AWS 可用区 数量。
为提高可用性,快速代理需要三个可用区。
-
对于每个区的代理,指定您希望 Amazon MSK 在每个可用区中创建的代理数量。每个可用区最少有一个代理,基于 ZooKeeper 的集群每个集群最多有 30 个代理,基于 KRaft 的集群每个集群最多有 60 个代理。
-
此过程介绍如何跨代理配置数据存储需求,并指定存储模式。这有助于根据工作负载需求定义数据存储要求。此外,该过程还描述了控制代理运行方式的集群配置设置。这些设置包括代理配置、默认主题设置和分层存储策略等设定。
-
如果选择代理类型为标准,请在存储部分执行以下操作:
-
对于存储, 选择您希望集群拥有的初始存储量。创建集群后,您无法减少存储容量。
-
(可选)根据您选择的代理大小(实例大小),您还可以指定每个代理的预置存储吞吐量。该选项支持为每个代理的 Amazon EBS 卷分配专用的输入和输出 (I/O) 性能。
要启用此选项,请为 x86 选择代理大小(实例大小)kafka.m5.4xlarge 或更大,为基于 Graviton 的实例选择 kafka.m7g.2xlarge 或更大。然后,选中启用预置存储吞吐量复选框。通过选中此复选框,您可将吞吐量手动设置为每秒至少 250 MiB。这一吞吐量对需要高速、可预测存储性能的 I/O 密集型工作负载或应用程序非常有用。有关更多信息,请参阅 为 Amazon MSK 集群中的标准代理预置存储吞吐量。
-
对于集群存储模式,请指定集群中的数据存储和管理方式。此选项决定了代理使用的存储类型和配置。请选择以下选项之一:
-
仅 EBS 存储:在附加至每个代理的 Amazon Elastic Block Store (Amazon EBS) 卷上,本地存储所有主题数据。选择此模式可满足稳定性能需求,并快速访问最近的消息。
-
分层存储和 EBS 存储:将本地 Amazon EBS 数据与经济高效的 Amazon S3 大型数据集远程存储相结合。此模式可降低 Amazon EBS 存储成本,支持更长的数据留存时间,并在无人工干预的情况下自动扩缩存储。如果想以更低的成本将数据留存更长时间,或预计存储需求会有大幅增长,请选择此模式。
-
注意
对于快速代理,无需管理存储空间。
-
-
对于集群配置,请指定以下选项之一来定义集群行为:
-
Amazon MSK 默认配置:包含一组针对通用使用案例进行优化的预定义配置。选择此选项可加快设置和部署集群。有关 Amazon MSK 配置的信息,请参阅 预置 Amazon MSK 配置。
-
自定义配置:可指定您自己的代理和主题设置。您可以从列表中选择现有的自定义配置,也可以创建新的自定义配置。选择此选项可以对代理进行微调控制,例如特定的性能调整、安全设置等。
-
-
选择下一步以继续。
网络配置定义了集群在 AWS 基础设施内的部署方式。这包括 VPC、可用区和子网,以及控制网络、可用性和访问权限的安全组。
-
对于网络,执行以下操作:
-
选择要用于集群的 VPC。
-
根据您之前选择的可用区数量,指定将在其中部署代理的可用区和子网。
对于美国西部(北加利福尼亚)区域的标准代理,您需要在两个不同可用区中使用两个子网。在提供 Amazon MSK 的其余区域中,您可以指定两到三个子网。您的子网必须位于不同的可用区中。
对于快速代理,需要在三个不同的可用区中使用三个子网。
在创建预置 MSK 集群时,MSK 在您指定的子网之间平均分配代理节点。
-
对于 Amazon EC2 中的安全组,选择或创建要向其授予集群访问权限的一个或多个安全组。这些 Amazon EC2 安全组控制代理的入站和出站流量。例如,客户端计算机的安全组。
如果您指定与您共享的安全组,则必须确保您具有使用它们的权限。具体来说,您需要
ec2:DescribeSecurityGroups权限。有关更多信息,请参阅连接到 MSK 集群。
-
-
选择下一步以继续。
-
在安全设置部分,执行以下操作:
-
选择以下一种或多种身份验证和授权方法,控制客户端对 Kafka 集群的访问:
-
未经身份验证的访问:允许客户端在未提供任何身份验证凭据的情况下访问集群。此方法存在安全风险,可能不符合安全最佳实践。有关更多信息,请参阅 msk-unrestricted-access-check。
-
基于 IAM 角色的身份验证:使用 AWS IAM 用户/角色启用客户端身份验证和授权。此方法通过 IAM 策略提供对集群访问的精细控制。建议将此方法用于已在 AWS 中运行的应用程序。
-
SASL/SCRAM 身份验证:要求客户端提供存储在 AWS Secrets Manager 中的用户名和密码凭证进行身份验证。Amazon MSK 从密钥管理器检索这些凭证,并安全地验证用户身份。
要为集群设置有关身份验证的登录凭证,请先在密钥管理器中创建密钥资源。然后,将登凭证与该密钥相关联。有关该访问控制方法的更多信息,请参阅为 Amazon MSK 集群设置 SASL/SCRAM 身份验证。
-
通过 AWS Certificate Manager (ACM) 进行 TLS 客户端身份验证:支持使用数字证书在客户端和代理之间进行双向身份验证。必须在为集群相同或不同的 AWS 账户 中配置 AWS 私有证书颁发机构 (AWS 私有 CA)。
我们强烈建议在实现 mTLS 时,为每个 MSK 集群使用独立的 AWS 私有 CA。这可以确保由 PCA 签署的 TLS 证书仅对单个 MSK 集群进行身份验证,从而维持严格的访问控制。
-
-
-
在加密,选择要用于加密静态数据的 KMS 密钥类型。有关更多信息,请参阅 Amazon MSK 静态加密。
对静态数据进行加密可以保护存储数据的完整性,而传输中加密可确保数据在传输过程中,面对网络监控手段时的数据机密性。
-
选择下一步以继续。
此过程介绍如何设置代理指标,以及如何收集和传送代理日志。通过这些设置,可以观察分析集群的运行状况、性能和故障排除问题。有关更多信息,请参阅 监控预置 Amazon MSK 集群。
-
对于该集群的 Amazon CloudWatch 指标,请选择以下监控级别之一。在每个监控级别收集的指标都与 CloudWatch 集成在一起,以实现可视化和警报。
-
基本监控:提供一组基本的集群级别指标,无需额外付费。此级别适用于具有普通监控需求的大多数用例。
-
代理级增强监控:提供详细的代理指标,但需额外付费。此级别包括基本监控和更精细的代理指标,例如分层存储指标、其它代理传入/传出的字节数、读/写操作的总时间。您需要为该级别的指标付费,而基础级别指标仍继续免费。
-
主题级增强监控:提供单个主题的指标,但需额外付费。选择此级别可以更详细地了解各个代理的主题性能。此级别包括增强的代理级监控和主题级指标,例如指定主题的分层存储指标,以及每秒收到的消息数。
-
分区级增强监控:提供最精细的各分区指标视图,但需额外付费。选择此级别,可通过捕获各代理间每个主题中每个分区的指标,来获得最详细的监控。此级别包括增强的主题级监控和特定于分区的精细指标,例如补偿滞后指标。
有关标准和快速代理类型在各监控级别可用的指标的更多信息,请参阅标准代理的 CloudWatch 指标和快速代理的 CloudWatch 指标。
-
-
(可选)如果要使用 JMX Exporter、Node Exporter 或同时使用两者,以 Prometheus 格式导出指标,请选择使用 Prometheus 启用开放监控。有关此选项的更多信息,请参阅 使用 Prometheus 进行监控。
-
(可选)要将 MSK 集群配置为将代理日志传送至各种 AWS 服务 进行故障排除和审核,请选择以下一个或多个选项。如果尚不存在这些目标资源,Amazon MSK 也不会为您创建。有关更多信息,请参阅 代理日志。
-
传输至 Amazon CloudWatch Logs:将日志发送到 CloudWatch 中,具备聚类、搜索和可视化功能。无需离开 AWS 管理控制台 即可查询和分析日志。
-
传输至 Amazon S3:将日志作为文件存储在 Amazon S3 存储桶中,进行长期存档和批量分析。
-
传输至 Amazon Data Firehose:将日志发送到 Firehose,以便自动传输给 Amazon OpenSearch Service 以进行实时故障排除。
-
-
(可选)为了帮助识别、组织或搜索集群,请选择添加新标签以键值对形式添加标签。例如,使用
Load testing和Test的键值对向集群添加标签。有关在集群中使用标签的更多信息,请参阅为 Amazon MSK 集群添加标签。
-
选择下一步以继续。
-
查看集群的设置。
选择编辑或上一步,更改之前指定的任何设置或返回之前的控制台屏幕。
-
选择创建集群。
-
在集群详细信息页面的集群摘要部分中,查看此集群的状态。在 Amazon MSK 预置集群时,状态从正在创建变为活动。当状态为活动时,您可连接到集群。有关集群状态的更多信息,请参阅了解预置 MSK 集群状态。