从 SageMaker Studio 或 Studio Classic 连接至亚马逊EMR集群 - Amazon SageMaker

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

从 SageMaker Studio 或 Studio Classic 连接至亚马逊EMR集群

Studio 的用户可以使用默认设置从 JupyterLab 笔记本电脑连接到他们正在运行的 Amazon EMR 集群SageMaker 分发图片。Studio Classic 的用户可以使用任何支持的内核从 Studio Classic 笔记本电脑连接到其集群。

使用 Studio 用户界面连接到亚马逊EMR集群

要使用 Studio 或 Studio Classic 用户界面连接到您的集群,您可以从中访问的集群列表中启动连接列出 Studio 或 Studio 经典版中的亚马逊EMR集群,也可以从 SageMaker Studio 或 Studio Classic 中的笔记本启动连接。

从您的集群列表连接到特定集群
  1. 在列表中选择集群的名称。这将激活连接到新笔记本按钮。

  2. 选择连接到新笔记本。这将打开映像和内核选择框。

  3. 选择您的映像和内核,然后选择选择。有关支持的映像列表,请参阅支持从 Studio 或 Studio Classic 连接到亚马逊EMR集群的映像和内核自带映像

  4. 如果您选择的集群不使用 Kerberos、或运行时角色身份验证LDAP,Studio 或 Studio Classic 会提示您选择凭据类型。从 Http 基本身份验证没有凭证中进行选择,然后输入您的凭证(如果适用)。连接命令填充笔记本的第一个单元格,并启动与 Ama EMR zon 集群的连接。

    连接成功后会显示一条消息,确认连接以及 Spark 应用程序的启动。

或者,您可以从笔记本连接到集群。
  1. 选择笔记本顶部的集群

    只有当您使用支持从 Studio 或 Studio Classic 连接到亚马逊EMR集群的映像和内核自带映像中的内核时,集群才可见。如果您在笔记本顶部未看到集群,请确保您的管理员已配置了集群的可发现性并切换到支持的内核。

    这将打开处于某一Running状态的可用集群的列表。

  2. 选择要连接到的集群,然后选择连接

  3. 如果您将 Amazon EMR 集群配置为支持运行时IAM角色,并且管理员在执行角色配置中预加载了您的角色JSON,则可以从 Amazon EMR执行角色下拉菜单中选择您的 Amazon EMR 访问角色。如果你的角色没有预先加载,Studio 或 Studio Classic 默认使用你的 Studio 或 Studio Classic 有关在 Amazon 中使用运行时角色的信息EMR,请参阅使用运行时IAM角色从 Studio Classic 连接到亚马逊EMR集群。当您连接到集群时,Studio 或 Studio Classic 会向活动单元添加一个代码块以建立连接。

    否则,如果您选择的集群不使用 Kerberos、或运行时角色身份验证LDAP,Studio 或 Studio Classic 会提示您选择凭据类型。您可以选择HTTP基本身份验证无凭据

  4. 活动单元填充并运行。此单元包含用于连接您的 Amazon EMR 集群的连接命令。

    连接成功后会显示一条消息,确认连接以及 Spark 应用程序的启动。

使用连接命令连接到 Amazon EMR 集群

要建立与 Amazon EMR 集群的连接,您可以在笔记本单元中执行连接命令。

建立连接时,可以使用 Kerberos轻型目录访问协议 (LDAP)运行时IAM角色身份验证进行身份验证。您选择的身份验证方法取决于您的集群配置。

你可以参考这个示例,在支持 Kerberos 的亚马逊EMR集群上使用网络负载均衡器访问 Apache Livy,设置使用 Kerberos 身份验证的EMR亚马逊集群。或者,您可以使用 Kerberos 或在 aw sagemaker-studio-emr GitHub s-samples/ 存储库中LDAP进行身份验证来浏览 CloudFormation 示例模板。

如果您的管理员启用了跨账户访问权限,则无论您的 Studio Classic 应用程序和EMR集群位于同一个账户还是不同的 AWS 账户中,您都可以从 Studio Classic 笔记本电脑连接到您的 Amazon 集群。

对于以下每种身份验证类型,使用指定的命令从 Studio 或 Studio Classic 笔记本电脑连接到您的集群。

  • Kerberos

    如果您需要跨账户 Ama EMR zon 访问权限,请附加--assumable-role-arn参数。如果您使用连接到集群,请附加--verify-certificate参数。HTTPS

    %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id cluster_id \ --auth-type Kerberos --language python [--assumable-role-arn EMR_access_role_ARN ] [--verify-certificate /home/user/certificateKey.pem]
  • LDAP

    如果您需要跨账户 Ama EMR zon 访问权限,请附加--assumable-role-arn参数。如果您使用连接到集群,请附加--verify-certificate参数。HTTPS

    %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id cluster_id \ --auth-type Basic_Access --language python [--assumable-role-arn EMR_access_role_ARN ] [--verify-certificate /home/user/certificateKey.pem]
  • NoAuth

    如果您需要跨账户 Ama EMR zon 访问权限,请附加--assumable-role-arn参数。如果您使用连接到集群,请附加--verify-certificate参数。HTTPS

    %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id cluster_id \ --auth-type None --language python [--assumable-role-arn EMR_access_role_ARN ] [--verify-certificate /home/user/certificateKey.pem]
  • 运行时IAM角色

    如果您需要跨账户 Ama EMR zon 访问权限,请附加--assumable-role-arn参数。如果您使用连接到集群,请附加--verify-certificate参数。HTTPS

    有关使用运行时IAM角色连接到 Amazon EMR 集群的更多信息,请参阅使用运行时IAM角色从 Studio Classic 连接到亚马逊EMR集群

    %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id cluster_id \ --auth-type Basic_Access \ --emr-execution-role-arn arn:aws:iam::studio_account_id:role/emr-execution-role-name [--assumable-role-arn EMR_access_role_ARN] [--verify-certificate /home/user/certificateKey.pem]

通过 Connect 连接到亚马逊EMR集群 HTTPS

如果您已将亚马逊EMR集群配置为启用传输加密和 Apache Livy 服务器,并希望 Studio 或 Studio Classic EMR 使用与亚马逊通信HTTPS,则需要配置 Studio 或 Studio Classic 才能访问您的证书密钥。HTTPS

对于自签名证书或本地证书颁发机构 (CA) 签名证书,您可以通过两个步骤完成此操作:

  1. 使用以下选项之一将证书文件下载到本地文件系统:PEM

  2. 在连接命令的 --verify-certificate 参数中,通过提供证书的路径来启用证书的验证。

    %sm_analytics emr connect --cluster-id cluster_id \ --verify-certificate /home/user/certificateKey.pem ...

对于公共 CA 颁发的证书,请将 --verify-certificate 参数设置为 true 来设置证书验证。

或者,您可以通过将 --verify-certificate 参数设置为 false 来禁用证书验证。

您可以在中找到 Amazon EMR 集群的可用连接命令列表使用连接命令连接到 Amazon EMR 集群