KubeSphere 實戰指南:KubeSphere 和 K8s 叢集徹底解除安裝與重灌全攻略

kubesphere發表於2024-11-15

KubeSphere 最佳實戰:KubeSphere 和 K8s 叢集解除安裝重灌完全指南

本指南為一篇實戰短文,旨在幫助您快速掌握如何在現有伺服器上徹底解除安裝 KubeSphere 和 K8s 叢集並完成重灌部署。

實戰伺服器配置(架構1:1復刻小規模生產環境,只是配置略有不同)

主機名 IP CPU 記憶體 系統盤 資料盤 用途
ksp-control-1 192.168.9.161 8 16 40 100 KubeSphere/k8s-control-plane
ksp-control-2 192.168.9.162 8 16 40 100 KubeSphere/k8s-control-plane
ksp-control-3 192.168.9.163 8 16 40 100 KubeSphere/k8s-control-plane
ksp-storage 192.168.9.164 2 4 40 500 NFS-Storage
合計 4 26 52 160 800

實戰環境涉及軟體版本資訊

  • 作業系統:openEuler 22.03 LTS SP3 x86_64
  • KubeSphere:4.1.2
  • Kubernetes:v1.30.6
  • KubeKey: v3.1.7

1. 前言

本文適用於以下場景:

  • 部署 KubeSphere 和 K8s 叢集失敗,需要在原有伺服器上重新部署
  • 已有 KubeSphere 和 K8s 叢集,需要解除安裝後在原有伺服器上重新部署

注意: 解除安裝 KubeSphere 和 K8s 意味著將其從您的機器上移除。該操作不可逆,且不會進行任何備份。請謹慎操作

說明: 本文介紹的 K8s 解除安裝方式僅適用於 K8s 透過 KubeKey 安裝的場景。如果您的 K8s 不是透過 KubeKey 安裝,請參閱 K8s 官方文件解除安裝 K8s。

KubeSphere v3 和 v4 解除安裝 KubeSphere 和 K8s 叢集方式略有不同,本文分別介紹。

2. KubeSphere v3 操作指南

KubeSphere v3 如需刪除叢集並重建,請執行以下相關命令。

2.1 解除安裝 KubeSphere 和 K8s 叢集

  • 進入部署叢集時使用的 KubeKey 目錄
cd /root/kubekey
  • 如果是按照快速入門 All-in-One 安裝的 KubeSphere
./kk delete cluster
  • 如果是使用配置檔案安裝的 KubeSphere
./kk delete cluster -f config-sample.yaml

說明: config-sample.yaml 是部署叢集時的配置檔案。

  • 解除安裝成功會提示如下資訊
21:56:19 CST Pipeline[DeleteClusterPipeline] execute successfully

2.2 清理未刪除乾淨的資訊

這一步是核心,很多部署失敗都是因為殘留的配置未清理乾淨。

  • 進入部署叢集時使用的 KubeKey 目錄,檢視資料
cd /root/kubekey
$ ls
kk  ksp-k8s-v1306.yaml  kubekey  kubekey-v3.1.7-linux-amd64.tar.gz
  • 檢視 KubeKey 目錄的資料
$ ls /root/kubekey/kubekey
cni  config-opsxlab  containerd  crictl  etcd  helm  ksp-control-1  ksp-control-2  ksp-control-3  kube  logs  pki  runc
  • 刪除 pki 和以節點名命名的所有目錄(建議做好備份
cd /root/kubekey/kubekey
rm -rf ksp-control-1  ksp-control-2  ksp-control-3 pki

3. KubeSphere v4 操作指南

KubeSphere v4 如需刪除叢集並重建,請執行以下相關命令。

3.1 解除安裝 KubeSphere

KubeSphere v4 的部署方式採用了 Helm,所以解除安裝時需要使用 Helm。

helm -n kubesphere-system uninstall ks-core

3.2 解除安裝擴充套件元件

可選操作,上面的操作只是解除安裝了 KubeSphere Core,如果您安裝了擴充套件元件,還需要手工解除安裝擴充套件元件。

  • 檢視透過 Helm 安裝的擴充套件元件
$ helm list -A
NAME                            NAMESPACE                       REVISION        UPDATED                                 STATUS          CHART                    APP VERSION
ks-core                         kubesphere-system               1               2024-11-08 09:16:57.860023524 +0800 CST deployed        ks-core-1.1.3            v4.1.2
whizard-monitoring              kubesphere-monitoring-system    1               2024-11-08 03:10:46.242966821 +0000 UTC deployed        whizard-monitoring-1.1.1  
whizard-monitoring-agent        kubesphere-monitoring-system    1               2024-11-08 03:14:36.072353417 +0000 UTC deployed        whizard-monitoring-1.1.1  
whizard-telemetry               extension-whizard-telemetry     1               2024-11-08 03:01:26.269210475 +0000 UTC deployed        whizard-telemetry-1.2.2   
  • 解除安裝擴充套件元件(以監控元件為例,其它元件類似
helm -n kubesphere-monitoring-system uninstall whizard-monitoring whizard-monitoring-agent
# helm -n extension-whizard-telemetry uninstall whizard-telemetry

3.3 解除安裝 K8s 叢集

  • 進入部署叢集時使用的 KubeKey 目錄
cd /root/kubekey
  • 如果是按照快速入門 All-in-One 安裝的 K8s
./kk delete cluster
  • 如果是使用配置檔案安裝的 K8s
./kk delete cluster -f config-sample.yaml

說明: config-sample.yaml 是部署叢集時的配置檔案。

  • 解除安裝成功會提示如下資訊
21:56:19 CST Pipeline[DeleteClusterPipeline] execute successfully

3.4 清理未刪除乾淨的資訊

這一步是核心,很多部署失敗都是因為殘留的配置未清理乾淨。

  • 進入部署叢集時使用的 KubeKey 目錄,檢視資料
cd /root/kubekey
$ ls
kk  ksp-k8s-v1306.yaml  kubekey  kubekey-v3.1.7-linux-amd64.tar.gz
  • 檢視 KubeKey 目錄的資料
$ ls /root/kubekey/kubekey
cni  config-opsxlab  containerd  crictl  etcd  helm  ksp-control-1  ksp-control-2  ksp-control-3  kube  logs  pki  runc
  • 刪除 pki 和以節點名命名的所有目錄(建議做好備份
cd /root/kubekey/kubekey
rm -rf ksp-control-1  ksp-control-2  ksp-control-3 pki

4. 重新部署 KubeSphere 和 K8s 叢集

參考下面的部署文件,重新部署 KubeSphere 和 K8s 叢集。

征服 Docker 映象訪問限制 KubeSphere v3.4.1 成功部署全攻略

33 張高畫質大圖,帶你玩轉 KubeSphere v4.1.2 部署與擴充套件元件安裝

理論上不會再失敗,如有問題可以在評論區留言。

免責宣告:

  • 筆者水平有限,儘管經過多次驗證和檢查,盡力確保內容的準確性,但仍可能存在疏漏之處。敬請業界專家大佬不吝指教。
  • 本文所述內容僅透過實戰環境驗證測試,讀者可學習、借鑑,但嚴禁直接用於生產環境由此引發的任何問題,作者概不負責

近期活動推薦

本文由部落格一文多發平臺 OpenWrite 釋出!

相關文章