当前位置: 首页 > news >正文

K8S集群重新初始化--详细过程

K8S集群重新初始化

    • 0、当前环境
    • 1、master节点
      • 1.1、在master节点执行下面reset命令:
      • 1.2、手动清除配置信息,这一步很关键:
      • 1.3、重新引导集群
      • 1.4、创建配置目录,并复制权限配置文件到用户目录下:
      • 1.5 查看集群状态
      • 1.6 安装Calico网络插件
    • 2、work节点
      • 2.1、重置工作节点
      • 2.2、手动删除目录
      • 2.3、重新加入集群
    • 3、检验效果

在引导k8s集群的过程时可能因为这个或那个的原因导致需要重新引导集群 。

下面整理了我在实际工作中初始化k8s集群的详细过程。

0、当前环境

k8s环境部署总览

ip地址类型操作系统服务配置
192.168.162.31Master01Centos7.62核CPU 2G内存 20G硬盘
192.168.162.41node1Centos7.62核CPU 2G内存 20G硬盘
192.168.162.42node2Centos7.62核CPU 2G内存 20G硬盘

1、master节点

1.1、在master节点执行下面reset命令:

kubeadm reset

//过程会询问是否重置,输入y然后回车

1.2、手动清除配置信息,这一步很关键:

cd ~ 进入根目录ll -a 查看是否存在.kube文件
rm -rf /root/.kubesystemctl restart docker ## 重启docker 
systemctl restart kubelet ## 重启kubeletrm -rf /etc/cni/net.d

1.3、重新引导集群

kubeadm init xxxxxx

例如,具体按你的为准:

kubeadm init \
--apiserver-advertise-address=192.168.162.31 \
--control-plane-endpoint=k8s-master01-31 \
--image-repository registry.cn-hangzhou.aliyuncs.com/lfy_k8s_images \
--kubernetes-version v1.20.9 \
--service-cidr=10.96.0.0/16 \
--pod-network-cidr=192.168.0.0/16

初始化master节点成功后,拷贝出关键信息:(注意是你自己的信息)

Your Kubernetes control-plane has initialized successfully!To start using your cluster, you need to run the following as a regular user:mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/configAlternatively, if you are the root user, you can run:export KUBECONFIG=/etc/kubernetes/admin.confYou should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:https://kubernetes.io/docs/concepts/cluster-administration/addons/You can now join any number of control-plane nodes by copying certificate authorities
and service account keys on each node and then running the following as root:kubeadm join k8s-master01-31:6443 --token m7xgx0.h8m6si6ws2p0r9n6 \--discovery-token-ca-cert-hash sha256:f4d3af365aeabab83cf124e5a84aeb8260ae6c0d54a7f5d87928fab37a519aea \--control-plane Then you can join any number of worker nodes by running the following on each as root:kubeadm join k8s-master01-31:6443 --token m7xgx0.h8m6si6ws2p0r9n6 \--discovery-token-ca-cert-hash sha256:f4d3af365aeabab83cf124e5a84aeb8260ae6c0d54a7f5d87928fab37a519aea 

1.4、创建配置目录,并复制权限配置文件到用户目录下:

  mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config

1.5 查看集群状态

此时就可以在master节点使用kubectl get node 查看集群状态,如果出现状态为notready

kubectl get node 

请添加图片描述

查看pod状态

请添加图片描述

1.6 安装Calico网络插件

curl https://docs.projectcalico.org/manifests/calico.yaml -O ## 或者curl https://docs.projectcalico.org/v3.20/manifests/calico.yaml -Okubectl apply -f calico.yaml

2、work节点

2.1、重置工作节点

kubeadm reset
//过程会询问是否重置,输入y然后回车

2.2、手动删除目录

rm -rf /root/.kube
rm -rf /etc/cni/net.d
rm -rf /etc/kubernetes/*

2.3、重新加入集群

kubeadm join xxx #获取该指令可以通过在master节点上执行:kubeadm token create --print-join-command

自己生成的命令:

kubeadm join k8s-master01-31:6443 --token m7xgx0.h8m6si6ws2p0r9n6 \--discovery-token-ca-cert-hash sha256:f4d3af365aeabab83cf124e5a84aeb8260ae6c0d54a7f5d87928fab37a519aea

在master节点重新获取token

kubeadm token create --print-join-command

3、检验效果

在master节点查看各个node

kubectl get node

请添加图片描述

在master节点查看pod状态

kubectl get pod -A

请添加图片描述

http://www.lryc.cn/news/279464.html

相关文章:

  • 服务器 Linux常见指令
  • C++合并K个有序链表
  • win10在启动游戏时报错,提示“d3dx9_25.dll文件丢失”,怎么办?d3dx9_25.dll丢失如何自动修复
  • 16. 蒙特卡洛强化学习基本概念与算法框架
  • QT中程序执行时间精准计算的三种方法及对比
  • js下载方法分享*
  • C# Stopwatch类_性能_时间计时器
  • 鸿蒙原生应用再添新丁!天眼查 入局鸿蒙
  • HarmonyOS4.0——ArkUI应用说明
  • 基于模块自定义扩展字段的后端逻辑实现(二)
  • 图像中部分RGB矩阵可视化
  • RPA财务机器人在厦门市海沧医院财务管理流程优化汇总的应用
  • 聚焦老年生活与健康,“老有所依·情暖夕阳”元岗街社区微型养老博览会顺利开展
  • 记录汇川:H5U与Factory IO测试12
  • PingCAP 受邀参加 FICC 2023,获 Open100 世纪全球开源贡献奖
  • 10-skywalking告警
  • vue前端开发自学,插槽练习第二次,name属性的使用
  • AI副业拆解:人像卡通化,赋予你的形象全新生命力
  • 宝塔面板安装MySQL8数据库
  • 中科星图——Landsat9_C2_SR大气校正后的地表反射率数据
  • 使用ros_arduino_bridge控制机器人底盘
  • Nacos下载与安装【windows】
  • 【随笔】遗传算法优化的BP神经网络(随笔,不是很详细)
  • Mysql 嵌套子查询
  • Qt QLabel标签控件
  • iOS14 Widget 小组件调研
  • HarmonyOS的应用类型(FA vs Stage)
  • Jeecg创建表单页面步骤
  • leetcode17 电话号码的字母组合
  • 用html和css实现一个加载页面【究极简单】