一个计算机技术爱好者与学习者

0%

KubeSphere版本升级

1. 需求描述

当前KubeSphere版本v3.2.1,但是因为权限管理不好用(不能针对不同集群单独授权),因此计划升级到v3.3.1。
KubeSphere v3.3.0之后支持为每个集群单独设置集群成员和集群角色,提供了更细粒度的权限管控机制,进一步完善了 KubeSphere 的多租户系统。

参考文档:

2. 注意事项

  • 您应该先在测试环境中实施升级模拟。在测试环境中成功升级并且所有应用程序都正常运行之后,再在生产环境中升级您的集群。
  • 在升级过程中,应用程序可能会短暂中断(尤其是单副本容器组),请安排合理的升级时间。
  • 建议在生产环境中升级之前备份 etcd 和有状态应用程序。您可以使用 Velero 来备份和迁移 Kubernetes 资源以及持久化存储卷。

参考文档:

3. 思路

1、备份
2、kubesphere执行升级

4. 备份

4.1. etcd

备份etcd,参考 《K8S集群中etcd备份和恢复》

4.2. 有状态应用程序

未完待续

5. 执行升级

1、下载yaml文件&提交到k8s集群

1
2
wget https://github.com/kubesphere/ks-installer/releases/download/v3.3.1/kubesphere-installer.yaml
kubectl apply -f kubesphere-installer.yaml --force

2、观察升级进展

1
2
3
4
kubectl get all -n kubesphere-system
kubectl get pods -n kubesphere-system
kubectl describe job.batch/ks-upgrade -n kubesphere-system
kubectl logs -f ks-installer-895b8994d-5qrjs -n kubesphere-system

3、验证升级后的版本

1
kubectl get pod -n kubesphere-system -oyaml | grep image:

浏览器访问ks,右上角点击用户名关于,就可以看到当前ks版本。