--- 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.35 creationTimestamp: "2026-03-19T11:51:51Z" 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":"609d5975-851c-4eb5-89fc-223f8c9517c7"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-19T11:51:51Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 609d5975-851c-4eb5-89fc-223f8c9517c7 resourceVersion: "2861" uid: 35bd862a-6c33-4fa4-afb3-ee22ddfc7002 - 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.35 creationTimestamp: "2026-03-19T11:51:51Z" 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: "2026-03-19T11:51:51Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2857" uid: 75c5a29d-530e-49fd-96e8-fc948d0c7905 - 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.35 creationTimestamp: "2026-03-19T11:51:51Z" 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":"609d5975-851c-4eb5-89fc-223f8c9517c7"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-19T11:51:51Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 609d5975-851c-4eb5-89fc-223f8c9517c7 resourceVersion: "2856" uid: 2130fffa-9339-4bb9-b621-5460c96ef9d5 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIZGuIp/fO3aYwDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjYwMzE5MTEzNjI0WhcNMzYwMzE2MTEzNjI0WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMPc7sBW4yQ621f5mYKGgOtwu9Doj4K+ onSFZDIXkHL79+GKjZPd8r43Qa/xhzdcWSy5anDCOcaAKEsTn4uQClFDQOEFXJhj ku0uso73byhXyrXlzPCp5K1H88+2ygB4gQQZW/ZPG4wMZEYksvJAKh364EDphx2o XXD8LqwRx+bqGuxs4aDl8UL/aKzOVYXAGxy4unuPIXBlFPSZ32B42iJuiqdd9Bbv xKpg9EDiZzl3XWF5YlJyLtDY6ux/nNpozOI0VWtlv1MFvxcPrrZ8DjJZ0d53uPzl aCPRJi2qNhZGx5OVNWefXueM8XsSXMYNgCdRRpL8z7vh8QP2nY2IhfsCAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFHmT ddZgxLpJl2k017MiopyqjwmgMA0GCSqGSIb3DQEBCwUAA4IBAQBXt55l5+oE0MK0 fA6sIaDhGRU/OuL/idPYh9hMbeGsMMho3+8NWe3OYbN2C1CtstzNGsliSjaJ3dds sc9an0/qxPBqDP6aNT1jDmgyX4ARYo9e5wChL64GuBatIvhnWnp/FngF3mawwpYD nFwTyaXvA2avKLsUJiR/UHZVakNJxbfKvsWv8IfSo7pDMjWfWAJDUP+FvrK8Whcf OZtZpXObx2UdJ/ydEu6KHuHGQtUN4JtL9il1RWaVkgR7xPEhnbrNj0KaUrkQZMnm 4bJPjpBX2Kor76viIC05dfbMmMjeS7p+kVrkAoNx5zRANHkx+OwBn3I3B2590Khc LonKt5Ok -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIIaU0oJbDZQXQwDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI2MDMxOTExMzYyNFoXDTM2MDMxNjExMzYyNFowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqGqKh3/lBnao tNDfEcppkv87GI1g+U/F740lYKyU7QSyc6nNRFQ7wOREWwIovENplWEYpK4EOZgp 7MCmY2ftJSBeTK9PYs7+ZpSCDUB7DHjWvqfM6mNnJOo9ot/wPcZxkuoWSbUhywkN Ka/+V7MPN90Iy6yuuM/v+aRIxpkcWycs2qYYYJbm+0qA23KuBu84+BCxDk8yJ8ae qYKb0R5lRihia5sNTfgbBUXKvAJ9cNcqqprvFhR6rI3b3b+FXV+senwlmx3o2JTh pl4ogWP2g/HPJtuoYdiS4EkXx8oOwCblrzovONqNkVQPn6PNP9YcBQvEdhkwKILX CGNDuZWIbwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUOWtHjFyCxwo010FX+35zOfA3zfcwDQYJKoZIhvcNAQELBQAD ggEBAJi4y6zreyouGfqcVbRht+8alNSslbvyovhX/Bx+jVtMlD+7lrxRVNhyT8WU vml0CI9JnzvsRR157Z8HuuaZptFO4S2rcIgbYVxk4+9Q6o0YcblpSNKEiUUd7QDR fmQuqDOiesnMNJzhgU5X46WxiSS1EEpsvGPwz1uOlkxrc4Ax+kyDzgevcDdmrv6N as+WTMdBAfbQlcVuhMGosFiem/kq/g1nZaegqDpB2Pat8sX45HlY0UVEeluNEU0t 0G1FjlhgBUZtzBETGFO3J8aFjP5RsfO8Y++ipc1HydWhQLms1MH2wkVUy2jkSzFI 9xXAb3ofTlwI16tU2PdLfkq5RFQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIbw9tdlNRhL4wDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI2MDMxOTExMzYyNVoXDTM2MDMxNjExMzYyNVowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEA09ub6JuOotlAsN9vGTq5+YCHrwYNPX4NBOaaJfrlhKrnMmfLnlJkQ0bOXO2E yNL9/z/pFNpfCOG5MNcnNg08BJHht6r7oVle5rSkgsG0cU1domT+nqQXPhYjDLGc pxdBJrcgqLzSn8JMG7Jh26BXmvI/OFRZq8+YLiHIcJJVo/h89CLp+5BWqrQONn+V fVnWfUCSpZ/aSuQIutLkUTuM1Q6T7QDB4+GTvw4zg+WPpVwnuvxH70HfsBdxiDGa yyAG5Agf/d6eIQgHH0ReOrWWIlTmzj/VLHK1kDZE+2a8RQ7wb0PJntubZ9MSyuON VS1LRFacp7b6NyfFYtwyxi8khwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU9W9wrU0C8Ce6hA5G8bloOwfR5LYwDQYJ KoZIhvcNAQELBQADggEBAFWrgOpWL+3yujmr3FyKoDGEk6AG/D9Cdna3dE/HM3U/ vnktiKZuBF0EmcMhJgzU6QqltAN/81TMOu8kZpG/kX1NHa/egYNP7Ot5cBdly4tt gsklw3/BgAQ5mOS/sdUs9rMvEnSvjhEWXdw2nlUKhvZKiDWi541NcXYBVewn7/Fi 2kpVDqcYm/ayFIqevvHerl2pV/MkycG4B7Y8A2SPDzhHfv2mFchBWFLBnSTF6k3H LC1Gw04mmZis00xjI6htiYfmNq/BlpGtdoLi+YxGDLeGZFX8lWGfLKtrcWNn+4Oq 6aJUueO4nwboTDwTDXgeIxeqNLc4OEeFsplarC/Ntrc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIW/LcvN0dInkwDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzczOTIxMTc0MB4XDTI2MDMxOTExNTI1 M1oXDTM2MDMxNjExNTI1NFowWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzczOTIxMTc0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxZdU UNxdIS11AvVmZosghEMt6vOVl8TDadoIOmspCY+SI8QOaoMC4fcMepiZkflmk60F MYlxA+YwN7UzWTWywMhXBdbZhYNYJwKS7HNPvWnMRvU7ube0MIc3NRKdWes3sk7a wmXJlJQR07rqWuQY0vzetUKrGqyoa+CXk/EofyljXMy/kzLwVaKA8dg/ZG50LJmm zjjCKiq6VfMqoFcDSVuslfPD+WirqwZEZqejbTEVIFz6mSaooBtFYNB9Zc1K/0rT 42Mpmz6QkKH4T3D8L7LgyxJC5buVQI1GEAup0tMFTnjOBQwQUxUlIoA+JOBOH+Ir /cnE2CFPNSFmXr+ZTwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUhJuYvUrPW7xG8Cybouu2Fi1jaMMwHwYDVR0jBBgw FoAUhJuYvUrPW7xG8Cybouu2Fi1jaMMwDQYJKoZIhvcNAQELBQADggEBALiJoOkE qn/nT98uP/rKMTZkYDnt21LqVbnsNHW/NQy6D8TJ+KY6b80PJofLhOz9eoWCLIe3 8fIrs9ZTwzBoLqNdpGSrK4N1GU7GzkYKo9/rnpEaamemVQYnTq4jIEaNCFIcF4sk eSYyhQKJDee3UEeqDeDXZsvmM96p6RTd/ADOdeFi7yTrS/jUGN8WsVT0PT6AGmUB 6FK7A1Qg929luC5+8cbDACSFnI0XFCgf4okiHdHzkoaAHbQ9pObHB6wY9an6Cr9R CTrDGQ3o+dJ/bTYkiC5W0fJYEO7WspAQDeGFbcXuApH8BOt1yRoggoeZ7I0xBoYK 6g8mCewhgh80lXI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIaBQK0MNBP9swDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzczOTIxMjIzMB4XDTI2MDMxOTExNTM0NFoX DTI4MDMxODExNTM0NVowIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApvycrOGS8CCZ4ZgR EMPmhdg51XetI2azwGhyRSlaP0uAVCSmbzHGleFORhfayQN7AEQ0rTpd21IZKUKY em2mpzw6csS0QM2UUC7AP+nqFK6FdOGrx22L8IG87ajiTsy3E0HDuhM9KT4tfcAu inZjy0eZPaO+0lx7+/9yKeOMeM3cd4qjpBWa49Gsbk0l6NecQIMi6KnYNJo8/siQ QmnWY54/yxcOr7yhAlGLBQvHB3f0cUQUZ0WL4HE2gYnaDfF2CmqA09p3F4ZrWE2q /ytE1gJNIZbwxugf9DSAzVgjyj5JeXsPAy1tvAAczHMuCMOKPgdCNza5il9Tqhxj xYyQoQIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBTWycmBnDdHNjAhOVQuOO6rW9eC bTAfBgNVHSMEGDAWgBQp2P1hbaoxZ6tFrsgot0ldCQWD2jAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBABnLCG/z B4fybmwoV/0c753ynsVyktD9PjwIqPaHXxW38D2lPR0oVPH70bvY3FsQzG4r1suu b+gTqMHEt8bg+WrNF7kswpWpYZtR4uyYXq2lHrhpcJAJ6bbGX+PGnN5Q+qjbCR0B XEyoAQWcF+etVWLbQmaDbI2x4iQ92mXR/KB2OjIlKA3RN83gwsP7T4CPKZ9PL+82 fI7WGaqfuI/lT3AsRvT8ZrP3tnmf3DA0XZy563h0mLA9s5U8kIArk3SxD/8xkSNt mJsKHDxIQVblmKt/AKbKXyx+m5b7mqw9elJ8TafkN28GQIhRTaL9R6c/pwF1yHI+ ri7zQHSwx+CFrMA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NzM5MjEyMjMwHhcNMjYwMzE5MTE1MzQzWhcNMjgwMzE4 MTE1MzQ0WjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NzM5MjEyMjMw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDem6VsfuVsayViPIkrvsEG ob5e9vEbz9eZgwE3P/nWrnomMp3u03/9xJFyLQPosyXgONdk6DpUr+42T61UK7fx Hh/p1vUpFzhPla9G46QS5i9Fw11Kz2sAR0x4PIyFm/UF5wtTHei9ZrjMX+ZXzrgg KowJtLr3zPOYslfxi0hKDZU83Yp5MazaoZbgLEkMjZzg0/9L2Ar0whVDtAXCHG1V wfoXp/MRrXnxm4KTXRmoEceDJAcKGUVVyCCJp8QWdd9hOyAyeCHkegpbbR2l5CXw OfgVrL9GpLcv8c6TkjYyzOSw9Gb5i1aAdDMSaszGve+i2BNePoiaeNmfmSKxXX/h AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBQp2P1hbaoxZ6tFrsgot0ldCQWD2jANBgkqhkiG9w0BAQsFAAOCAQEA vIjFPSmvHOzSyVw5PxKTBC4laz0ARY7L6VipmB3Z+CLxaf1wrgNZ1D/28WAfcfOE mQsMGioYNP/ZH7WM+8a3zioDpc/Fr27WwKIGqfFUOIFU7+HsyvzFLA7ikNHmL+vI 84SQl5Axqs6v1YXIhWlYVFJHCPZn2q5oqg21Xt4ei2BSBCzWVtqNwUOV1Wv4G/ql mk1wpNwZaQxEszSVIMnW2pBbs0JlNFrSR8rM3sTYpoqjThdAdvM6Bxi3XnTa+p+n ogSqLng80VfJzCIIwitHrkD5Xt6vLmnhC8v6PeMvEJ6orC4nv2po+bgkOJDrp4ai G3py/ekdflgFJ6WDUBxYiQ== -----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: "2026-03-19T11:51:49Z" 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: "2026-03-19T12:09:19Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "15660" uid: 6a1ea636-d3a2-497d-9890-5fee55e27071 - 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: "2026-03-19T11:51:52Z" 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":"609d5975-851c-4eb5-89fc-223f8c9517c7"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-19T11:51:52Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 609d5975-851c-4eb5-89fc-223f8c9517c7 resourceVersion: "2865" uid: e7755a0f-d477-4325-90f4-15d6a86bd216 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIdOi8elfcetAwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc3MzkyMTE5NzAe Fw0yNjAzMTkxMTUzMTdaFw0yODA1MTcxMTUzMThaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NzM5MjExOTcwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7IsB/54+Z8zEjYZfqZCxF0yQlCzLbqhJW WDRLQJFVfxTY2BqG/af1nYQ/2SzV8R+w8ScIFpgzt4XrB7PoZt571ZuTyFPRwf7B kpEt5yyH8gv0w+73hKzN4dPoFoyMHJxnMw9R1urCbEvvzeoTCpKrnR+Wk16H1ABN ZDHbupeIGtK1yt2MZBhcc4f7krhsyL6ctk191TP7hC/djZPaVZ1JsRl7adYSubCE 6hKawHjFQ8HmMX2S2Lt8MHX2UFpW4gNpexJBApXF7tGdNzalQzTaDhdV/Z3iq6T6 rDpNSQV9nklZaXTxPBiRyT0pJ+WzeynoJ2NrPOscS5WSkcc0ibKTAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBT2W4BD vfS4Pd4weQO7rxGgjlL1jjAfBgNVHSMEGDAWgBT2W4BDvfS4Pd4weQO7rxGgjlL1 jjANBgkqhkiG9w0BAQsFAAOCAQEAU85URY48PS8gaFY3mrm9mvD34mE+JG1kKqtD gPstW1utTpjRm4Ogrh1cnVr/fzHVjuZLeJlB3CxKefPgfueicPeqUlfwc3qnYv6g I5sjqiN/WIyILT4Ym+sz7xWqksaKtOYQNoKbIRCZWTzEwNCoPGHRr9qk/Ym27T14 wsR5CQq7igz/Mv7qFVrt1lq7nMs7tOzpHJznyH317+lXh/N1js73A9Yq9Bedks58 gE7zNgpjJP76ek0TnKVfq8OPhsCI8OSZRe+9n3zwuGjHsI7cNNPEpcj9jB09kCSU 18orMECLAJ0nTSHBAOwFPrIO7B4EDyKSeeHxhDU+DCUhcoqjwQ== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-03-19T11:51:49Z" 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: "2026-03-19T11:51:49Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-03-19T11:53:30Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5678" uid: ec8d6225-a058-4291-9841-9bfb504c164d - 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": "verbose", "configuration_path": "/etc/kubernetes/cni/net.d/whereabouts.d" } kind: ConfigMap metadata: creationTimestamp: "2026-03-19T11:51:51Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"609d5975-851c-4eb5-89fc-223f8c9517c7"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-19T11:51:51Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 609d5975-851c-4eb5-89fc-223f8c9517c7 resourceVersion: "2863" uid: 149f8211-3d02-4c1d-9dec-01a61c61fd3c kind: ConfigMapList metadata: resourceVersion: "22947"