本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置联网
本节提供有关管理员如何配置其网络以允许 Studio 或 Studio Classic 与 Amazon EMR 集群之间进行通信的信息。
根据 Studio 和 Amazon EMR 是部署在私有亚马逊虚拟私有云 (VPC) 中还是通过互联网进行通信,联网说明会有所不同。
默认情况下,Studio 或 Studio Classic 在可访问互联网VPC的 AWS 托管环境中运行。使用互联网连接时,Studio 和 Studio Classic 会通过互联网访问 AWS 资源,例如 Amazon S3 存储桶。但是,如果您有控制数据和任务容器访问权限的安全要求,我们建议您配置 Studio 或 Studio Classic 和 Amazon,EMR这样您的数据和容器就无法通过互联网访问。要控制对资源的访问或在没有公共互联网访问的情况下运行 Studio 或 Studio Classic,您可以在 SageMaker 注册亚马逊域时指定VPC only
网络访问类型。在这种情况下,Studio 和 Studio Classic 都通过私有VPC端点与其他 AWS 服务建立连接。有关在VPC only
模式下配置 Studio 或 Studio Classic 的信息,请参阅 a VPC 中的 Connect SageMaker Studio 或 Studio Classic 笔记本电脑 。
前两节介绍如何在VPCs没有公共互联网接入的情况下确保 Studio 或 Studio Classic 与 Amazon EMR 集群之间的通信。最后一节介绍如何EMR使用互联网连接确保 Studio 或 Studio Classic 与 Amazon 之间的通信。在EMR没有互联网访问权限的情况下连接 Studio 或 Studio Classic 和亚马逊之前,请务必为亚马逊简单存储服务(数据存储)、亚马逊 CloudWatch (记录和监控)和亚马逊 SageMaker 运行时(基于角色的细粒度访问控制 (RBAC))建立终端节点。
要连接 Studio 或 Studio Classic 和您的亚马逊EMR集群,
-
如果 Studio 或 Studio Classic 和 Amazon EMR 是分开的VPCs,无论是在同一个 AWS 账户中还是在不同的账户中,请参阅 Studio 和 Amazon EMR 是分开的 VPCs。
-
如果 Studio 或 Studio Classic 与 Amazon EMR 相同VPC,请参阅Studio 和 Amazon EMR 合而为一 VPC。
-
如果您选择通过公共互联网连接 Studio 或 Studio Classic 和 AmazonEMR,请参阅Studio 和 Amazon 通过公共互联网EMR进行通信。
Studio 和 Amazon EMR 是分开的 VPCs
要让 Studio 或 Studio Classic 与 Amazon 在单独部署EMR时进行通信,请执行VPCs以下操作:
-
首先VPCs通过对等连接与您VPC建立连接。
-
更新每个子网中的路由表,在 Studio 或 Studio Classic 子网和 Amazon EMR 子网之间双VPC向路由网络流量。
-
配置安全组以允许入站和出站流量。
无论资源部署在单个 AWS 账户(单账户用例)中,还是跨多个 AWS 账户(跨账户用例)部署,连接 Studio 或 Studio Classic 和 Amazon EMR 的步骤都是一样的。
-
VPC凝视
创建VPC对等连接以促进两者VPCs(Studio 或 Studio Classic 和 AmazonEMR)之间的联网。
-
在您的 Studio 或 Studio Classic 帐户中,在VPC控制面板上选择对等连接,然后选择创建对等连接。
-
创建您的请求,让 Studio 或 Studio Classic VPC 与 Amazon 同行EMRVPC。请求与其他 AWS 账户建立对等关系时,请在 “选择其他要与之建立对等关系的账户” 中选择 “其他VPC账户”。
要进行跨账户对等互连,管理员必须接受来自亚马逊EMR账户的请求。
对等私有子网时,应在对等连接级别启用私有 IP DNS 解析VPC。
-
-
路由表
在 Studio 或 Studio Classic 子网和 Amazon EMR 子网之间双向发送网络流量。
建立对等连接后,管理员(使用每个账户进行跨账户访问)可以向私有子网路由表添加路由,以便在 Studio 或 Studio Classic 与集群子网之间路由流量。您可以通过转到VPC仪表板VPC中每条路由的 “路由表” 部分来定义这些路由。
下图 Studio VPC 子网的路由表说明了通过对等连接从 Studio 账户到 Amazon EMR VPC IP 范围(此处
2.0.1.0/24
)的出站路由示例。下图显示了亚马逊EMRVPC子网的路由表,显示了通过对等连接从 Amazon EMR VPC 到 Studio VPC IP 范围(此处
10.0.20.0/24
)返回路由的示例。 -
安全组
最后,您的 Studio 或 Studio Classic 域的安全组必须允许出站流量,亚马逊EMR主节点的安全组必须允许来自 Studio 或 Studio Classic 实例安全组的 Apache Livy、H ive 或 Prest o TCP 端口(分别为
8998
10000
、和8889
)的入站流量。Apache Livy是一项支持通过接口与亚马逊EMR进行交互的REST服务。
下图显示了亚马逊VPC设置的示例,该设置允许 JupyterLab或 Studio Classic 笔记本电脑通过服务目录中的 AWS CloudFormation 模板配置亚马逊集EMR群,然后连接到同一 AWS 账户中的亚马逊EMR集群。该图进一步说明了在无法访问互联网时直接连接到各种 AWS 服务(例如 Amazon S3 或 Amazon CloudWatch)所需的终端节点。VPCs或者,必须使用NAT网关来允许多个VPCs私有子网中的实例在访问互联网时共享互联网网关提供的单个公有 IP 地址。
![Amazon VPC 设置架构示例。](images/studio/emr/studio-notebooks-emr-architecture-singleaccount-vpcendpoints.png)
Studio 和 Amazon EMR 合而为一 VPC
如果 Studio 或 Studio Classic 和 Amazon EMR 集群位于不同的子网中,请向每个私有子网路由表添加路由,以便在 Studio 或 Studio Classic 与集群子网之间路由流量。您可以通过转到VPC仪表板VPC中每条路由的 “路由表” 部分来定义这些路由。如果您将 Studio 或 Studio Classic VPC 和 Amazon EMR 集群部署在同一个子网中,则无需在 Studio 或 Studio Classic 与集群之间路由流量。
无论您是否需要更新路由表,Studio 或 Studio Classic 域的安全组都必须允许出站流量,亚马逊EMR主节点的安全组必须允许来自 Studio 或 Studio Classic 实例安全组的 Apache Livy、H ive 或 Prest o TCP 端口(分别为8998
10000
、和8889
)的入站流量。Apache Livy
Studio 和 Amazon 通过公共互联网EMR进行通信
默认情况下,Studio 和 Studio Classic 提供网络接口,允许通过与 SageMaker 域VPC关联的互联网网关与互联网进行通信。如果您选择EMR通过公共互联网连接到亚马逊,则您的亚马逊EMR集群需要接受来自其互联网网关的 A pache Livy、Hiv e 或 Prest o TCP 端口(分别为8998
10000
、和8889
)的入站流量。Apache Livy
请记住,您允许入站流量通过的任何端口,都代表着潜在的安全漏洞。请仔细检查自定义安全组,以确保您最大限度地减少漏洞。有关更多信息,请参阅使用安全组控制网络流量。
或者,博客和白皮书有关如何在 Amazon 上启用 Kerberos EMR、在私有子网中设置集群以及如何使用 Network Load Balancer (NLB) 访问集群的详细演练,以仅公开特定端口,这些端口通过安全组进行访问控制。
注意
通过公共互联网连接到 Apache Livy 终端节点时,我们建议您使用保护 Studio 或 Studio Classic 与您的亚马逊EMR集群之间的通信安全。TLS
有关使用 Apache Livy HTTPS 进行设置的信息,请参阅使用 Apache Livy 启HTTPS用。有关设置启用传输加密的 Amazon EMR 集群的信息,请参阅提供证书,以便使用 Amazon 加密对传输中的数据进行EMR加密。此外,您需要将 Studio 或 Studio Classic 配置为访问您的证书密钥,如中所述通过 Connect 连接到亚马逊EMR集群 HTTPS。