Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-19391

CVO hotloops on ClusterRoleBinding cluster-baremetal-operator and ConfigMap openshift-machine-config-operator/kube-rbac-proxy

XMLWordPrintable

    • Moderate
    • No
    • 5
    • OTA 243, OTA 244
    • 2
    • Rejected
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      In a 4.14 cluster, I'm seeing CVO hotloops on ClusterRoleBinding cluster-baremetal-operator and ConfigMap openshift-machine-config-operator/kube-rbac-proxy with empty ManagedFields.  
      
      # oc logs  cluster-version-operator-7cf78c4f65-hfh7f -n openshift-cluster-version | grep -o 'Updating .*due to diff'| sort | uniq -c
           93 Updating ClusterRoleBinding cluster-baremetal-operator due to diff
           93 Updating ClusterRole machine-api-operator-ext-remediation due to diff
           93 Updating ConfigMap openshift-machine-config-operator/kube-rbac-proxy due to diff
      
      CVO logs the diff as below:
      
      I0919 10:19:24.658975       1 rbac.go:38] Updating ClusterRoleBinding cluster-baremetal-operator due to diff:   &v1.ClusterRoleBinding{
            TypeMeta: v1.TypeMeta{
      -         Kind:       "",
      +         Kind:       "ClusterRoleBinding",
      -         APIVersion: "",
      +         APIVersion: "rbac.authorization.k8s.io/v1",
            },
            ObjectMeta: v1.ObjectMeta{
                ... // 2 identical fields
                Namespace:                  "openshift-machine-api",
                SelfLink:                   "",
      -         UID:                        "cb8a7ffe-9966-4224-b1b6-3e7db6da7009",
      +         UID:                        "",
      -         ResourceVersion:            "2571",
      +         ResourceVersion:            "",
                Generation:                 0,
      -         CreationTimestamp:          v1.Time{Time: s"2023-09-19 03:02:31 +0000 UTC"},
      +         CreationTimestamp:          v1.Time{},
                DeletionTimestamp:          nil,
                DeletionGracePeriodSeconds: nil,
                ... // 2 identical fields
                OwnerReferences: {{APIVersion: "config.openshift.io/v1", Kind: "ClusterVersion", Name: "version", UID: "fb1c6e8c-01bc-415f-8b55-c55a4601bd10", ...}},
                Finalizers:      nil,
      -         ManagedFields: []v1.ManagedFieldsEntry{
      -             {
      -                 Manager:    "cluster-version-operator",
      -                 Operation:  "Update",
      -                 APIVersion: "rbac.authorization.k8s.io/v1",
      -                 Time:       s"2023-09-19 03:02:31 +0000 UTC",
      -                 FieldsType: "FieldsV1",
      -                 FieldsV1:   s`{"f:metadata":{"f:annotations":{".":{},"f:capability.openshift.i`...,
      -             },
      -         },
      +         ManagedFields: nil,
            },
            Subjects: {{Kind: "ServiceAccount", Name: "cluster-baremetal-operator", Namespace: "openshift-machine-api"}},
            RoleRef:  {APIGroup: "rbac.authorization.k8s.io", Kind: "ClusterRole", Name: "cluster-baremetal-operator"},
        }
      
      ...
      
      I0919 10:14:55.572553       1 core.go:138] Updating ConfigMap openshift-machine-config-operator/kube-rbac-proxy due to diff:   &v1.ConfigMap{
            TypeMeta: v1.TypeMeta{
      -         Kind:       "",
      +         Kind:       "ConfigMap",
      -         APIVersion: "",
      +         APIVersion: "v1",
            },
            ObjectMeta: v1.ObjectMeta{
                ... // 2 identical fields
                Namespace:                  "openshift-machine-config-operator",
                SelfLink:                   "",
      -         UID:                        "9c6c667f-8e10-4fca-8c1d-c8c0fc158ee5",
      +         UID:                        "",
      -         ResourceVersion:            "164024",
      +         ResourceVersion:            "",
                Generation:                 0,
      -         CreationTimestamp:          v1.Time{Time: s"2023-09-19 03:01:42 +0000 UTC"},
      +         CreationTimestamp:          v1.Time{},
                DeletionTimestamp:          nil,
                DeletionGracePeriodSeconds: nil,
                ... // 2 identical fields
                OwnerReferences: {{APIVersion: "config.openshift.io/v1", Kind: "ClusterVersion", Name: "version", UID: "fb1c6e8c-01bc-415f-8b55-c55a4601bd10", ...}},
                Finalizers:      nil,
      -         ManagedFields: []v1.ManagedFieldsEntry{
      -             {
      -                 Manager:    "cluster-version-operator",
      -                 Operation:  "Update",
      -                 APIVersion: "v1",
      -                 Time:       s"2023-09-19 10:10:23 +0000 UTC",
      -                 FieldsType: "FieldsV1",
      -                 FieldsV1:   s`{"f:data":{},"f:metadata":{"f:annotations":{".":{},"f:include.re`...,
      -             },
      -             {
      -                 Manager:    "machine-config-operator",
      -                 Operation:  "Update",
      -                 APIVersion: "v1",
      -                 Time:       s"2023-09-19 10:10:25 +0000 UTC",
      -                 FieldsType: "FieldsV1",
      -                 FieldsV1:   s`{"f:data":{"f:config-file.yaml":{}}}`,
      -             },
      -         },
      +         ManagedFields: nil,
            },
            Immutable:  nil,
            Data:       {"config-file.yaml": "authorization:\n  resourceAttributes:\n    apiVersion: v1\n    reso"...},
            BinaryData: nil,
        }
      

      Version-Release number of selected component (if applicable):

      4.14.0-0.nightly-2023-09-15-233408

      How reproducible:

      1/1

      Steps to Reproduce:

      1. Install a 4.14 cluster
      2.
      3.
      

      Actual results:

      CVO hotloops on ClusterRoleBinding cluster-baremetal-operator and ConfigMap openshift-machine-config-operator/kube-rbac-proxy

      Expected results:

      CVO doesn't hotloop on resources with empty ManagedFields

      Additional info:

       

            pratikam Pratik Mahajan
            yanyang@redhat.com Yang Yang
            Yang Yang Yang Yang
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: