在使用GPU-HPN预留资源运行应用时,可以基于虚拟节点中的GPU属性标签,将应用调度至目标节点。本文介绍GPU-HPN虚拟节点属性标签基本信息,以及如何将应用部署和运行在指定卡型上。
前提条件
集群已关联GPU-HPN容量预留。
GPU属性标签说明
在ACS的GPU-HPN虚拟节点中,可以查看到以下标签。
标签名称 | 描述 |
标签名称 | 描述 |
alibabacloud.com/gpu-model-series | 虚拟节点的GPU卡型系列名称。 |
alibabacloud.com/node-series | 虚拟节点的预留资源类型。 |
alibabacloud.com/hpn-zone | 高速网络的可用区名称。 |
目前支持的GPU具体型号列表请提交工单咨询。
将业务提交到指定属性的虚拟节点上
您可使用K8s提供的Node Selector或Node Affinity能力,控制应用对GPU卡型属性调度的偏好。
以下为通过nodeSelector
方式将应用运行在指定卡型上。
使用以下YAML内容,创建tensorflow-mnist.yaml文件。
apiVersion: batch/v1 kind: Job metadata: name: tensorflow-mnist spec: parallelism: 1 template: metadata: labels: app: tensorflow-mnist spec: nodeSelector: alibabacloud.com/gpu-model-series: "gpu-example" # 使该应用运行在gpu-example的虚拟节点上,具体型号以集群中实际情况为准。 containers: - name: tensorflow-mnist image: registry.cn-beijing.aliyuncs.com/acs/tensorflow-mnist-sample:v1.5 command: - python - tensorflow-sample-code/tfjob/docker/mnist/main.py - --max_steps=1000 - --data_dir=tensorflow-sample-code/data resources: requests: cpu: 1 memory: 1 nvidia.com/gpu: 1 limits: cpu: 1 memory: 1 nvidia.com/gpu: 1 workingDir: /root restartPolicy: Never
执行以下命令,部署tensorflow-mnist应用。
kubectl apply -f tensorflow-mnist.yaml
执行以下命令,查看tensorflow-mnist应用对应Pod的运行情况
kubectl get pod -l app=tensorflow-mnist -o wide
预期输出:
NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES default tensorflow-mnist-xxx 0/2 Running 0 4h2m <none> cn-shanghai-b.cr-u4ub6c3un2mrjlct2l9c <none> <none>
预期Pod会运行在GPU型号为gpu-example的虚拟节点上。
该文章对您有帮助吗?
- 本页导读
- 前提条件
- GPU属性标签说明
- 将业务提交到指定属性的虚拟节点上