我为我的 Amazon SageMaker 容器开启了网络隔离。我想知道容器如何访问 Amazon Simple Storage Service (Amazon S3) 数据并将日志推送到 Amazon CloudWatch。
解决方法
当您开启网络隔离时,SageMaker 会在隔离训练或推理容器的情况下访问 Amazon S3 和 CloudWatch。如果您未指定 Amazon Virtual Private Cloud (Amazon VPC),则数据访问和日志记录将在服务器端进行。在这种情况下,容器无法访问网络。
当您在训练、处理或模型配置中指定 VpcConfig 时,SageMaker 会在指定的 Amazon VPC 中创建两个弹性网络接口。所有流量都会流经指定的 VPC 中的这两个弹性网络接口。一个弹性网络接口用于算法容器,另一个用于 Amazon S3。如果您在 VpcConfig 中指定 Amazon VPC,则网络隔离设置不会为算法容器创建弹性网络接口。这会阻止容器进行所有出站网络调用。另一个弹性网络接口仍然存在,您可以将其用于访问 Amazon S3。
在这两种情况下,在节点上运行的内部 SageMaker 进程都会下载数据。然后,您在作业定义中指定的输入通道会将这些数据提供给算法容器。此外,在节点上运行的内部进程会使日志和指标可供 CloudWatch 使用。这些节点通过 SageMaker 托管的 VPC 连接到 CloudWatch。
无论您是否指定 VpcConfig,容器都无法访问任何 AWS 凭证来对 AWS 服务进行 API 调用。
相关信息
网络隔离