卸载
1. 卸载说明
本文档用于完全卸载通过 quick_install.sh 脚本部署的 CSGHub 应用、K3s 集群及相关依赖组件,适用于需要彻底清理环境、重新部署的场景。提供两种卸载方式:
- 快速卸载(推荐):通过脚本交互式卸载,按需确认各组件的卸载操作
- 手动卸载:按步骤逐个卸载各组件,适用于脚本无法完成的场景
重要警告:卸载操作不可逆,会删除所有 CSGHub 数据(数据库、模型、配置等)、K3s 集群资源及相关存储文件,请务必提前备份重要数据后再执行。
2. 前置准备
确认当前部署状态(验证待卸载资源):
# 查看 CSGHub Helm 部署状态
helm list -n csghub
# 查看 K3s 运行状态
systemctl status k3s(Server 节点)
systemctl status k3s-agent(Agent 节点)
# 查看残留 Pod/命名空间
kubectl get pods -A | grep -E "csghub|nfs|nvdp"
kubectl get ns | grep -E "csghub|nfs-provisioner|nvdp"
3. 快速卸载(推荐)
开始卸载
以下命令用于快速卸载通过一键部署安装的 CSGHub 及所有依赖组件,脚本会逐个组件确认后执行卸载。
curl -sfL http://quick-uninstall.opencsg.com | sudo bash
卸载说明
一键卸载脚本将按顺序逐个确认并卸载以下组件:
- 卸载 CSGHub Helm Chart,清理相关命名空间(csghub/spaces/nfs-provisioner/nvdp)、CRD 和 CoreDNS 自定义配置,移除 Helm 仓库
- 移除 NVIDIA GPU 节点标签、卸载 NVIDIA 容器工具包及仓库文件(需
--enable-gpu) - 停止 NFS 服务,移除共享目录和导出配置,卸载 NFS 软件包
- 运行 K3S 卸载脚本,清理 kubeconfig 文件
- 移除安装时添加的 sysctl 配置和 /etc/hosts 条目
卸载过程中若某组件失败,可选择重试、跳过或中止。
更多卸载示例
根据实际部署情况,可在卸载命令中添加对应参数,实现个性化卸载:
预览卸载操作
若需先查看将执行的卸载操作而不实际执行,可使用预览模式:
curl -sfL http://quick-uninstall.opencsg.com | sudo bash -s -- --dry-run
卸载时清理 GPU 支持
若部署时启用了 GPU 支持,卸载时需同时清理 GPU 相关组件:
curl -sfL http://quick-uninstall.opencsg.com | sudo bash -s -- --enable-gpu
指定数据目录
若部署时使用了非默认数据目录,卸载时需指定相同目录:
curl -sfL http://quick-uninstall.opencsg.com | sudo bash -s -- --data /var/lib/rancher/k3s
Agent 节点卸载
若当前节点为 Agent 节点,需指定 Server 地址进行卸载:
curl -sfL http://quick-uninstall.opencsg.com | sudo bash -s -- --k3s-server <server_url>
完整参数说明
| 参数 | 说明 | 默认值 |
|---|---|---|
--data <data_dir> | 安装时使用的数据目录 | /var/lib/rancher/k3s |
--enable-gpu | 同时卸载 NVIDIA GPU 支持 | 关闭 |
--enable-nfs-pv | 同时卸载 NFS 服务器和 Provisioner | 开启 |
--k3s-server <server_url> | 以 Agent 节点身份卸载 | - |
--dry-run | 仅打印命令不执行 | 关闭 |
--verbose | 启用详细日志 | 关闭 |