-
Notifications
You must be signed in to change notification settings - Fork 451
1.0 升级 1.2
oilbeater edited this page Jun 27, 2022
·
6 revisions
Wiki 下的中文文档将不在维护,请访问我们最新的中文文档网站,获取最新的文档更新。
注意:由于 1.2 中使用 ovn 20.03,文件目录相对之前有调整,因此升级过程中无法对外提供服务,会存在一段时间的网络中断。
- 给 node 增加 annotation
kubectl annotate no --all ovn.kubernetes.io/allocated=true
- 给 ip 增加 label
kubectl get ip --no-headers | while read line;do
ip=$(echo $line | awk '{print $1}')
subnet=$(echo $line | awk '{print $5}')
kubectl label ip $ip $subnet= --overwrite
done
- 停止 kube-ovn-controller
kubectl scale deployment -n kube-system --replicas=0 kube-ovn-controller
- 停止 ovn-central
kubectl scale deployment -n kube-system --replicas=0 ovn-central
- 移动 ovndb 文件,需要在所有 master 机器执行响应操作
mkdir -p /etc/origin/ovn/
cp /etc/origin/openvswitch/ovnnb_db.db /etc/origin/ovn/
cp /etc/origin/openvswitch/ovnsb_db.db /etc/origin/ovn/
- 下载相关 yaml 文件
wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.2/yamls/crd.yaml
wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.2/yamls/ovn.yaml
wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.2/yamls/kube-ovn.yaml
-
修改 yaml
- 如果 ovn-central 为高可用模式,修改 ovn.yaml 文件,ovn-central deployment 的
replicas
和NODE_IPS
修改为和旧的一致. - 修改 kube-ovn.yaml,如果 ovn-controller deployment 的 command 中的 --default-cidr=$POD_CIDR --node-switch-cidr=$JOIN_CIDR 和旧的不一致,修改为旧的一致
- 如果 ovn-central 为高可用模式,修改 ovn.yaml 文件,ovn-central deployment 的
-
更新 OVN,等待所有 Pod Ready,手动删除所有 ovs-ovn Pod,运行
kubectl ko diagnose all
确认状态正常
kubectl apply -f crd.yaml
kubectl apply -f ovn.yaml
- 更新 Kube-OVN,等待所有 Pod Ready,手动删除所有 kube-ovn-cni Pod,运行
kubectl ko diagnose all
确认状态正常
kubectl apply -f kube-ovn.yaml