卸载
- 卸载Ascend Docker Runtime组件,请参见卸载Ascend Docker Runtime进行操作。
- 卸载NPU Exporter、Ascend Device Plugin、Volcano、ClusterD、Ascend Operator、NodeD和Resilience Controller,请参见卸载除Ascend Docker Runtime外的其他组件。
卸载Ascend Docker Runtime
- 情况一:使用不同安装路径。
用户在卸载Ascend Docker Runtime时需要针对不同容器引擎,根据步骤2进行两次卸载操作,每次卸载需要指定相应的安装路径,即--install-path参数。
- 情况二:使用相同安装路径。
用户在卸载Ascend Docker Runtime时,只需根据步骤2进行一次卸载操作,卸载完成之后需要手动将另一引擎的daemon.json文件还原为Ascend Docker Runtime安装之前的内容。
若用户需要保留其中一个容器引擎,需要在Ascend Docker Runtime卸载之后,针对相应场景进行重新安装。
- (可选)关闭pingmesh灵衢网络检测。
- 登录环境,进入NodeD解压目录。
- 执行以下命令编辑pingmesh-config文件。
kubectl edit cm -n cluster-system pingmesh-config
- 修改activate字段的取值。
- 如果超节点ID在pingmesh-config文件中,修改该超节点ID字段下的activate为off。
- 如果超节点ID不在pingmesh-config文件中,可通过以下2种方式进行设置。
- 在配置文件中新增该超节点信息,并将activate为off。
- 删除pingmesh-config文件中所有超节点的信息,并将global配置中activate字段的值设置为off。
- 可以选择以下方式中的一种卸载Ascend Docker Runtime软件。
- 方式一:(推荐)使用软件包卸载
- 首先进入安装包(run包)所在路径。
cd <path to run package>
- 执行以下卸载命令,在默认安装路径下卸载Ascend Docker Runtime。
- Docker场景(或K8s集成Docker场景)
./Ascend-docker-runtime_{version}_linux-{arch}.run --uninstall
- Containerd场景(或K8s集成Containerd场景)
./Ascend-docker-runtime_{version}_linux-{arch}.run --uninstall --install-scene=containerd
- Docker配置文件路径不是默认的“/etc/docker/daemon.json”时,需要新增“--config-file-path”参数,用于指定该配置文件路径。
- Containerd的配置文件路径不是默认的“/etc/containerd/config.toml”时,需要新增“--config-file-path”参数,用于指定该配置文件路径。
- 如需要卸载指定安装路径下的Ascend Docker Runtime,需要在卸载命令中新增“--install-path=<path>”参数。
回显示例如下,表示卸载成功。1 2 3
Uncompressing ascend-docker-runtime 100% ... [INFO] Ascend Docker Runtime uninstall success
- Docker场景(或K8s集成Docker场景)
- 首先进入安装包(run包)所在路径。
- 方式二:使用脚本卸载
- 首先进入Ascend Docker Runtime的安装路径下的“script”目录(默认安装路径为:“/usr/local/Ascend/Ascend-Docker-Runtime”):
cd /usr/local/Ascend/Ascend-Docker-Runtime/script
- 运行卸载的脚本进行卸载。
- Docker场景(或K8s集成Docker场景)
uninstall.sh docker docker <daemon.json文件路径>
- Containerd场景(或K8s集成Containerd场景)
uninstall.sh containerd containerd <config.toml文件路径>
- 可以不指定Docker的配置文件daemon.json路径,不指定时默认使用“/etc/docker/daemon.json”。
- 可以不指定Containerd的配置文件config.toml路径,不指定时默认使用“/etc/containerd/config.toml”。
- Docker场景(或K8s集成Docker场景)
回显示例如下,表示卸载成功。
1 2 3
[INFO]: You will recover Docker's daemon ... [INFO] uninstall.sh exec success
- 首先进入Ascend Docker Runtime的安装路径下的“script”目录(默认安装路径为:“/usr/local/Ascend/Ascend-Docker-Runtime”):
- 方式一:(推荐)使用软件包卸载
- (可选)仅K8s集成的Containerd场景如果需要还原修改的kubeadm-flags.env,请参见该场景的安装步骤6,还原配置文件kubeadm-flags.env。其他场景可跳过该步骤。
- 重启服务。
- Docker场景(或K8s集成Docker场景)
systemctl daemon-reload && systemctl restart docker
- Containerd场景(或K8s集成Containerd场景)
systemctl daemon-reload && systemctl restart containerd
- Docker场景(或K8s集成Docker场景)
卸载除Ascend Docker Runtime外的其他组件
支持卸载集群调度组件,用户可以卸载组件后重新安装最新版本组件。通过逐一卸载各组件,并删除对应的命名空间、日志目录、配置文件等,请根据安装方式选择对应的卸载方式。
- (可选)关闭pingmesh灵衢网络检测。
- 登录环境,进入NodeD解压目录。
- 执行以下命令编辑pingmesh-config文件。
kubectl edit cm -n cluster-system pingmesh-config
- 修改activate字段的取值。
- 如果超节点ID在pingmesh-config文件中,修改该超节点ID字段下的activate为off。
- 如果超节点ID不在pingmesh-config文件中,可通过以下2种方式进行设置。
- 在配置文件中新增该超节点信息,并将activate为off。
- 删除pingmesh-config文件中所有超节点的信息,并将global配置中activate字段的值设置为off。
- 卸载组件。根据组件的安装方式,选择以下对应的卸载方式。
- 通过容器方式卸载。各组件卸载方法类似,均为进入该组件配置文件YAML所在目录,并执行删除操作实现,此操作需要在K8s的管理节点操作。以卸载Ascend Device Plugin为例说明,请用户自行完成其余组件卸载。
- 以root用户登录管理节点。
- 进入Ascend Device PluginYAML配置文件所在目录(如:“/home/ascend-device-plugin”)。
cd /home/ascend-device-plugin
- 在Ascend Device Plugin组件安装环境下,执行以下命令,卸载Ascend Device Plugin。
kubectl delete -f device-plugin-volcano-v{version}.yaml
回显示例如下:1 2 3 4
serviceaccount "ascend-device-plugin-sa-910" deleted clusterrole.rbac.authorization.k8s.io "pods-node-ascend-device-plugin-role-910" deleted clusterrolebinding.rbac.authorization.k8s.io "pods-node-ascend-device-plugin-rolebinding-910" deleted deployment.apps "ascend-device-plugin-daemonset-910" deleted
Ascend Device Plugin配合Volcano使用时,会创建ConfigMap,执行如下命令进行删除。
kubectl delete cm mindx-dl-deviceinfo-<node-name> -n kube-system
- 通过二进制方式卸载。以卸载NPU Exporter为例说明,请用户自行完成其余组件卸载。
- 以root用户登录组件部署的节点。
- 在NPU Exporter组件安装环境下,依次执行如下命令卸载NPU Exporter组件。
systemctl stop npu-exporter.service systemctl disable npu-exporter.service chattr -i /etc/systemd/system/npu-exporter.service rm -f /etc/systemd/system/npu-exporter.service systemctl daemon-reload systemctl reset-failed chattr -i /usr/local/bin/npu-exporter rm -f /usr/local/bin/npu-exporter
- 通过容器方式卸载。各组件卸载方法类似,均为进入该组件配置文件YAML所在目录,并执行删除操作实现,此操作需要在K8s的管理节点操作。以卸载Ascend Device Plugin为例说明,请用户自行完成其余组件卸载。
- 删除命名空间。NPU Exporter的命名空间npu-exporter和Volcano的命名空间volcano-system在卸载组件时就已经同步删除,用户可以跳过本步骤。
执行如下命令,卸载安装集群调度组件时创建的namespace。删除namespace会删除该namespace下的所有资源,请确认后再执行。
kubectl delete ns mindx-dl
回显示例如下:1
namespace "mindx-dl" deleted
- 删除日志文件。参考创建日志目录章节,在对应节点上删除集群调度组件的日志目录。以ClusterD为例,请确认后再删除。
rm -rf /var/log/mindx-dl/clusterd
- (可选)卸载Resilience Controller时,若导入了证书和KubeConfig文件,则需要删除证书和KubeConfig文件,请确认后再删除。
rm -rf /etc/mindx-dl/resilience-controller
父主题: 安装