首页 > 其他分享 >KubeSphere 实战指南:KubeSphere 和 K8s 集群彻底卸载与重装全攻略

KubeSphere 实战指南:KubeSphere 和 K8s 集群彻底卸载与重装全攻略

时间:2024-11-15 14:42:13浏览次数:1  
标签:control ksp KubeSphere kubekey 全攻略 卸载 K8s

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 发布!

标签:control,ksp,KubeSphere,kubekey,全攻略,卸载,K8s
From: https://www.cnblogs.com/kubesphere/p/18547945

相关文章

  • 2024 年 Java 面试最全攻略:程序员求职跳槽必刷题目 1000+,横扫一切技术盲点!
    写在前面马上又要到收割Offer的季节,你准备好了吗?曾经的我,横扫各个大厂的Offer。还是那句话:进大厂临时抱佛脚是肯定不行的,一定要注重平时的总结和积累,多思考,多积累,多总结,多复盘,将工作经历真正转化为自己的工作经验。面经分享今天给大家分享一个面试大厂的完整面经,小伙......
  • ubuntu22.04离线部署k8s1.28.2(随笔)
    一、准备环境(所有服务器)1.各服务器设置hosts192.168.137.100k8s-master192.168.137.101k8s-node1192.168.137.102k8s-node2hostnameset-hostname k8s-masterhostnameset-hostname k8s-node1hostnameset-hostname k8s-node12。时间同步自己想办法3.lvs环境(暂定)mo......
  • k8s 1.28.2 集群部署 docker registry 接入 MinIO 存储
    目录dockerregistry部署生成htpasswd文件生成secret文件生成registry配置文件创建service创建statefulset创建ingress验证dockerregistrydockerregistry监控dockerregistryuidockerregistrydockerfiledockerregistry配置文件S3storagedriverregistry......
  • k8s服务内容滚动升级以及常用命令介绍
    查看K8S集群所有的节点信息kubectlgetnodes删除K8S集群中某个特定节点kubectldeletenodes/10.0.0.123获取K8S集群命名空间kubectlgetnamespace获取K8S所有命名空间的那些部署kubectlgetdeployment--all-namespaces创建命名空间web界面上看到的效果,但是不......
  • 33 张高清大图,带你玩转 KubeSphere 4.1.2 部署与扩展组件安装
    备受瞩目的KubeSphere4.1.2已经正式官宣发布,该版本带来了一个重大优化:增加默认的扩展组件仓库。这一优化改进,让采用全新的KubeSphereLuBan架构的KubeSphere,真正实现了自由打造高度可扩展和可配置的云原生底座。KubeSphere用户仅需要在K8s之上,默认安装清爽简洁、最小化......
  • 【K8S问题系列 | 10】在K8S集群怎么查看各个pod占用的资源大小?【已解决】
    要查看Kubernetes集群中各个Pod占用的资源大小(包括CPU和内存),可以使用以下几种方法:1.使用kubectltop命令kubectltop命令可以快速查看当前Pod的CPU和内存使用情况。需要确保已安装并配置了MetricsServer。查看所有Pod的资源使用情况kubectltoppods......
  • RadSystems 自定义页面全攻略:个性化任务管理系统的实战设计
    系列文章目录探索RadSystems:低代码开发的新选择(一)......
  • k8s总结
    1、k8s是一个开源的容器编排平台,由Google在2014年开源,建立在Borg系统的基础上。Kubernetes旨在自动化部署、扩展和管理容器化的应用程序,提供了一系列功能来解决容器编排的复杂问题‌Kubernetes的核心组件Kubernetes的核心组件包括:1‌、Master节点‌:负责集群的调度、管理和运维,......
  • 文本批量处理不求人:化繁为简全攻略 (系列一)
    在日常工作中,我们经常需要对一些文本文档进行批量操作或者对某一个文档进行繁琐操作,虽然windows系统自带的记事本自带批量替换修改内容的功能,但仅这一个功能往往不够,比如以下一些场景,用记事本就很难实现我们的目标。场景一:在IT行业中,聊天机器人是一种利用自然语言处理技术与......
  • K8s安装ingress-nginx
    安装ingress-nginx问题ingress-nginx-controller的service通过NodePort显露出去时,需要先使用ingree-controller调度到的节点先访问一次,集群的其他节点才能正常访问,如:有master:10.191.9.21,node1:10.191.9.22,node2:10.191.9.23三个节点,ingress-controller调度到了......