创建 EMR Studio - Amazon EMR

创建 EMR Studio

您可以使用 Amazon EMR 控制台或 AWS CLI为您的团队创建 EMR Studio。创建 Studio 实例是设置 Amazon EMR Studio 的一部分。

先决条件

在创建 Studio 之前,请确保您已在 设置 Amazon EMR Studio 中完成了之前的任务。

要使用 AWS CLI 创建 Studio,您应该已经安装了最新版本。有关更多信息,请参阅安装或更新 AWS CLI 的最新版本

重要

在创建 Studio 之前,请确保在浏览器中停用 FoxyProxy 或 SwitchyOmega 等代理管理工具。当您选择 Create Studio(创建 Studio)时,活动代理可能会导致出现 Network Failure(网络故障)错误消息。

Console

使用 EMR 控制台创建 EMR Studio

  1. 通过以下链接打开 Amazon EMR 控制台:https://console.aws.amazon.com/elasticmapreduce/home

  2. 从左侧导航中选择 EMR Studio

  3. 选择 Create Studio (创建 Studio) 以打开 Create a Studio (创建 Studio) 页面。

  4. 输入 Studio name (Studio 名称) 和可选 Description (描述)

  5. 如果您针对 Studio 使用 IAM 身份验证,则可以选择添加新标签将您选择的一个或多个键值标签添加到 Studio。您可以使用标签向指定用户授予访问 Studio 的权限。有关更多信息,请参阅 将用户或组分配到 EMR Studio

    您还可以添加标签以帮助您管理、识别、组织和筛选 Studios。有关更多信息,请参阅标记AWS资源

  6. Networking (联网) 下,从下拉列表中为 Studio 选择 Amazon Virtual Private Cloud (VPC)。

  7. Subnets (子网) 下,在您的 VPC 中选择最多五个子网以与 Studio 关联。创建 Studio 后,您可以选择添加更多子网。

  8. 对于 Security groups (安全组),选择默认安全组或自定义安全组。有关更多信息,请参阅定义安全组以控制 EMR Studio 网络流量

    如果选择... 请执行此操作...
    默认 EMR Studio 安全组

    要为 Studio 启用基于 Git 的存储库链接,请选择 Enable clusters/endpoints and Git repository (启用集群/终端节点和 Git 存储库)。否则,请选择 Enable clusters/endpoints (启用集群/终端节点)

    您 Studio 的自定义安全组
    • Cluster/endpoint security group (集群/端点安全组) 下,从下拉列表中选择您配置的引擎安全组。您的 Studio 使用此安全组来允许来自附加 Workspaces 的入站访问。

    • Workspace security group (Workspace 安全组) 下,从下拉列表中选择您配置的 Workspace 安全组。您的 Studio 使用此安全组和 Workspaces 来提供对附加 Amazon EMR 集群和公共托管 Git 存储库的出站访问。

  9. 身份验证中,为 Studio 选择身份验证模式并根据下表提供信息。要了解有关 EMR Studio 身份验证的更多信息,请参阅 为 Amazon EMR Studio 选择身份验证模式

    如果您使用... 请执行此操作...
    IAM 身份验证或联合身份验证

    选择 Studio 的登录方法。

    如果您希望联合身份用户使用 Studio URL 和您的身份提供商 (IdP) 的凭据登录,请从下拉列表中选择您的 IdP,然后输入您的身份提供商 (IdP) 登录 URL以及RelayState参数名称。

    有关 IdP 身份验证 URL 和 RelayState 名称的列表,请参阅 身份提供商 RelayState 参数和身份验证 URL

    然后,从下拉列表选择您的 EMR Studio 服务角色。有关更多信息,请参阅创建 EMR Studio 服务角色

    IAM Identity Center 身份验证 选择您的 EMR Studio服务角色用户角色。有关更多信息,请参阅 创建 EMR Studio 服务角色创建 IAM Identity Center 身份验证模式的 EMR Studio 用户角色
  10. Workspace storage(Workspace 存储)下,选择 Browse S3(浏览 S3),以选择用于备份 Workspace 和笔记本文件的 Amazon S3 存储桶。

    注意

    您的 EMR Studio 服务角色必须对您选择的存储桶具有读写访问权限。

  11. 选择 Create Studio (创建 Studio) 完成并导航到 Studio 页面。您的新 Studio 在列表中,其中包含 Studio name (Studio 名称)Creation date (日期创建)Studio access URL (Studio 访问 URL) 等详细信息。

创建 Studio 后,请按照将用户或组分配到 EMR Studio中的说明进行操作。

CLI
注意

为了便于读取,包含 Linux 行继续符 (\)。它们可以通过 Linux 命令删除或使用。对于 Windows,请将它们删除或替换为脱字号 (^)。

例 用于创建具有 IAM 身份验证模式的 EMR Studio 的 CLI 命令

下面的示例 AWS CLI 命令将创建使用 IAM 身份验证模式的 EMR Studio。当您为 Studio 使用 IAM 身份验证或联合身份验证时,您不需要指定 --user-role

要允许联合身份用户使用 Studio URL 和身份提供商 (IdP) 的凭据登录,请指定您的 --idp-auth-url--idp-relay-state-parameter-name。有关 IdP 身份验证 URL 和 RelayState 名称的列表,请参阅 身份提供商 RelayState 参数和身份验证 URL

aws emr create-studio \ --name <example-studio-name> \ --auth-mode IAM \ --vpc-id <example-vpc-id> \ --subnet-ids <subnet-id-1> <subnet-id-2>... <subnet-id-5> \ --service-role <example-studio-service-role-name> \ --workspace-security-group-id <example-workspace-sg-id> \ --engine-security-group-id <example-engine-sg-id> \ --default-s3-location <example-s3-location> \ --idp-auth-url <https://EXAMPLE/login/> \ --idp-relay-state-parameter-name <example-RelayState>

例 用于创建具有 IAM Identity Center 身份验证模式的 EMR Studio 的 CLI 命令

以下 AWS CLI 示例命令创建使用 IAM Identity Center 身份验证模式的 EMR Studio。当您使用 IAM Identity Center 身份验证时,则必须指定 --user-role

有关 IAM Identity Center 身份验证的更多信息,请参阅 为 Amazon EMR Studio 设置 IAM Identity Center 身份验证模式

aws emr create-studio \ --name <example-studio-name> \ --auth-mode SSO \ --vpc-id <example-vpc-id> \ --subnet-ids <subnet-id-1> <subnet-id-2>... <subnet-id-5> \ --service-role <example-studio-service-role-name> \ --user-role <example-studio-user-role-name> \ --workspace-security-group-id <example-workspace-sg-id> \ --engine-security-group-id <example-engine-sg-id> \ --default-s3-location <example-s3-location>

例 用于aws emr create-studio的 CLI 输出

以下是您创建 Studio 之后出现的输出示例。

{ StudioId: "es-123XXXXXXXXX", Url: "https://es-123XXXXXXXXX.emrstudio-prod.us-east-1.amazonaws.com" }

有关 create-studio 命令的更多信息,请参阅 AWS CLI 命令参考

身份提供商 RelayState 参数和身份验证 URL

当您使用 IAM 联合身份验证,并且希望用户使用您的 Studio URL 和身份提供商 (IdP) 的凭证登录时,您可以指定身份提供商 (IdP) 登录 URL 和当您创建 EMR Studio时的 RelayState 参数名称。

下表列出了一些常用身份提供商的标准身份验证 URL 和 RelayState 参数名称。

身份提供商 参数 身份验证 URL
Auth0 RelayState https://<sub_domain>.auth0.com/samlp/<app_id>
Google 账户 RelayState https://accounts.google.com/o/saml2/initsso?idpid=<idp_id>&spid=<sp_id>&forceauthn=false
Microsoft Azure RelayState https://myapps.microsoft.com/signin/<app_name>/<app_id>?tenantId=<tenant_id>
Okta RelayState https://<sub_domain>.okta.com/app/<app_name>/<app_id>/sso/saml
PingFederate TargetResource https://<host>/idp/<idp_id>/startSSO.ping?PartnerSpId=<sp_id>
PingOne TargetResource https://sso.connect.pingidentity.com/sso/sp/initsso?saasid=<app_id>&idpid=<idp_id>