本文讨论启用 GPU 的 Azure 容器实例部署失败的原因,并提供解决方案。
现象
尝试将启用了 GPU 的容器部署到Azure 容器实例(ACI)时,遇到以下症状:
看到以下错误消息:
服务不可用。 如果此问题仍然存在,请稍后重试或联系支持人员。
检查容器组的状态时,会看到 GPU ACI 预配状态为“失败”,错误代码为“ServiceUnavailable”。
查看容器组的日志时,会看到 GPU 驱动程序安装失败或超时。
原因 1:GPU 配额不足
订阅或区域没有足够的 GPU 配额来部署容器组。 GPU 配额受到限制,并受可用性限制。
解决方案 1:提高 GPU 配额
检查订阅和区域的 GPU 配额和可用性,并使用 Azure CLI 或Azure 门户请求增加 GPU 配额。
原因 2:不兼容的容器组配置
容器组配置与 GPU SKU 不兼容。 运行启用了 GPU 的容器需要特定的 CPU、内存和操作系统(OS)设置。
解决方案 2:更新容器组配置以匹配 GPU SKU
检查容器组配置,并确保它符合 GPU SKU 要求。 可以使用 Azure CLI 或Azure 门户重新创建或更新容器组配置。
检查要使用的 GPU SKU 的区域可用性。 并非所有区域都支持所有 GPU SKU。 下表显示了 Linux OS 的 GPU SKU 的当前区域可用性。
区域 | 操作系统 | 可用的 GPU SKU |
---|---|---|
美国东部 | Linux | V100 |
西欧 | Linux | V100 |
美国西部 2 | Linux | V100 |
东南亚 | Linux | V100 |
印度中部 | Linux | V100 |
如果区域不支持所需的 GPU SKU,则可以选择区域中可用的其他区域或 GPU SKU。
原因 3:安装了不正确的 GPU 驱动程序或工具包
容器映像未安装正确的 GPU 驱动程序或工具包。 启用了 GPU 的容器需要 NVIDIA 驱动程序和 CUDA 或 TensorRT 库才能访问 GPU 资源。
解决方案 3:安装 NVIDIA 容器工具包或使用Azure 机器学习基本映像
检查容器映像,并确保它已安装正确的 GPU 驱动程序和工具包。 可以安装 NVIDIA 容器工具包或使用Azure 机器学习基础映像来生成和运行已启用 GPU 的容器。
原因 4:未安装 NVIDIA 驱动程序或库
容器映像未安装 NVIDIA 驱动程序或库。 启用了 GPU 的容器需要 NVIDIA 驱动程序和 CUDA 或 TensorRT 库才能访问 GPU 资源。
解决方案 4:使用 NVIDIA GPU 云(NGC)存储库
检查容器映像并确保它已安装 NVIDIA 驱动程序和库。 可以使用 NVIDIA GPU Cloud (NGC) 存储库查找和拉取各种框架和应用程序的预生成 GPU 加速映像。
联系我们寻求帮助
如果你有任何疑问或需要帮助,请创建支持请求或联系 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区。