更新时间:2024-10-30 GMT+08:00

服务启动失败

问题现象

当服务事件中出现如下事件时,表示容器启动失败。

图1 服务启动失败

AI应用本身问题,无法启动

如果创建AI应用使用的镜像本身有问题,需要在创建AI应用之前,参考从0-1制作自定义镜像并创建AI应用,确保镜像可以正常启动,并可以在本地curl通返回预期内容。

镜像中配置的端口错误

AI应用可以正常启动,但是因为镜像中启用的端口非8080,或者镜像启用的端口与创建AI应用时配置的端口不一致,导致部署服务时register-agent无法与AI应用通信,超过一定时间后(最长20分钟)认为AI应用启动失败。

需要检查两个地方:自定义镜像中的代码开放的端口和创建AI应用界面上配置的端口。确认两处端口保持一致。AI应用创建界面如果不填端口信息,则ModelArts会默认监听8080端口,即镜像代码中启用的端口必须是8080。
图2 自定义镜像中的代码开放的端口
图3 创建AI应用界面上配置的端口

健康检查配置有问题

镜像如果配置了健康检查,服务启动失败,从以下两个方面进行排查:

  • 健康检查端口是否可以正常工作

    自定义镜像中配置了健康检查,需要在测试镜像时,同步测试健康检查接口是否可以正常工作,具体参考从0-1制作自定义镜像并创建AI应用中的本地验证镜像方法。

  • 创建AI应用界面上配置的健康检查地址与实际配置的是否一致

    如果使用的是ModelArts提供的基础镜像创建AI应用,健康检查URL默认必须为/health。

    图4 设置健康检查URL

模型推理代码customize_service.py编写有问题

如果模型推理代码customize_service.py编写有误,可以通过查看服务运行日志,定位具体原因进行修复。

拉取镜像失败

服务启动失败,提示拉取镜像失败,请参考服务部署、启动、升级和修改时,拉取镜像失败如何处理?

资源不足,服务调度失败

服务启动失败,提示资源不足,服务调度失败,请参考服务部署、启动、升级和修改时,资源不足如何处理?

内存不足

服务启动失败,提示内存不足,请参考内存不足如何处理?