了解如何创建附加有 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 项目中的映像。
可以通过两种方式从management console中创建部署。
要创建部署,您可以在“创建部署”窗口中输入参数值,或将 YAML 文件粘贴到“创建资源”窗口中。
所需用户类型或访问级别:集群管理员或团队管理员
在开始之前,请确保节点已做好部署准备。有关更多信息,请参阅配置 GPU 工作程序节点。
IBM® Z (s390x) 节点不支持 GPU。
如果在具有 Linux® (x86_64)、Linux® on Power® (ppc64le) 和 IBM® Z (s390x) 节点的混合环境中运行 IBM Cloud Private,那么 nvidia-device-plugin DaemonSet 仅在 Linux® (x86_64) 和 Linux® on Power® (ppc64le) 集群节点上运行。
创建 gpu-demo.yaml 文件。这个样本 gpu-demo.yaml 文件将创建一个容器部署,其中包含所附加的单个 GPU 资源。
这个样本部署使用 nvidia/cuda:7.5-runtime 映像,后者是适用于 Linux® 系统的 nvidia-docker 映像。您可以从 nvidia/cuda Docker Hub 存储库获取此映像。对于 Power Systems,请使用 nvidia/cuda-ppc64le
Docker Hub 存储库中提供的其中一个
nvidia/cuda-ppc64le 映像。
apiVersion: apps/v1beta2
kind: Deployment
metadata:
name: gpu-demo
spec:
replicas: 1
selector:
matchLabels:
run: gpu-demo
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 文件,并将其粘贴到“创建资源”对话框。安装 kubectl 命令行界面。请参阅从 Kubernetes CLI (kubectl) 访问集群。
要查看运行中的容器列表,请运行此命令:
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 或副本数量。
单击部署名称即可查看有关部署的详细信息。查看部署属性,并确保它们准确无误。
要从因特网访问该部署,必须以服务形式将其公开。请参阅创建服务。