在 Amazon EMR 上配置 Kerberos - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 Amazon EMR 上配置 Kerberos

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

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

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

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

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

步骤 3:配置集群主节点

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

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

每个用户还必须具有自己的 HDFS 用户目录,您必须创建该目录。此外,SSH 必须配置为启用 GSSAPI,以允许来自通过 Kerberos 进行身份验证的用户的连接。主节点上必须启用 GSSAPI,并且客户端 SSH 应用程序必须配置为使用 GSSAPI。有关更多信息,请参阅为通过 Kerberos 进行身份验证的 HDFS 用户和 SSH 连接配置集群