Bug 1949677

Summary: multus is the first pod on a new node and the last to go ready
Product: OpenShift Container Platform Reporter: Douglas Smith <dosmith>
Component: NetworkingAssignee: Douglas Smith <dosmith>
Networking sub component: multus QA Contact: Weibin Liang <weliang>
Status: CLOSED ERRATA Docs Contact:
Severity: medium    
Priority: high    
Version: 4.8   
Target Milestone: ---   
Target Release: 4.8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Feature: Splits CNI plugin installation into a separate daemonset, to not block node readiness when pulling a lot of images. Reason: Node readiness takes a long time due to the long image pull times. Result: Node readiness happens faster.
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-07-27 23:00:48 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Douglas Smith 2021-04-14 19:00:07 UTC
Description of problem: (From Clayton)  multus is the first pod on a new node and the last to go ready because it pulls 5 images.  it's taking about 1m15s.  that means nodes go ready slowly because of multus. (it's the longest pole).  the time is because init container images are pulled sequentially


In order to address this, the daemonset for Multus should be separate from the ancillary CNI binary installation.

Comment 3 Weibin Liang 2021-06-02 15:35:12 UTC
Tested and verified in 4.8.0-0.nightly-2021-06-02-025513

[weliang@weliang ~]$ oc get all
NAME                                      READY   STATUS    RESTARTS   AGE
pod/multus-additional-cni-plugins-5bln8   1/1     Running   0          128m
pod/multus-additional-cni-plugins-6k2qb   1/1     Running   0          120m
pod/multus-additional-cni-plugins-897zr   1/1     Running   0          128m
pod/multus-additional-cni-plugins-f7bnl   1/1     Running   0          119m
pod/multus-additional-cni-plugins-w92k7   1/1     Running   0          128m
pod/multus-additional-cni-plugins-z4r5p   1/1     Running   0          119m
pod/multus-admission-controller-bvzhl     2/2     Running   0          125m
pod/multus-admission-controller-jtvhb     2/2     Running   0          125m
pod/multus-admission-controller-kdt58     2/2     Running   0          125m
pod/multus-cjf52                          1/1     Running   0          128m
pod/multus-g7bsg                          1/1     Running   0          128m
pod/multus-lkzmf                          1/1     Running   0          119m
pod/multus-mbfhr                          1/1     Running   0          120m
pod/multus-q67t5                          1/1     Running   0          119m
pod/multus-rs7sg                          1/1     Running   0          128m
pod/network-metrics-daemon-2qgss          2/2     Running   0          120m
pod/network-metrics-daemon-cwxfj          2/2     Running   0          128m
pod/network-metrics-daemon-ghs92          2/2     Running   0          128m
pod/network-metrics-daemon-p6h2d          2/2     Running   0          128m
pod/network-metrics-daemon-sj6zz          2/2     Running   0          119m
pod/network-metrics-daemon-wnkvk          2/2     Running   0          119m

NAME                                  TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)            AGE
service/multus-admission-controller   ClusterIP   172.30.173.199   <none>        443/TCP,8443/TCP   128m
service/network-metrics-service       ClusterIP   None             <none>        8443/TCP           128m

NAME                                           DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                     AGE
daemonset.apps/multus                          6         6         6       6            6           kubernetes.io/os=linux            128m
daemonset.apps/multus-additional-cni-plugins   6         6         6       6            6           kubernetes.io/os=linux            128m
daemonset.apps/multus-admission-controller     3         3         3       3            3           node-role.kubernetes.io/master=   128m
daemonset.apps/network-metrics-daemon          6         6         6       6            6           kubernetes.io/os=linux            128m
[weliang@weliang ~]$

Comment 6 errata-xmlrpc 2021-07-27 23:00:48 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