跳到主要内容

实例卸载

重要提示:

  • 卸载操作会影响 CSGHub 服务可用性,请在业务低峰期执行,并提前做好数据备份。
  • 彻底卸载会删除所有相关数据(含数据库、存储文件),操作前请确认数据无需保留,删除后不可恢复。

1. 确认部署信息

卸载前,先确认 CSGHub 的 Helm Release 部署状态与详情,确保操作对象正确,避免误操作。执行以下命令:

# 列出所有命名空间中包含 csghub 的 Helm Release,确认部署实例
helm list -A | grep csghub

# 查看 csghub 部署的详细配置、状态等信息,验证部署命名空间与实例名称
helm get all csghub -n csghub

2. 临时卸载(保留历史,可恢复)

若仅需临时卸载 CSGHub,后续计划恢复或重装,可使用保留历史的卸载方式,此操作会保留 Helm 部署历史记录,便于后续快速恢复。命令如下:

helm uninstall csghub -n csghub --keep-history

说明:执行后,CSGHub 服务停止,但部署历史、持久化数据(PVC)、配置等仍保留,后续可通过 Helm 回滚或重装恢复服务。

3. 完全卸载(彻底清理,不可恢复)

若需彻底移除 CSGHub 所有相关资源,包括服务、数据、配置、命名空间等,按以下步骤逐步执行,确保清理彻底。

3.1 卸载 Helm Release

首先卸载 CSGHub 的 Helm 部署实例,停止相关服务,命令如下:

helm uninstall csghub -n csghub

3.2 删除所有持久化数据(PVC)

注意:此操作会删除所有数据库、存储文件等持久化数据,删除后不可恢复,请务必确认无需保留数据后再执行。

kubectl delete pvc --all -n csghub

3.3 删除残留 Secret 与 ConfigMap

清理 csghub 命名空间下残留的密钥(Secret)和配置映射(ConfigMap),避免资源冗余,命令如下:

kubectl delete secret --all -n csghub
kubectl delete configmap --all -n csghub

3.4 删除 CSGHub 相关 CRD

删除与 CSGHub 相关的自定义资源定义(CRD),彻底清理集群级资源,命令如下:

kubectl delete crd -l app.kubernetes.io/name=csghub

3.5 删除 CSGHub Helm 仓库

若后续不再部署 CSGHub,可删除本地 Helm 仓库配置,清理仓库关联信息,命令如下:

helm repo remove csghub

3.6 删除相关命名空间

删除 CSGHub 及关联组件(如 KnativeServing)的命名空间,彻底清理所有相关资源,命令如下:

kubectl delete namespace csghub --force
kubectl delete namespace knative-serving --force

说明:使用 --force 参数可强制删除命名空间,确保残留资源彻底清理,若命名空间处于 Terminating 状态,可执行此命令加速删除。

4. 卸载验证

卸载完成后,执行以下命令验证资源是否清理彻底:

# 验证 Helm Release 已删除
helm list -A | grep csghub

# 验证相关命名空间已删除
kubectl get namespaces | grep -E "csghub|knative-serving"

# 验证相关 CRD 已删除
kubectl get crd -l app.kubernetes.io/name=csghub

若以上命令均无对应输出,说明 CSGHub 相关资源已彻底卸载完成。