-
Notifications
You must be signed in to change notification settings - Fork 452
0.10 升级 1.0
Wiki 下的中文文档将不在维护,请访问我们最新的中文文档网站,获取最新的文档更新。
本文档介绍如何在对业务影响尽可能小的情况下从 0.10 升级到 1.0。在升级过程中依然可能出现业务网络中断的情况,需要合理安排升级时间,并预先进行测试。
注意:1.0 之前版本 kube-ovn 组件都安装在 kube-ovn 命名空间下,1.0 之后的版本会部署在 kube-system 命名空间下,升级时为了保证尽可能的平滑,不会改变命名空间。
- 升级 kube-ovn-controller
kubectl edit deployment -n kube-ovn kube-ovn-controller
将镜像 tag 更新为 v1.0.1。等待 kube-ovn-controller 启动正常,观察日志是否出现错误。
- 升级 ovn db
kubectl edit deployment -n kube-ovn ovn-central
a. 如果 replicas 为 3 或者更多,将 maxUnavailable 设置为 1
b. 将镜像 tag 更新为 v1.0.1
c. 等待更新完成,所有 ovn-central pod Ready
- 升级 kube-ovn-cni
kubectl edit daemonset -n kube-ovn kube-ovn-cni
将 container 和 initcontainer 中的镜像 tag 均更新为 v1.0.1
由于 Daemonset 的更新策略为 OnDelete 不会自动更新 Pod,需要逐个删除 kube-ovn-cni Pod 并等待 Pod 运行正常
- 升级 ovs-ovn
注意: 该步骤会导致节点网络中断,为了不影响业务需要逐一驱逐节点上的业务 Pod
kubectl edit daemonset -n kube-ovn ovs-ovn
将镜像 tag 更新为 v1.0.1。由于 Daemonset 的更新策略为 OnDelete 需要逐一删除 ovs-ovn Pod。在 ovs-ovn Pod 运行正常后可以使用 kubectl ko diagnose node <nodeName>
来验证该节点网络正常。
- 升级 kube-ovn-pinger
kubectl edit daemonset -n kube-ovn kube-ovn-pinger
将镜像 tag 更新为 v1.0.1。等待 Pod 正常更新即可