为 AWS Glue 设置开发网络
要使用 AWS Glue 运行您的提取、转换和加载 (ETL) 脚本,您可以使用开发端点开发和测试脚本。不支持将开发终端节点与 AWS Glue 版本 2.0 任务一起使用。对于版本 2.0 和更高版本,首选的开发方法是使用带有 AWS Glue 内核之一的 Jupyter Notebook。有关更多信息,请参阅 开始使用 AWS Glue 交互式会话。
针对开发终端节点设置您的网络
在设置开发终端节点时,您需要指定一个 Virtual Private Cloud (VPC)、子网和多个安全组。
注意
确保针对 AWS Glue 设置您的 DNS 环境。有关更多信息,请参阅 在 VPC 中设置 DNS。
要支持 AWS Glue 访问所需资源,请在您的子网路由表中添加一行,以将 Amazon S3 的前缀列表关联到 VPC 终端节点。前缀列表 ID 对于创建允许来自 VPC 的流量通过 VPC 终端节点访问 AWS 服务的出站安全组规则来说是必需的。为了轻松连接到与此开发终端节点关联的笔记本电脑服务器,请从您的本地计算机向路由表添加一行,以添加互联网网关 ID。有关更多信息,请参阅 VPC 端点。更新子网路由表,使之类似于下表:
目标位置 | 目标 |
---|---|
10.0.0.0/16 |
本地 |
适用于 Amazon S3 的 pl-id |
vpce-id |
0.0.0.0/0 |
igw-xxxx |
要支持 AWS Glue 在其组件之间通信,请为所有 TCP 端口指定一个具有自引用入站规则的安全组。通过创建自引用规则,您可以将源限制为 VPC 中的同一安全组,而不将其对所有网络开放。VPC 的默认安全组可能已经为所有流量设置了自引用入站规则。
设置安全组
登录 AWS Management Console,然后通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/
。 -
在左侧导航窗格中,选择 Security Groups (安全组)。
-
从列表中选择一个现有安全组,或 Create Security Group (创建安全组),以用于开发终端节点。
-
在安全组窗格中,导航到 Inbound (入站) 选项卡。
-
添加一个自引用规则,以允许 AWS Glue 组件进行通信。具体来讲,添加或确认有一条类型为
All TCP
的规则,协议为TCP
,端口范围包括所有端口,其源具有与组 ID相同的安全组名。入站规则类似于以下内容:
类型 协议 端口范围 来源 所有 TCP
TCP
0–65535
security-group
下面显示了一个自引用入站规则示例:
-
同时为出站流量添加一条规则。打开到所有端口的出站流量,或创建一条 Type (键入)
All TCP
的自引用规则,Protocol (协议) 为TCP
,Port Range (端口范围) 包括所有端口以及其 Source (源) 具有与 Group ID (组 ID) 相同的安全组名称。该出站规则类似于以下规则之一:
类型 协议 端口范围 目标位置 所有 TCP
TCP
0–65535
security-group
所有流量
ALL
ALL
0.0.0.0/0
针对笔记本电脑服务器设置 Amazon EC2
借助开发端点,您可以创建一个笔记本服务器,用于使用 Jupyter Notebook 测试您的 ETL 脚本。要启用与笔记本的通信,请指定一个包含适用于 HTTPS (端口 443) 和 SSH (端口 22) 的入站规则的安全组。确保该规则的源是 0.0.0.0/0 或连接笔记本的计算机的 IP 地址。
设置安全组
登录 AWS Management Console,然后通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/
。 -
在左侧导航窗格中,选择 Security Groups (安全组)。
-
从列表中选择一个现有安全组,或 Create Security Group (创建安全组),以用于笔记本服务器。与开发终端节点关联的安全组也可用于创建笔记本服务器。
-
在安全组窗格中,导航到 Inbound (入站) 选项卡。
-
添加类似于以下内容的入站规则:
类型 协议 端口范围 来源 SSH
TCP
22
0.0.0.0/0
HTTPS
TCP
443
0.0.0.0/0
下面显示了安全组的入站规则示例: