View a markdown version of this page

在 Amazon EMR 上配置 Kerberos - Amazon EMR

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

在 Amazon EMR 上配置 Kerberos

此部分提供了设置常见架构的 Kerberos 的配置详细信息和示例。无论您选择哪种架构,配置基本上相同,通过三个步骤完成。如果您使用外部 KDC 或设置跨领域信任,则必须确保集群中的每个节点具有指向外部 KDC 的网络路由,包括适用的安全组的配置以允许入站和出站 Kerberos 流量。

步骤 1:使用 Kerberos 属性创建安全配置

安全配置指定有关 Kerberos KDC 的详细信息,并允许在每次创建集群时重用 Kerberos 配置。您可以使用 Amazon EMR 控制台 AWS CLI、或 EMR API 创建安全配置。安全配置也可以包含其它安全选项,如加密。有关创建安全配置以及在创建集群时指定安全配置的更多信息,请参阅使用安全配置设置 Amazon EMR 集群安全性。有关安全配置中 Kerberos 属性的信息,请参阅安全配置的 Kerberos 设置

步骤 2:创建集群并指定特定于集群的 Kerberos 属性

在创建集群时,您将指定 Kerberos 安全配置以及集群特定 Kerberos 选项。当您使用 Amazon EMR 控制台时,只有与指定安全配置兼容的 Kerberos 选项可用。使用 AWS CLI 或 Amazon EMR API 时,请确保指定与指定安全配置兼容的 Kerberos 选项。例如,如果在使用 CLI 创建集群时,您为跨领域信任指定了委托人密码,然而指定的安全配置没有配置跨领域信任参数,则会出错。有关更多信息,请参阅 集群的 Kerberos 设置

步骤 3:配置集群主节点

根据架构和实现的要求,集群上可能会需要额外的设置。您可在创建之后进行这些设置,也可在创建过程使用步骤或引导操作。

对于每个使用 SSH 连接到集群的 Kerberos-authenticated 用户,您必须确保创建与 Kerberos 用户对应的 Linux 帐户。如果用户主体由 Active Directory 域控制器作为 KDC 或通过跨领域信任提供,Amazon EMR 将自动创建 Linux 账户。如果未使用 Active Directory,则您必须为对应于其 Linux 用户的每个用户创建委托人。有关更多信息,请参阅为 Kerberos-authenticated HDFS 用户和 SSH 连接配置 Amazon EMR 集群

每个用户还必须具有自己的 HDFS 用户目录,您必须创建该目录。此外,必须将 SSH 配置为启用 GSSAPI,才能允许来自 Kerberos-authenticated 用户的连接。主节点上必须启用 GSSAPI,并且客户端 SSH 应用程序必须配置为使用 GSSAPI。有关更多信息,请参阅 为 Kerberos-authenticated HDFS 用户和 SSH 连接配置 Amazon EMR 集群