SageMaker创建Endpoint失败无对应CloudWatch日志问题咨询
SageMaker Endpoint健康检查失败且无CloudWatch日志的常见原因
1. IAM角色权限缺失
- 为Endpoint配置的SageMaker执行角色缺少CloudWatch日志写入权限,是无日志生成的最高发原因。
- 必须确保角色包含以下权限,且资源范围覆盖Endpoint日志路径:
logs:CreateLogGroup、logs:CreateLogStream、logs:PutLogEvents - 对应资源ARN格式为:
arn:aws:logs:*:*:log-group:/aws/sagemaker/Endpoints/*
2. 容器启动阶段提前崩溃
- 若使用自定义镜像,容器可能在加载SageMaker服务逻辑、初始化日志推送模块之前就已经崩溃退出,自然不会生成日志。常见触发场景包括:
- ENTRYPOINT/CMD配置错误,启动脚本存在语法错误
- 容器运行时缺少必要的系统依赖、Python包
- 启动进程直接抛出未捕获的异常退出
- 排查方法:本地拉取镜像启动,映射8080端口,手动执行
curl http://localhost:8080/ping验证健康检查接口是否能正常返回200状态码。
3. VPC网络配置限制
- 如果Endpoint配置了部署在自定义VPC内,网络不通会导致日志无法推送到CloudWatch:
- 私子网未配置NAT网关,也没有创建CloudWatch Logs的VPC端点,容器无法访问CloudWatch服务
- 安全组出站规则未放行443端口的CloudWatch访问请求
- 额外注意:如果VPC配置同时禁止了S3访问,容器无法拉取模型文件也会直接启动失败,进一步导致无日志生成。
4. 服务初始化超时
- SageMaker默认有容器启动健康检查窗口期,若模型体积过大、加载逻辑耗时超过了超时阈值,SageMaker会直接判定实例不健康并销毁实例,可能还没等到日志批量异步推送至CloudWatch,实例就已经被回收,所以看不到日志。
- 该场景可通过优化模型加载逻辑(如懒加载非核心依赖)、调整健康检查超时时间解决。
内容的提问来源于stack exchange,提问作者Nitika
相关产品推荐
相关产品推荐

