--- apiVersion: v1 items: - apiVersion: v1 data: cnibincopy.sh: |- #!/bin/bash set -e function log() { echo "$(date --iso-8601=seconds) [cnibincopy] ${1}" } DESTINATION_DIRECTORY=/host/opt/cni/bin/ # Perform validation of usage if [ -z "$RHEL8_SOURCE_DIRECTORY" ] || [ -z "$RHEL9_SOURCE_DIRECTORY" ] || [ -z "$DEFAULT_SOURCE_DIRECTORY" ]; then log "FATAL ERROR: You must set env variables: RHEL8_SOURCE_DIRECTORY, RHEL9_SOURCE_DIRECTORY, DEFAULT_SOURCE_DIRECTORY" exit 1 fi if [ ! -d "$DESTINATION_DIRECTORY" ]; then log "FATAL ERROR: Destination directory ($DESTINATION_DIRECTORY) does not exist" exit 1 fi # Collect host OS information . /host/etc/os-release rhelmajor= # detect which version we're using in order to copy the proper binaries case "${ID}" in rhcos|scos) RHEL_VERSION=$(echo "${CPE_NAME}" | cut -f 5 -d :) rhelmajor=$(echo $RHEL_VERSION | sed -E 's/([0-9]+)\.{1}[0-9]+(\.[0-9]+)?/\1/') ;; rhel|centos) rhelmajor=$(echo "${VERSION_ID}" | cut -f 1 -d .) ;; fedora) if [ "${VARIANT_ID}" == "coreos" ]; then rhelmajor=8 else log "FATAL ERROR: Unsupported Fedora variant=${VARIANT_ID}" exit 1 fi ;; *) log "FATAL ERROR: Unsupported OS ID=${ID}"; exit 1 ;; esac # Set which directory we'll copy from, detect if it exists sourcedir= founddir=false case "${rhelmajor}" in 8) if [ -d "${RHEL8_SOURCE_DIRECTORY}" ]; then sourcedir=${RHEL8_SOURCE_DIRECTORY} founddir=true fi ;; 9) if [ -d "${RHEL9_SOURCE_DIRECTORY}" ]; then sourcedir=${RHEL9_SOURCE_DIRECTORY} founddir=true fi ;; *) log "ERROR: RHEL Major Version Unsupported, rhelmajor=${rhelmajor}" ;; esac # When it doesn't exist, fall back to the original directory. if [ "$founddir" == false ]; then log "Source directory unavailable for OS version: ${rhelmajor}" sourcedir=$DEFAULT_SOURCE_DIRECTORY fi # Use a subdirectory called "upgrade" so we can atomically move fully copied files. # We now use --remove-destination after running into an issue with -f not working over symlinks UPGRADE_DIRECTORY=${DESTINATION_DIRECTORY}upgrade_$(uuidgen) rm -Rf $UPGRADE_DIRECTORY mkdir -p $UPGRADE_DIRECTORY cp -r --remove-destination ${sourcedir}* $UPGRADE_DIRECTORY if [ $? -eq 0 ]; then log "Successfully copied files in ${sourcedir} to $UPGRADE_DIRECTORY" else log "Failed to copy files in ${sourcedir} to $UPGRADE_DIRECTORY" rm -Rf $UPGRADE_DIRECTORY exit 1 fi mv -f $UPGRADE_DIRECTORY/* ${DESTINATION_DIRECTORY}/ if [ $? -eq 0 ]; then log "Successfully moved files in $UPGRADE_DIRECTORY to ${DESTINATION_DIRECTORY}" else log "Failed to move files in $UPGRADE_DIRECTORY to ${DESTINATION_DIRECTORY}" rm -Rf $UPGRADE_DIRECTORY exit 1 fi rm -Rf $UPGRADE_DIRECTORY kind: ConfigMap metadata: annotations: kubernetes.io/description: | This is a script used to copy CNI binaries based on host OS release.openshift.io/version: 4.18.28 creationTimestamp: "2025-12-03T19:54:07Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:cnibincopy.sh: {} f:metadata: f:annotations: f:kubernetes.io/description: {} f:release.openshift.io/version: {} f:ownerReferences: k:{"uid":"4b61a02a-692b-4644-8bba-588a6eaebc12"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-03T19:54:07Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b61a02a-692b-4644-8bba-588a6eaebc12 resourceVersion: "2874" uid: df6781dc-0c71-4f43-b770-2db9b54b062c - apiVersion: v1 data: allowlist.conf: |- ^net.ipv4.conf.IFNAME.accept_redirects$ ^net.ipv4.conf.IFNAME.accept_source_route$ ^net.ipv4.conf.IFNAME.arp_accept$ ^net.ipv4.conf.IFNAME.arp_notify$ ^net.ipv4.conf.IFNAME.disable_policy$ ^net.ipv4.conf.IFNAME.secure_redirects$ ^net.ipv4.conf.IFNAME.send_redirects$ ^net.ipv6.conf.IFNAME.accept_ra$ ^net.ipv6.conf.IFNAME.accept_redirects$ ^net.ipv6.conf.IFNAME.accept_source_route$ ^net.ipv6.conf.IFNAME.arp_accept$ ^net.ipv6.conf.IFNAME.arp_notify$ ^net.ipv6.neigh.IFNAME.base_reachable_time_ms$ ^net.ipv6.neigh.IFNAME.retrans_time_ms$ kind: ConfigMap metadata: annotations: kubernetes.io/description: | Sysctl allowlist for nodes. release.openshift.io/version: 4.18.28 creationTimestamp: "2025-12-03T19:54:07Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: .: {} f:allowlist.conf: {} f:metadata: f:annotations: .: {} f:kubernetes.io/description: {} f:release.openshift.io/version: {} manager: network-operator operation: Update time: "2025-12-03T19:54:07Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2869" uid: d53ff885-6b85-4622-99e9-95e0d08c51d9 - apiVersion: v1 data: allowlist.conf: |- ^net.ipv4.conf.IFNAME.accept_redirects$ ^net.ipv4.conf.IFNAME.accept_source_route$ ^net.ipv4.conf.IFNAME.arp_accept$ ^net.ipv4.conf.IFNAME.arp_notify$ ^net.ipv4.conf.IFNAME.disable_policy$ ^net.ipv4.conf.IFNAME.secure_redirects$ ^net.ipv4.conf.IFNAME.send_redirects$ ^net.ipv6.conf.IFNAME.accept_ra$ ^net.ipv6.conf.IFNAME.accept_redirects$ ^net.ipv6.conf.IFNAME.accept_source_route$ ^net.ipv6.conf.IFNAME.arp_accept$ ^net.ipv6.conf.IFNAME.arp_notify$ ^net.ipv6.neigh.IFNAME.base_reachable_time_ms$ ^net.ipv6.neigh.IFNAME.retrans_time_ms$ kind: ConfigMap metadata: annotations: kubernetes.io/description: | Sysctl allowlist for nodes. release.openshift.io/version: 4.18.28 creationTimestamp: "2025-12-03T19:54:07Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:allowlist.conf: {} f:metadata: f:annotations: f:kubernetes.io/description: {} f:release.openshift.io/version: {} f:ownerReferences: k:{"uid":"4b61a02a-692b-4644-8bba-588a6eaebc12"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-03T19:54:07Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b61a02a-692b-4644-8bba-588a6eaebc12 resourceVersion: "2868" uid: 704220d4-69ce-4a7b-bc5c-742a1a3d033c - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIZmv5NKGKongwDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjUxMjAzMTkzODM5WhcNMzUxMjAxMTkzODM5WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBANgJUuN6jyQGeuHgR+zFs0bBuluAwLDF lJi/gzyzphlfZ+0ePgfm1j2eI+bzG+q7Ju1EYOa8C7I155RyVR+hvrOgS60j4qvI Z1cnSOO0Cp3WGTpuWW0qn7TLk5SSCznstmHDbfD6haiD32k+ias3H2XR9zuFhFh1 XUTI0sq1ZvrUQQ7+eLTmyhf8mmguLN4AV0bFP49I5jsdrWe8Jgb3N87b/b68QhI2 +mpEKJz6KNHJDhwTV8e604o6Mp2SN955Iy9LLo0dy87bR0G/KOejmJ041PGgourj 5wJxX3rnMNRuTEuK80ff4P1zuK8PZ5DGvjEKnmGrcBhAa6ISgH44VLUCAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFAMa utpjwcsc6MnchgoPbdQx+kTeMA0GCSqGSIb3DQEBCwUAA4IBAQCOkm52mfyb+5yu wqip4iLOQCWv9NTSNCfh+NBsX7oQpnLAmCLnRloB0UxlvhjOKebvCT8560iEDumn sjt+UIrc5NtHGLbQbVc2y+6X2s9m5tO60Tn86bFx1pVyJ0pPwdq/Ijt/xlw6b0IB 9U++Sa9sTGt96mlmgTBKO423Zt0CZq9+lPKpXapyq5GHCttU29BTDFivcyl32lQI a+AXlV4EITBjIp1KuPdg0tVE/8WwTWBwnG9OFTEkbgoRS9lvDgOp6v8UIoJ6T22X EgP3OxQZhyDySPP/8Wy2upNJU3BHb/v6aDmwKlDpPPwYS43ZYB+Uj0zCRRq3CRZv rDCLinea -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIILqSDCNYc1DQwDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI1MTIwMzE5MzgzOVoXDTM1MTIwMTE5MzgzOVowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv4EpEU1GbzYm xrTU29dirXwFVE0WWw9lXcBWhu5RRnqGeqegQve6D6W6DfuTO+vxn6YdSkxzQ7C0 gCC8SWNQikj2PiFsvYJtnbljWal6wUGNCwFVutV6bealDEPE6h9jxEwrX02OzzWL wPOJtGVFU10DyXLjDm3mkl37nCnBZAitET1dWJmcQqirXDlwJ6u6yHdGBBTa6maf ZFMppzZNHK4TM7bWysowIKf0rmAKNhP5Rg34mJPGNvE18/tTFiGEsL5TDCrFOYsX 3WD8ZEPXVP7YYLND/hik/DIRtc6S3bcc+3uFoLb4Dv8Bnn+Q3dAVXrzc99RmEWzo K68GItLOyQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUe3iCjrg69ROqtwqgRwnl7rj+7dcwDQYJKoZIhvcNAQELBQAD ggEBADaC3Q0fHVZQ1NpgWgOAlZLox/bHzuPSMIExx/58Fq8zkYLVzlRYBFw1vwvz ZmJIKNgYmDbFOpSFLKnSrNrDJYpT6hb+cn55k2mKeAASfSw/7ChPwkwvYbeG1e0Q nTUSxS2Zy1gnFdEC2Bkd2zPt8HHH48Kti/t6KEqoAXX9ilDALR882vhcnyufb8Ap 48YGW84NQiKPwHHXA3ISBQlmg9uXyTGwvlv5kixQ9arxuo3cENAeVzw8rQalaO12 vGYfA3gZqA9BHkvJYH7lEC3iiNVltqgqDp+RItVfTfe9ECnJ3gd2dyAymiBmkgi/ 5je732iEVEBV8bdRz/pk9sGM6vk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIZltPGFcVsvEwDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI1MTIwMzE5MzgzOVoXDTM1MTIwMTE5MzgzOVowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEA32UF9sG7Am8qCS2gsgMBYN2JCrGojN3nexRWmhzOpT0dXjoKJJJjwKhL2xWN Kldq62pj6hKagVPc/Kbq1eWAPsEGgvH/JQcjtOz8jyfLOdCZXaJ6Z+LbYik8nd/J 5xyGri/TXLCyCDPrP7kDsE8xBovpGnda4hdB/PhjEwtEPw0qH5uIBTEX+yMuf9ld 2wg6FjCSQ70W/Yfq6sK9nRfMpwooHpEM17jRn4GBLBgZzpViQzdypaM6crXXNXMz kW5Ol+d9kCKhp1gBTJSlYtZVIjy9CmEhiWPsSjieMGjSvVjlrkJ3G+FpRDNk+R04 crUBJENVZi8GV98bL75ZP5j9PwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUsR2Hu92NLNG4h9VjcUv9slk7x88wDQYJ KoZIhvcNAQELBQADggEBAJRkjPwwCeY567z7DL/AqulgMwyzWpBj8zaMs3LUHc1a 3YdZ0tDLhYjVwo1LPp8fMYLCI/cEQicz8gIP9PQUebPljAuypc+CLhk2Ndm600Mg Syf/jJshrN+8ptKW9j1ptZnk/U2kzU1Y7mnEaMSTc4TncUAsNEjq1Qy6G0+XOJLd +y9FssKF5BeTK28Tkia6ldYGlckcvsFX6BUC7Yuyo8OfKrSLAAjfm5XP695ZuKOf jtqwcs8oOmZ7RcrB2lIyguMk6durnBD4C9Wgimecen5vk3x1QNht85fq+cuER1xo Zx09ukYI10V9ndAygulwwZF5dtjvBEqRZnQM7kv+6Hc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIISxTKd3enQnwwDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzY0NzkxNzIzMB4XDTI1MTIwMzE5NTUy MloXDTM1MTIwMTE5NTUyM1owWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzY0NzkxNzIzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyydc yNSzdNIajNMG+Wr/RtCuN1a+e4rtYTZDL5g6YjWjo/KX0K+8I/lPqzV7kxekFDYY kVivavFkI1Csubxp9GpZF6Wn7t6sSRtlaCMf29jl/YvMar5dPEeaO8CA1S2fH2Qg Pyy9jHz3T4Eyo7wqoPC6z4LdvzGWxRmNeK4JL7ZVQoiZIf9gplTgV2kyhPwQWDni 0Ms8StdMvw9PvaV2DR7yuHD9HrQ/qQu6+BP4KffW7h9A5bgAUUonmyjp1Gchx9k/ RlquBcT0+MUGZkVb17NMSep039RYkmdDGYbYhcsluhSU+V+EPEZMlEYKkpbuLwtR JsVaZqb+m6o39e0mKwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUbGHRuTjzFuj0H82GH/ppa6RY0EYwHwYDVR0jBBgw FoAUbGHRuTjzFuj0H82GH/ppa6RY0EYwDQYJKoZIhvcNAQELBQADggEBAD+uWnuU 48dCVGZDWykQgnkcYSqNCW5J+fdu+YChIxS5JtdndLnTWXnPz8Yccl4YWdOcEstO AhWeCxOK91zotYWQmAY5mc8d0JiRQM/eG6dQfljPbQkdScixPvj2r3YeVxsgiNN3 l2BWeZJ2KpOKK/aaCtJP58v3pomc/HSNhaqk2TUn9ZTbZSJd7MbXdHJ1mpXaBVRf LefHUIocx1BcoYtya7wwj9Fn16C+EZkO0pTOWQm5+Hz/saFshjCt6LEUHZ+HuWdZ XSOtKQ92n9ky4a5c6/gQcSIr0vzcTd84wieGP6L/bvYPQ+DtBR91I9vgcGsvpznD 4dKFxAmFpBpzq0o= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIZ/eQZ42SgdkwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzY0NzkxNzUxMB4XDTI1MTIwMzE5NTU1MVoX DTI3MTIwMzE5NTU1MlowIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0aQ8FA4HG3jreogq +GpirqA/qt4IWXhWdvlBhFUXCy0ZvV11u7zmfEHN2O29dowgd+mj4bo5uC0QbbMS 2yNjaU9FhnZMlr7haipJ9MJyfV2ozMFk7cWzICAfOn+pnzfO5ksA8s5lnYPbgcug fX4uFXk/+7hmvcTsbvxL3phIjOcSlMm4TgIJEFNBRbcf0fhsXhJMqqAnpGTPO+FZ hPB6trJLWI1wK3RiodP5AWTCN8URXJkFgHuLA9M9Kx9xUmCwdvXTGudXhtHzskL2 UOkh5nelTWhyY5W8G5kpaeF/gWIsc0J2PiugEUSqUt01O6giEag8hFciIhSpJM7O 3Y5m0wIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQqBo4DPUI9p9jbfCSNEf1nNjxg NzAfBgNVHSMEGDAWgBRJDsn9g9NRX8PzgC3S6BQP03JBjzAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBALEiwcFV Hf29Nh76ExaIvchte+ltZCkvNGXnVMW9tEon35zwt85o3Uvhmi4+aillzFh/6wSv JdrFVa9Olw+CJhKzEQGaA6hfVeNAxAUZSHEiEhXEDOpDsPYjThUnefw8JM48BAhN veofIDMjEDiR6FyQE84yH+YgIwV3xgvdGYf45UEPCwr6M44UxbRjjsY5KhQqi6Xp LpUroN3YXAkFx9HBR7YzS2xnV7o4KwC04M3e/+nEyQXXk4WmLwodYxBOhNq18BEq TzlD26T0iojgLJ8Mh7c6QL8vvgfkBBZLwVrthrK1jA+5Ehr07rhx09KxNL61LpHI w1+wWgfBERB4vDg= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NjQ3OTE3NTEwHhcNMjUxMjAzMTk1NTUwWhcNMjcxMjAz MTk1NTUxWjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NjQ3OTE3NTEw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDYaNQINGoKqJ9rZPuiEKKw ixr795H8teAEDy3KrxNIr54ZJuqpDRNVxOQcYgcO0ddCkq7sN5NfhewNRAKfxQK7 cWuGvGLCodyL+7W89b8bTbXfh1rTDY3wd0jOV1VZubn8bm0jZ5rwb1+ONny6Shf5 u77JaLsJb6vLgFiKSE8splMQD6Jn1G/3Txq6AfTTaEYzTdoS5QxZNFMMzDrU6CPc JBNqk9DZrQJj2o2BddMVDqd1UBJHT/YqxJC+nve+BAjculPI6efV9+VcJMwPT0aV kT/dxTBG+0LZcWqzho6wqWmwTDQRBENjvyE0wkVdFoThgZr8xpk5Uf3lVv3LdO99 AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBRJDsn9g9NRX8PzgC3S6BQP03JBjzANBgkqhkiG9w0BAQsFAAOCAQEA VJ4a2K3VpEkxoE7ZegXVxwf6nvcW+mVPp3DDuUkGtQcgplXnXETaNcDpuAuGfmnD PrmCmUJ+xppUQ2J72bKG5hzl4Ki4H03LmS/2YnLRi/IccWNRZUXruX6+VsWFJ3Ss OOIxKOM4WRSr+zLPQqcOEAJ5ZbxSKt9FPGwxJgwsi/gsL8sV/OjKvd3qj+Eer4gp u2YOg0qDQR2xTvFpIPqQZiDLcF8objmrXv92rSf8noxJNfBTpB9eM4KyJHtWbz/Q bB8X/V+JMBBkXN5CqoG5vg6T2GXwi+eq8vVa00UdDg0sgH2ktTQw2q5tFMryXUeI 6ynOp3CNI9yQRcMglPkINw== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: kubernetes.io/description: Contains a CA bundle that can be used to verify the kube-apiserver when using internal endpoints such as the internal service IP or kubernetes.default.svc. No other usage is guaranteed across distributions of Kubernetes clusters. creationTimestamp: "2025-12-03T19:54:05Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: .: {} f:ca.crt: {} f:metadata: f:annotations: .: {} f:kubernetes.io/description: {} manager: kube-controller-manager operation: Update time: "2025-12-03T20:10:21Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "11661" uid: 6ca6acd4-7694-4128-ad5e-f409fd92a00f - apiVersion: v1 data: daemon-config.json: | { "cniVersion": "0.3.1", "chrootDir": "/hostroot", "logToStderr": true, "logLevel": "verbose", "binDir": "/var/lib/cni/bin", "perNodeCertificate": { "enabled": true, "bootstrapKubeconfig": "/var/lib/kubelet/kubeconfig", "certDir": "/etc/cni/multus/certs", "certDuration": "24h" }, "cniConfigDir": "/host/etc/cni/net.d", "multusConfigFile": "auto", "multusAutoconfigDir": "/host/run/multus/cni/net.d", "namespaceIsolation": true, "globalNamespaces": "default,openshift-multus,openshift-sriov-network-operator,openshift-cnv", "readinessindicatorfile": "/host/run/multus/cni/net.d/10-ovn-kubernetes.conf", "daemonSocketDir": "/run/multus/socket", "socketDir": "/host/run/multus/socket", "auxiliaryCNIChainName": "vendor-cni-chain" } kind: ConfigMap metadata: creationTimestamp: "2025-12-03T19:54:07Z" labels: app: multus tier: node managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:daemon-config.json: {} f:metadata: f:labels: f:app: {} f:tier: {} f:ownerReferences: k:{"uid":"4b61a02a-692b-4644-8bba-588a6eaebc12"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-03T19:54:07Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b61a02a-692b-4644-8bba-588a6eaebc12 resourceVersion: "2876" uid: 525e1ac5-2fc1-4661-9646-37b9501f0d61 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIAO117uLg8nswDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc2NDc5MTczMzAe Fw0yNTEyMDMxOTU1MzNaFw0yODAyMDExOTU1MzRaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NjQ3OTE3MzMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDhnmpxyqDM8Zmp3wDXgtDjUOmksljw6tVa w4cXJXW1uCsMlQbfFbRrDHDrNH1CnxxE8iKUxB6LqsT5YTcONFzG8NwRNkhO6yKm qey8AlU/jmYoRm8PrEDb6xSfHwrNzgozlcU44WyDIZpNGtsZjCd5oIdsJHKqFDC2 5xYQUjhdorsQekOvbtLRC03M3+Sg/gCXRen23sRBNI4EvERDDt4iWcZ8xca3sY1W ywP7ZGJygzyqbz8QOGDYbBvCt9+mrBxqpkawhiMGORE1JnQ8FdozZnLZYGW6FIan 2Y5CK2LVqPuBmpd3aT+GYGc5XtPisfiMoZJhJOx4q3K2SkXIUj6bAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQjViE2 ZWPdEHNA625zt8VDVQ5DSzAfBgNVHSMEGDAWgBQjViE2ZWPdEHNA625zt8VDVQ5D SzANBgkqhkiG9w0BAQsFAAOCAQEAZPKhxnM06bBkBKHHt3Nh6wifIJCIHsZmYvcw IPF2QATj/pZC2EwdNDUYCiG8h9GX+lVGflOoSr6GWPqQgDYR5/andikSHLKxarvV HLtlPUCKuXPYnSDMiNwI2GydGurSDgSgS1jz1/tTkZhuluZp7dprNAlQo2jsDqia PkOKOKMDhbLh2QNBF8mOEmjl9sExfEkQ69pjOocFL0MPj38oxOu2NJUIXwfOaA1a FsuHnZb3U2POHouy5klsNwV7b89FflR6p4dKhh9wXxmL1VzzFTKPBIupP0mpTxa1 08ps1noYlLcieF2OGjxL72kHK7M4NHXKSUjI4A7DAPJc3HIb0Q== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2025-12-03T19:54:05Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: {} f:metadata: f:annotations: .: {} f:service.beta.openshift.io/inject-cabundle: {} manager: kube-controller-manager operation: Update time: "2025-12-03T19:54:05Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2025-12-03T19:55:46Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5634" uid: a4b3191a-b680-46a9-ad8b-81de68ddce8d - apiVersion: v1 data: whereabouts.conf: | { "datastore": "kubernetes", "kubernetes": { "kubeconfig": "/etc/kubernetes/cni/net.d/whereabouts.d/whereabouts.kubeconfig" }, "reconciler_cron_expression": "30 4 * * *", "log_level": "debug", "log_file": "/tmp/whereabouts.log", "configuration_path": "/etc/kubernetes/cni/net.d/whereabouts.d" } kind: ConfigMap metadata: creationTimestamp: "2025-12-03T19:54:07Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"4b61a02a-692b-4644-8bba-588a6eaebc12"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-03T19:54:07Z" name: whereabouts-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b61a02a-692b-4644-8bba-588a6eaebc12 resourceVersion: "2875" uid: 9f583e2d-93e3-4b96-99f1-4bb8a4c0d702 kind: ConfigMapList metadata: resourceVersion: "27463"