Ascend Device Plugin安装部署后,默认会上报“servertype”字段,但是若该字段已存在,则不会再次更新。用户如果服务器上插拔的NPU设备变更,需要手动删除该字段后再重新部署Ascend Device Plugin。执行kubectl label node nodeName servertype-命令删除“servertype”字段。
docker images | grep k8sdeviceplugin
示例如下:
root@ubuntu:~# docker images|grep k8sdeviceplugin ascend-k8sdeviceplugin v5.0.RC1 29eec79eb693 About an hour ago 105MB
yaml文件列表 |
说明 |
---|---|
device-plugin-310-v{version}.yaml |
Atlas 200/300/500 推理产品上不使用Volcano的配置文件。 |
device-plugin-310P-v{version}.yaml |
Atlas 推理系列产品不使用Volcano的配置文件。 |
device-plugin-910-v{version}.yaml |
Atlas 训练系列产品上不使用Volcano的配置文件。 |
device-plugin-310P-1usoc-v{version}.yaml |
Atlas 200I SoC A1 核心板上不使用Volcano的配置文件。 |
device-plugin-volcano-v{version}.yaml |
使用Volcano的配置文件。 |
device-plugin-310-volcano-v{version}.yaml |
Atlas 200/300/500 推理产品上使用Volcano的配置文件。 |
device-plugin-310P-volcano-v{version}.yaml |
Atlas 推理系列产品上使用Volcano的配置文件。 |
device-plugin-310P-1usoc-volcano-v{version}.yaml |
Atlas 200I SoC A1 核心板上使用Volcano的配置文件。 |
kubectl apply -f device-plugin-310-v{version}.yaml
kubectl apply -f device-plugin-310P-v{version}.yaml
kubectl apply -f device-plugin-910-v{version}.yaml
kubectl apply -f device-plugin-310-volcano-v{version}.yaml
kubectl apply -f device-plugin-310P-volcano-v{version}.yaml
kubectl apply -f device-plugin-volcano-v{version}.yaml
kubectl apply -f device-plugin-310P-1usoc-volcano-v{version}.yaml
kubectl apply -f device-plugin-310P-1usoc-v{version}.yaml
如果K8s集群使用了多种类型的昇腾AI处理器,请分别执行对应命令。
启动示例如下,出现Running表示组件启动成功:
root@ubuntu:/home/ascend-device-plugin# kubectl apply -f device-plugin-volcano-v5.0.RC1.yaml serviceaccount/ascend-device-plugin-sa created clusterrole.rbac.authorization.K8s.io/pods-node-ascend-device-plugin-role created clusterrolebinding.rbac.authorization.K8s.io/pods-node-ascend-device-plugin-rolebinding created daemonset.apps/ascend-device-plugin-daemonset created root@ubuntu:/home/ascend-device-plugin# kubectl get pod -n kube-system NAME READY STATUS RESTARTS AGE ... ascend-device-plugin-daemonset-d5ctz 1/1 Running 0 11s ...
参数 |
类型 |
默认值 |
说明 |
---|---|---|---|
-mode |
string |
无 |
指定Ascend Device Plugin运行模式,不指定该参数会根据NPU芯片类型自动指定。自动获取运行模式时,如果没查询到以下模式中的任意一种,则插件启动失败。
说明:
MindX 5.0.RC1只支持自动获取运行模式,不接受指定,如果获取失败,则插件启动失败。 |
-fdFlag |
bool |
false |
边缘场景标志,是否使用FusionDirector系统来管理设备。 |
-edgeLogFile |
string |
/var/alog/AtlasEdge_log/devicePlugin.log |
边缘场景日志文件。fdFlag设置为true时生效。
说明:
单个日志文件超过20 MB时会触发自动转储功能,文件大小上限不支持修改。 |
-useAscendDocker |
bool |
true |
默认为true,容器引擎是否使用Ascend Docker Runtime。开启K8s的CPU绑核功能时,需要卸载Ascend Docker Runtime并重启容器引擎。
说明:
MindX 5.0.RC1只支持自动获取运行模式,不接受指定。 |
-use310PMixedInsert |
bool |
false |
是否使用Atlas 推理系列产品混插模式。
说明:
|
-volcanoType |
bool |
false |
是否使用Volcano进行调度。 |
-presetVirtualDevice |
bool |
true |
静态虚拟化实例功能开关,目前支持Atlas 训练系列产品 和Atlas 推理系列产品。且值只能为true。 |
-version |
bool |
false |
查看当前device-plugin的版本号。 |
-listWatchPeriod |
int |
5 |
设置健康状态检查周期,取值范围为[3,60],单位为秒。 |
-autoStowing |
bool |
true |
是否自动纳管已修复设备,volcanoType为true时生效。
说明:
设备故障后,会自动从K8s里面隔离。如果设备恢复正常,默认会自动加入K8s集群资源池。如果设备不稳定,可以设置为false,此时需要手动纳管。
|
-logLevel |
int |
0 |
日志级别:
|
-maxAge |
int |
7 |
日志备份时间限制,取值范围为[7, 700],单位为天。 |
-logFile |
string |
/var/log/mindx-dl/devicePlugin/devicePlugin.log |
非边缘场景日志文件。fdFlag设置为false时生效。
说明:
单个日志文件超过20 MB时会触发自动转储功能,文件大小上限不支持修改。 |
-hotReset |
int |
-1 |
设备复位功能参数。开启此功能,芯片发生故障后,会进行热复位操作,让芯片恢复健康。
该参数支持的推理设备:
|
-maxBackups |
int |
30 |
转储后日志文件保留个数上限,取值范围为(0,30],单位为个。 |
-h或者-help |
无 |
不涉及 |
显示帮助信息。 |