Bug 1938920

Summary: ovnkube-master/ovs-node DaemonSets should use maxUnavailable: 10%
Product: OpenShift Container Platform Reporter: Vadim Rutkovsky <vrutkovs>
Component: NetworkingAssignee: Vadim Rutkovsky <vrutkovs>
Networking sub component: ovn-kubernetes QA Contact: Dan Brahaney <dbrahane>
Status: CLOSED ERRATA Docs Contact:
Severity: high    
Priority: unspecified CC: anbhat, rbrattai
Version: 4.8   
Target Milestone: ---   
Target Release: 4.8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Cause: ovs-node has maxUnavailable set to 25% Consequence: updates on large clusters update one quarter of the cluster nodes causing potential disruption Fix: maxUnavalable for this DS is set to 10% Result: user workloads are less likely to be disrupted
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-07-27 22:53:18 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Vadim Rutkovsky 2021-03-15 08:26:30 UTC
This bug was initially created as a copy of Bug #1933173

I am copying this bug because it also applies to OVN



It's currently maxUnavailable: 1, but we want maxUnavailable: 10%, so we scale better on clusters with large node-counts.  Checking a recent 4.8 CI release:

$ curl -s https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/origin-ci-test/logs/release-openshift-origin-installer-e2e-gcp-4.8/1364411741282242560/artifacts/e2e-gcp/daemonsets.json | jq -r '.items[] | select(.spec.template.spec.nodeSelector["node-role.kubernetes.io/master"] != "" and .spec.updateStrategy.rollingUpdate.maxUnavailable != "10%") | .metadata.namespace + " " + .metadata.name + " " + (.spec.template.spec.nodeSelector | tostring) + " " + (.spec.updateStrategy | tostring)'
...
openshift-sdn sdn {"kubernetes.io/os":"linux"} {"rollingUpdate":{"maxUnavailable":1},"type":"RollingUpdate"}

Like bug 1933159, but different DaemonSet.

Comment 3 Dan Brahaney 2021-04-08 14:09:44 UTC
❯ oc get -o yaml -n openshift-ovn-kubernetes ds ovs-node
apiVersion: apps/v1
kind: DaemonSet
...
    rollingUpdate:
      maxSurge: 0
      maxUnavailable: 10%
    type: RollingUpdate
...

Verified on build registry.ci.openshift.org/ocp/release:4.8.0-0.nightly-2021-04-08-005413

Comment 6 errata-xmlrpc 2021-07-27 22:53:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: OpenShift Container Platform 4.8.2 bug fix and security update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2021:2438