如何排查停用直接互联网访问的 Amazon SageMaker 笔记本电脑实例的网络连接问题?

上次更新日期:2022 年 11 月 18 日

我的 Amazon SageMaker 笔记本电脑实例位于 Amazon Virtual Private Cloud (Amazon VPC) 中,直接互联网访问已停用,我需要排查网络设置问题。

解决方法

SageMaker 笔记本实例可以配置为使用公共互联网或 Amazon VPC。使用 Amazon VPC 时,SageMaker 笔记本实例使用 VPC 来训练或部署模型,而不是公共互联网。

注意:创建 SageMaker 笔记本实例后,您无法更改网络配置设置。这仅适用于公共互联网VPC SageMaker 笔记本。如果您的 SageMaker 笔记本需要更改网络设置,则必须创建一个新的笔记本实例

当停用了直接互联网访问的笔记本实例处于 VPC 模式时,您无法从该实例上的笔记本训练或部署模型,除非:

  • 您的 VPC 有一个 NAT 网关。
  • 您的实例安全组允许出站连接。

如果您不希望来自笔记本的流量通过互联网,请使用 VPC 端点连接到 SageMaker APISageMaker Runtime 等服务。有关更多信息,请参阅通过 VPC 接口端点连接到 SageMaker

使用 NAT 网关从停用直接互联网的 Amazon VPC 中的笔记本实例激活互联网访问

作为先决条件,在与笔记本实例的 VPC 相同的区域中创建私有子网和公有子网:

1.    打开 Amazon VPC 控制台

2.    在导航窗格中,选择 NAT 网关

3.    选择创建 NAT 网关并执行以下操作:

  • (可选)指定 NAT 网关的名称。
  • 选择公有子网。
  • 对于 Elastic IP allocation ID(弹性 IP 分配 ID),将弹性 IP 与 NAT 网关关联。如果您没有弹性 IP 地址,则可以分配一个弹性 IP 地址

4.    选择创建 NAT 网关

5.    将 NAT 网关添加到私有子网的路由表中。

有关在 Amazon VPC 中使用 SageMaker 的更多信息,请参阅将 VPC 中的笔记本实例连接到外部资源

执行 NAT 网关故障排除检查

  • 验证您的 VPC 是否有与之关联的 NAT 网关。
  • 验证您的 VPC 和 NAT 网关是否在同一区域。
  • 验证您的 NAT 网关是否在公有子网内创建。
  • 验证 NAT 网关是否在私有子网的路由表中关联为目标。
  • 验证您的目的地是否允许入站和出站流量。
  • 验证您的 Amazon VPC 的安全组是否允许出站连接。

有关 NAT 网关的更多信息,请参阅 NAT 网关

使用 VPC 端点从停用直接互联网的笔记本实例激活对 AWS 服务的访问权限

  1. 打开 Amazon VPC 控制台
  2. 在导航窗格中,选择 Endpoints(端点)。
  3. 选择创建端点
  4. 对于服务类别,选择 AWS 服务
  5. 对于服务名称,选择服务。
  6. 对于 VPC,选择与您的 SageMaker 笔记本实例位于相同区域的 VPC。
  7. 选择与私有子网关联的路由表。
  8. 选择创建端点

有关 VPC 端点的更多信息,请参阅使用接口 VPC 端点访问 AWS 服务

执行 VPC 端点故障排除检查

  • 验证您的 Amazon VPC 是否有与您要连接的 AWS 服务关联的 VPC 端点。
  • 验证您的 Amazon VPC 与您要连接的 AWS 服务是否位于同一区域。
  • 验证 VPC 端点是否与私有子网路由表相关联。