创建附加有 GPU 资源的部署
了解如何创建附加有 GPU 资源的容器。
- 有关 IBM® Cloud Private 中的 Nvidia GPU 支持的概述,请参阅 Nvidia GPU 支持。
-
确保在工作程序节点上安装 GPU 驱动程序。 您可使用
kubectl describe nodes命令来指示nvidia.com/gpu正在使用 GPU 资源。 IBM Cloud Private 为 nvidia-docker项目中的映像提供了内置 GPU 支持。 要指定 GPU 资源,您的部署必须指定
nvidia-docker项目中的映像。 -
对于 Linux® on Power® (ppc64le) 节点,请使用 nvidia/cuda-ppc64le
Docker Hub 存储库中的映像或根据内容派生的映像。
- 对于 Linux® x86_64 节点,请使用 nvidia/cuda
Docker Hub 存储库中的映像或根据内容派生的映像。
可以通过两种方式从management console中创建部署。
要创建部署,您可以在“创建部署”窗口中输入参数值,或将 YAML 文件粘贴到“创建资源”窗口中。
所需用户类型或访问级别:集群管理员或团队管理员
在开始之前,请确保节点已做好部署准备。 有关更多信息,请参阅配置 GPU 工作程序节点。
已知问题和限制
IBM® Z (s390x) 节点不支持 GPU。
如果在具有 Linux® x86_64 (x86_64)、Linux® on Power® (ppc64le) 和 IBM® Z(s390x)节点的混合环境中运行 IBM Cloud Private,那么 nvidia-device-pluginDaemonSet 仅在 Linux® x86_64 (x86_64) 和 Linux® on Power® (ppc64le) 集群节点上运行。
使用“创建部署”窗口创建附加有 GPU 资源的部署
- 从导航菜单中,单击工作负载 > 部署 > 创建部署。
- 从容器设置选项卡中,指定要为该部署请求的 GPU 数量。 请确保此值为正整数。
- 输入该部署所需的所有其他参数选项。
- 单击创建。
使用“创建资源”窗口创建部署
-
创建
gpu-demo.yaml文件。 这个样本gpu-demo.yaml文件将创建一个容器部署,其中包含所附加的单个 GPU 资源。这个样本部署使用
nvidia/cuda:7.5-runtime映像,后者是适用于 Linux® x86_64 系统的nvidia-docker映像。 您可以从 nvidia/cudaDocker Hub 存储库获取此映像。 对于 Power Systems,请使用 nvidia/cuda-ppc64le
Docker Hub 存储库中提供的其中一个
nvidia/cuda-ppc64le映像。apiVersion: apps/v1beta2 kind: Deployment metadata: name: gpu-demo spec: replicas: 1 template: metadata: labels: run: gpu-demo spec: containers: - name: gpu-demo image: nvidia/cuda:7.5-runtime command: - "/bin/sh" - "-c" args: - nvidia-smi && tail -f /dev/null resources: limits: nvidia.com/gpu: 1
- 从仪表板中,单击创建资源。
- 复制
gpu-demo.yaml文件,并将其粘贴到“创建资源”对话框。 - 单击创建。
检查是否可以在容器内检测到该 GPU 资源
-
安装
kubectl命令行界面。 请参阅从 kubectl CLI 访问集群。 -
要查看运行中的容器列表,请运行此命令:
kubectl get pods从返回的输出中,您可以找到
gpu-demo部署。 -
访问
gpu-demo部署日志。 例如,kubectl logs gpu-demo-3638364752-zkqel输出类似于以下代码:
Tue Feb 7 08:38:11 2017 +------------------------------------------------------+ | NVIDIA-SMI 352.63 Driver Version: 352.63 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 GeForce GT 730 Off | 0000:01:00.0 N/A | N/A | | 36% 41C P8 N/A / N/A | 4MiB / 1023MiB | N/A Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | 0 Not Supported | +-----------------------------------------------------------------------------+
部署完成后,新部署将显示在“部署”页面中。 DESIRED、CURRENT、READY 和 AVAILABLE 列全部显示相同的值,即您在部署过程中指定的 Pod 或副本数量。
单击部署名称即可查看有关部署的详细信息。 查看部署属性,并确保它们准确无误。
要从因特网访问该部署,必须以服务形式将其公开。请参阅创建服务。