从 SageMaker Studio Classic 连接到亚马逊 EMR 集群 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

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

本节介绍在使用任何支持的内核时,如何从 Studio Classic 笔记本电脑连接到 Amazon EMR 集群。

自动连接到 Amazon EMR 集群

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

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

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

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

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

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

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

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

    找到集群图标从 SageMaker Studio Classic 笔记本电脑连接到 Amazon EMR 集群

    这将打开可用集群的列表。

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

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

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

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

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

手动输入连接到 Amazon EMR 集群的命令

无论您的 Studio Classic 应用程序和集群是否位于同 Amazon 一个账户中,您都可以从 Studio Classic 笔记本电脑手动连接到 Amazon EMR 集群。

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

  • Kerberos

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

    %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

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

    %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

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

    %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 角色

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

    有关使用运行时系统 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]

通过 HTTPS 连接到 Amazon EMR 集群。

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

对于自签名证书或本地证书颁发机构 (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 集群的命令列表。