创建任务yaml
操作步骤
- 请从集群调度组件MindXDL-deploy中“3.0.0”分支下载yaml文件。
- 将yaml文件上传至管理节点任意目录,并根据实际情况修改文件内容。
表2 yaml文件参数说明 参数
取值
说明
image
-
推理镜像名称,请根据实际修改。
replicas
整数
运行的任务副本数量。通常情况一般为1
requests
Atlas 200/300/500 推理产品环境:huawei.com/Ascend310: 芯片数量
Atlas 推理系列产品:huawei.com/Ascend310P: 芯片数量
如:huawei.com/Ascend310: 1
请求的NPU类型、数量,请根据实际修改。requests和limits下,芯片的名字和数量需保持一致。
limits
host-arch
ARM环境:huawei-arm
X86环境:huawei-x86
需要运行推理任务的节点架构,请根据实际修改。Atlas 200I Soc A1 核心板节点仅支持huawei-arm。
servertype
soc
服务器类型。
- 调度到Atlas 200I Soc A1 核心板节点上,必须要加上此配置,并参考“infer-310p-1usoc.yaml”文件进行目录挂载。
- 其他类型节点不需要此参数。
以“infer-310p-1usoc.yaml”为例,参数配置示例如下。
apiVersion: batch/v1 kind: Job metadata: name: resnetinfer1-1-1usoc spec: ... nodeSelector: host-arch: huawei-arm servertype: soc containers: - image: ubuntu-infer:v1 ... resources: requests: huawei.com/Ascend310P: 1 limits: huawei.com/Ascend310P: 1 ...
- 因为Atlas 200I Soc A1 核心板节点需要挂载的目录和文件与其他类型节点不一致,为了避免推理失败,如果需要使用Atlas 推理系列产品,且集群中有Atlas 200I Soc A1 核心板节点但是不希望调度到这类节点上,请在示例的yaml中增加“affinity”字段,表示不调度到有“servertype=soc”标签的节点上。
- 以“infer.yaml”为例,Job类型的任务yaml示例如下:
apiVersion: batch/v1 kind: Job metadata: name: resnetinfer1-1 spec: template: spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: servertype operator: NotIn values: - soc nodeSelector: host-arch: huawei-arm ...
- 以“infer-deployment.yaml”为例,Deployment类型的任务yaml示例如下:
apiVersion: apps/v1 kind: Deployment ... spec: template: metadata: labels: app: infers ... spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: servertype operator: NotIn values: - soc schedulerName: volcano nodeSelector: host-arch: huawei-arm ...
- 以“infer.yaml”为例,Job类型的任务yaml示例如下:
父主题: 推理任务