Skip to content

Commit 8f7fc5a

Browse files
authored
Merge pull request #5473 from tssurya/fix-upgrades-post-IC-default
Make upgrade jobs run IC=true always
2 parents cf97f47 + 149d92f commit 8f7fc5a

File tree

1 file changed

+50
-29
lines changed

1 file changed

+50
-29
lines changed

test/scripts/upgrade-ovn.sh

Lines changed: 50 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ kubectl_wait_daemonset(){
4646
echo "CURRENT READY REPLICAS: $READY_REPLICAS, CURRENT DESIRED REPLICAS: $DESIRED_REPLICAS for the DaemonSet $1"
4747
if [[ $READY_REPLICAS -eq $DESIRED_REPLICAS ]]; then
4848
UP_TO_DATE_REPLICAS=$(run_kubectl get daemonsets.apps $1 -n ovn-kubernetes -o=jsonpath='{.status.updatedNumberScheduled}')
49-
echo "CURRENT UP TO DATE REPLICAS: $UP_TO_DATE_REPLICAS for the Deployment $1"
49+
echo "CURRENT UP TO DATE REPLICAS: $UP_TO_DATE_REPLICAS for the DaemonSet $1"
5050
if [[ $READY_REPLICAS -eq $UP_TO_DATE_REPLICAS ]]; then
5151
break
5252
fi
@@ -71,7 +71,7 @@ kubectl_wait_deployment(){
7171
READY_REPLICAS=$(run_kubectl get deployments.apps $1 -n ovn-kubernetes -o=jsonpath='{.status.readyReplicas}')
7272
echo "CURRENT READY REPLICAS: $READY_REPLICAS, CURRENT DESIRED REPLICAS: $DESIRED_REPLICAS for the Deployment $1"
7373
if [[ $READY_REPLICAS -eq $DESIRED_REPLICAS ]]; then
74-
UP_TO_DATE_REPLICAS=$(run_kubectl get deployments.apps ovnkube-master -n ovn-kubernetes -o=jsonpath='{.status.updatedReplicas}')
74+
UP_TO_DATE_REPLICAS=$(run_kubectl get deployments.apps $1 -n ovn-kubernetes -o=jsonpath='{.status.updatedReplicas}')
7575
echo "CURRENT UP TO DATE REPLICAS: $UP_TO_DATE_REPLICAS for the Deployment $1"
7676
if [[ $READY_REPLICAS -eq $UP_TO_DATE_REPLICAS ]]; then
7777
break
@@ -130,6 +130,7 @@ create_ovn_kube_manifests() {
130130
--net-cidr="${NET_CIDR}" \
131131
--svc-cidr="${SVC_CIDR}" \
132132
--gateway-mode="${OVN_GATEWAY_MODE}" \
133+
--enable-interconnect="${OVN_ENABLE_INTERCONNECT}" \
133134
--hybrid-enabled="${OVN_HYBRID_OVERLAY_ENABLE}" \
134135
--disable-snat-multiple-gws="${OVN_DISABLE_SNAT_MULTIPLE_GWS}" \
135136
--disable-forwarding="${OVN_DISABLE_FORWARDING}" \
@@ -164,6 +165,7 @@ set_default_ovn_manifest_params() {
164165
OVN_ENABLE_OVNKUBE_IDENTITY=${OVN_ENABLE_OVNKUBE_IDENTITY:-true}
165166
# ovn configs
166167
OVN_GATEWAY_MODE=${OVN_GATEWAY_MODE:-shared}
168+
OVN_ENABLE_INTERCONNECT=${OVN_ENABLE_INTERCONNECT:-true}
167169
OVN_HYBRID_OVERLAY_ENABLE=${OVN_HYBRID_OVERLAY_ENABLE:-false}
168170
OVN_DISABLE_SNAT_MULTIPLE_GWS=${OVN_DISABLE_SNAT_MULTIPLE_GWS:-false}
169171
OVN_DISABLE_FORWARDING=${OVN_DISABLE_FORWARDING:-false}
@@ -213,6 +215,7 @@ print_ovn_manifest_params() {
213215
echo "PLATFORM_IPV6_SUPPORT = $PLATFORM_IPV6_SUPPORT"
214216
echo "OVN_HA = $OVN_HA"
215217
echo "OVN_GATEWAY_MODE = $OVN_GATEWAY_MODE"
218+
echo "OVN_ENABLE_INTERCONNECT = $OVN_ENABLE_INTERCONNECT"
216219
echo "OVN_HYBRID_OVERLAY_ENABLE = $OVN_HYBRID_OVERLAY_ENABLE"
217220
echo "OVN_DISABLE_SNAT_MULTIPLE_GWS = $OVN_DISABLE_SNAT_MULTIPLE_GWS"
218221
echo "OVN_DISABLE_FORWARDING = $OVN_DISABLE_FORWARDING"
@@ -290,45 +293,63 @@ if [ "${OVN_ENABLE_OVNKUBE_IDENTITY}" == true ]; then
290293
kubectl_wait_daemonset ovnkube-identity
291294
fi
292295

296+
if [ "${OVN_ENABLE_OVNKUBE_IDENTITY}" == false ]; then
297+
# install updated ovnkube-node daemonset
298+
run_kubectl apply -f ovnkube-node.yaml
293299

294-
# install updated ovnkube-node daemonset
295-
run_kubectl apply -f ovnkube-node.yaml
300+
kubectl_wait_daemonset ovnkube-node
296301

297-
kubectl_wait_daemonset ovnkube-node
302+
run_kubectl get all -n ovn-kubernetes
303+
CURRENT_REPLICAS_OVNKUBE_DB=$(run_kubectl get deploy -n ovn-kubernetes ovnkube-db -o=jsonpath='{.spec.replicas}')
304+
run_kubectl scale deploy -n ovn-kubernetes ovnkube-db --replicas=0
298305

299-
run_kubectl get all -n ovn-kubernetes
300-
CURRENT_REPLICAS_OVNKUBE_DB=$(run_kubectl get deploy -n ovn-kubernetes ovnkube-db -o=jsonpath='{.spec.replicas}')
301-
run_kubectl scale deploy -n ovn-kubernetes ovnkube-db --replicas=0
306+
# install updated ovnkube-db daemonset
307+
if [ "$OVN_HA" == true ]; then
308+
run_kubectl apply -f ovnkube-db-raft.yaml
309+
else
310+
run_kubectl apply -f ovnkube-db.yaml
311+
fi
302312

303-
# install updated ovnkube-db daemonset
304-
if [ "$OVN_HA" == true ]; then
305-
run_kubectl apply -f ovnkube-db-raft.yaml
306-
else
307-
run_kubectl apply -f ovnkube-db.yaml
308-
fi
313+
run_kubectl scale deploy -n ovn-kubernetes ovnkube-db --replicas=$CURRENT_REPLICAS_OVNKUBE_DB
314+
kubectl_wait_deployment ovnkube-db
309315

310-
run_kubectl scale deploy -n ovn-kubernetes ovnkube-db --replicas=$CURRENT_REPLICAS_OVNKUBE_DB
311-
kubectl_wait_deployment ovnkube-db
316+
CURRENT_REPLICAS_OVNKUBE_MASTER=$(run_kubectl get deploy -n ovn-kubernetes ovnkube-master -o=jsonpath='{.spec.replicas}')
312317

313-
CURRENT_REPLICAS_OVNKUBE_MASTER=$(run_kubectl get deploy -n ovn-kubernetes ovnkube-master -o=jsonpath='{.spec.replicas}')
318+
# scaling down replica before changing image briefly helps get around an issue seen with KIND
319+
# The issue was sometimes the KIND cluster won't scale down the ovnkube-master pod in time
320+
# and the new pod with the new image would be stuck in "Pending" state
321+
run_kubectl scale deploy -n ovn-kubernetes ovnkube-master --replicas=0
314322

315-
# scaling down replica before changing image briefly helps get around an issue seen with KIND
316-
# The issue was sometimes the KIND cluster won't scale down the ovnkube-master pod in time
317-
# and the new pod with the new image would be stuck in "Pending" state
318-
run_kubectl scale deploy -n ovn-kubernetes ovnkube-master --replicas=0
323+
# install updated ovnkube-master deployment
324+
run_kubectl apply -f ovnkube-master.yaml
319325

320-
# install updated ovnkube-master deployment
321-
run_kubectl apply -f ovnkube-master.yaml
326+
popd
322327

323-
popd
328+
run_kubectl scale deploy -n ovn-kubernetes ovnkube-master --replicas=$CURRENT_REPLICAS_OVNKUBE_MASTER
329+
kubectl_wait_deployment ovnkube-master
330+
kubectl_wait_for_upgrade
324331

325-
run_kubectl scale deploy -n ovn-kubernetes ovnkube-master --replicas=$CURRENT_REPLICAS_OVNKUBE_MASTER
326-
kubectl_wait_deployment ovnkube-master
327-
kubectl_wait_for_upgrade
332+
run_kubectl describe ds ovnkube-node -n ovn-kubernetes
328333

329-
run_kubectl describe ds ovnkube-node -n ovn-kubernetes
334+
run_kubectl describe deployments.apps ovnkube-master -n ovn-kubernetes
330335

331-
run_kubectl describe deployments.apps ovnkube-master -n ovn-kubernetes
336+
else
337+
# we only support single node per zone IC upgrades.
338+
run_kubectl apply -f ovnkube-single-node-zone.yaml
339+
kubectl_wait_daemonset ovnkube-node
340+
341+
run_kubectl get all -n ovn-kubernetes
342+
CURRENT_REPLICAS_OVNKUBE_CONTROL_PLANE=$(run_kubectl get deploy -n ovn-kubernetes ovnkube-control-plane -o=jsonpath='{.spec.replicas}')
343+
344+
run_kubectl scale deploy -n ovn-kubernetes ovnkube-control-plane --replicas=0
345+
346+
# install updated ovnkube-control-plane deployment
347+
run_kubectl apply -f ovnkube-control-plane.yaml
348+
349+
run_kubectl scale deploy -n ovn-kubernetes ovnkube-control-plane --replicas=$CURRENT_REPLICAS_OVNKUBE_CONTROL_PLANE
350+
kubectl_wait_deployment ovnkube-control-plane
351+
kubectl_wait_for_upgrade
352+
fi
332353

333354
KIND_REMOVE_TAINT=${KIND_REMOVE_TAINT:-true}
334355
MASTER_NODES=$(kubectl get nodes -l node-role.kubernetes.io/control-plane -o name)

0 commit comments

Comments
 (0)