当前位置:   article > 正文

k8s集群管理_集群管理k8

集群管理k8

目录

一:k8s集群增加node节点

二:k8s集群删除node节点

三:K8S添加master节点

四:k8s删除master节点

五:备份etcd数据快照

六:通过etcd快照恢复etcd数据

七:清除整个集群

八:升级k8s集群

一:k8s集群增加node节点

查看当前集群状态

kubectl get node

添加node节点

通过ezctl 命令添加,查看ezctl命令帮助:ezctl help

通过ezctl add-node 命令添加k8snode 节点10.19.14.31

先在ansible安装端同步pub-key 到10.19.14.31node节点, 见k8s 集群安装文章。

执行:./ezctl add-node k8s-01 10.19.14.31 命令

二:k8s集群删除node节点

查看当前集群状态

通过 ezctl del-node 命令删除k8snode 节点10.19.14.31

  1. /etc/kubeasz/playbooks/32.delnode.yml
  2. #判断删除的节点是不是是属于master节点,及master节点不能少于2个
  3. #安全清空需要删除节点上的pod
  4. #stop and disable kube_node service
  5. #umount kubelet filesystems
  6. #remove files and dirs of 'kube_node' nodes
  7. #to clean container runtime and networking
  8. #to check if container 'kubeasz' is running
  9. #stop and disable docker service
  10. #umount docker filesystem-1 filesystem-2
  11. #删除docker 文件及文件夹
  12. #run kubectl delete node IP
  13. #remove the node's entry in hosts
./ezctl del-node k8s-01 10.19.14.31

三:K8S添加master节点

通过ezctl add-master 命令添加k8s-master 节点10.19.14.12

./ezctl add-master k8s-01 10.19.14.12

四:k8s删除master节点

通过ezctl del-master命令删除k8s-master节点 10.19.14.12

./ezctl del-master k8s-01 10.19.14.12

注意:如果etcd和master在同一台机器上,删除master节点则会导致etcd下的ssl证书丢失。

五:备份etcd数据快照

通过ezctl 备份etcd数据快照

ETCDCTL_API=3  表示的使用etcd v3版本

  1. /etc/kubeasz/playbooks/94.backup.yml
  2. 1) 获得etcd 主机IP
  3. 2)获得etcd 主机状态
  4. 3)获得etcd运行的节点
  5. 4)执行etcd备份快照命令
  6. 5)传输etcd快照到制定目录下
  7. 6)修改快照命名

 执行备份命令:./ezctl backup k8s-01

备份文件存储路径:/etc/kubeasz/clusters/k8s-01/backup/

查看备份信息:ETCDCTL_API=3 etcdctl --write-out=table snapshot status snapshot.db

六:通过etcd快照恢复etcd数据

模拟default资源空间里的数据都被删除

现在通过ezctl restore k8s-01来恢复数据

  1. ./ezctl restore k8s-01
  2. stopping kube_master services
  3. stopping kube_node services
  4. cluster-restore : 停止ectd 服务
  5. cluster-restore : 清除etcd 数据目录
  6. cluster-restore : 生成备份目录
  7. cluster-restore : 准备指定的备份etcd 数据
  8. cluster-restore : 清理上次备份恢复数据
  9. cluster-restore : etcd 数据恢复
  10. cluster-restore : 恢复数据至etcd 数据目录
  11. cluster-restore : 重启etcd 服务
  12. cluster-restore : 以轮询的方式等待服务同步完成
  13. starting kube_master services
  14. starting kube_node services

 

七:清除整个集群

ezctl destroy k8s-01

  1. clean: stop and disable etcd service
  2. clean : remove files and dirs
  3. clean : stop and disable kube_master service
  4. clean : remove files and dirs of 'kube_master' nodes
  5. clean : stop and disable kube_node service
  6. clean : umount kubelet filesystems
  7. clean : remove files and dirs of 'kube_node' nodes
  8. clean : to check if container 'kubeasz' is running
  9. clean : stop and disable docker service
  10. clean : umount docker filesystem
  11. clean : remove files and dirs
  12. clean : remove files and dirs2
  13. clean : clean 'ENV PATH'

重新安装整个集群

ezctl setup k8s-01 all

八:升级k8s集群

集群升级存在一定风险,请谨慎操作。

  • 在当前支持k8s大版本基础上升级任意小版本,比如当前安装集群为1.21.0,你可以方便的升级到任何1.21.12版本

升级前的准备工作:

   备份etcd数据: ./ezctl backup k8s-01

去官网下载需要升级的二进制release包: kubernetes/CHANGELOG-1.21.md at master · kubernetes/kubernetes · GitHub

解压下载的tar.gz文件,找到如下kube*开头的二进制,复制替换ansible控制端目录/etc/kubeasz/bin对应文件

执行升级命令

./ezctl upgrade k8s-01

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/963048
推荐阅读
相关标签
  

闽ICP备14008679号