You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VPC环境下AWS SageMaker从S3读取数据出现名称解析错误如何解决

可行解决方案

该报错本质为VPC环境内的SageMaker Notebook实例无法正常解析S3服务的域名,可按以下优先级尝试修复:

  • 方案1:为VPC配置S3网关端点(推荐)

    该方案可实现S3的内网访问,无需消耗公网带宽,合规性更高:

    • 进入AWS VPC控制台,定位到SageMaker实例所在的VPC
    • 左侧菜单选择「端点」→「创建端点」,服务类别选择AWS服务,搜索并选择com.amazonaws.<你的资源所在区域>.s3(类型为Gateway)
    • 关联SageMaker实例所在子网对应的路由表,配置完成后路由表会自动添加S3服务网段的内网路由
    • 确认S3网关端点的访问策略允许目标存储桶的访问,同时SageMaker实例的执行角色具备对应S3资源的读写权限
  • 方案2:为VPC配置公网出口

    若允许走公网访问S3,可通过以下方式配置公网访问能力:

    • 若SageMaker实例部署在公有子网,可为子网配置互联网网关(IGW),并在子网路由表中添加0.0.0.0/0指向IGW的路由规则
    • 若SageMaker实例部署在私有子网,可在同VPC的公有子网部署NAT网关,并在私有子网的路由表中添加0.0.0.0/0指向NAT网关的路由规则
    • 确认VPC关联的安全组、网络ACL允许出方向的443端口公网访问
  • 方案3:代码中显式指定S3区域级端点

    部分场景下默认的S3全局域名解析异常,可在初始化S3客户端时显式指定区域级域名:
    以boto3为例,修改客户端初始化逻辑:

    import boto3
    # 替换<>内容为你的资源实际所在区域,例如东京区为ap-northeast-1
    s3_client = boto3.client('s3', endpoint_url='https://s3.<你的区域>.amazonaws.com')
    
  • 方案4:连通性排查验证

    可在SageMaker Notebook的终端中执行以下命令缩小问题范围:

    • 执行nslookup my-bucket.s3.amazonaws.com验证域名解析是否正常
    • 执行curl https://my-bucket.s3.amazonaws.com/<测试文件路径>验证S3资源是否可正常访问

内容的提问来源于stack exchange,提问作者tall_table

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 19:39:01