--- 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.34 creationTimestamp: "2026-03-13T01:11:15Z" 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":"9fbfa930-8a05-41be-9f1e-050bd56df2a4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-13T01:11:15Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9fbfa930-8a05-41be-9f1e-050bd56df2a4 resourceVersion: "2842" uid: 8807babb-7798-4cc7-b67d-2771ec81b4cf - 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.34 creationTimestamp: "2026-03-13T01:11:15Z" 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-13T01:11:15Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2838" uid: bdfdd91e-b3a4-4310-a86a-ab41a161dbbe - 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.34 creationTimestamp: "2026-03-13T01:11:15Z" 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":"9fbfa930-8a05-41be-9f1e-050bd56df2a4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-13T01:11:15Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9fbfa930-8a05-41be-9f1e-050bd56df2a4 resourceVersion: "2837" uid: e7fec5f6-faf7-415c-94ca-6d09ee4c6ebd - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIcoVeo/aSg7cwDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjYwMzEzMDA1NTM5WhcNMzYwMzEwMDA1NTM5WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMImi49H2oqHWOolPbxCGOCksg4jFPXJ BZbWY3jvvzF3IliLma8Er1+kWAxOmT0EMDEobxxGTLhswIqN9farc+zj07hIGHnm URoRCLeZZhLbBOUwHNenfOGPUws8ZHG8ewlmef+j4MAqoikxDJ5+dOn8TNb7A2IT 6SrMwvayCMHyoxe1WZzrhfyqhdWwqNmRIiDq8PM8Rz6rx8kE8mcRjZVykzYpUaEP OCyDtQ5llMcmyvH2kNpoBkefM8STIWq8TcdFJdQOoH112X6rvDgOLinwpTpZTBTw R5426NI1Y9w404hdy+glyCy+G2DJw6P+IZFzg5gsmJZk6Mp9pidw1X0CAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGrj oCiYIFN6kbZlgEG/z7X2SA+OMA0GCSqGSIb3DQEBCwUAA4IBAQCnJ2ZzD3LV0BYk h5kiov/VfD9R8b4mpBDNaza9DcD3pO4ADcDQ+5iJaK+Oyd0Be2puFQ6DJ56qlh+f SaD7uFEKP2UYLsbnSiSw63kpeBS4khxY3q862l3OO9Ql/z95Ncd+dYEt2WES1jbY WpkBfYEdsA9su5AKUg0GCPDVU1VwbCDKLH9Wq8T7t4+zs8VQDEDKRMGi3dA0Vohk EcvBO8L1HzKHoJfMed4jmGnnKDQSr7FlWmQQi6WPJW2IY5ZfBBp0JObITcP4vk2g dXsu9LsHGpTehtVbu4SBGGJJZmVz/10vVwAIRIOZqr9vMnfkBBsX3282NjyE3JQj 1lLS5kEC -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIIVD7/z9vPV8wwDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI2MDMxMzAwNTUzOVoXDTM2MDMxMDAwNTUzOVowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAueePpe5dtAtB 21q+XtFDJKFJTEbrFaQ6Ri8Wgs8XgOlljnc9aJXpPC5QjLfX6j3JOFGtSqB4u8bN nkCb91YrkiHIBEcPlZ5VftzGdCgcnPBlBk/Prw+mO1Dnb5NKyxAFCSi93u5KBiQy 9y9SHfUvf8/SKfaK52c2Rszp3r4YGMSQrffVFLLdICs6Wq2UA+dkgCPjQK+h8h+o P9KjEGSKRoXXQwEzDnenrKdZtuTLQukSduvXlH4VNHYn0Pz9sig78EQPK5OIQSdj 8KXKTIj52x2ZtIcyzqOGi0hmG5J82mDgWInjK2q0qfFQ/CYQQNMII27eeREtQwkt gdz6TD5WWQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUwHHwLgCHk6sKGZAGHYbMc4V32DQwDQYJKoZIhvcNAQELBQAD ggEBAAd520dhNKviy4f02r8hcu7rOZGWAEWnYkt2YAQ9qLoSsOuH3zdLZ7rnqfN6 dqE77mExZA9wXu9vm6ZSr4c4tCNmuNpFTCIW9plqDrGa4PTOe3zVLeGpDxqwxYl0 sRex2nBq1WOCjKSp1PaL+0hnerQS68nac0tc814YlDKBTseFPyCiOsaYr6Q+Akk+ 1fqZLUSx2Zi9ZbYdGmnnzr3Z1sH3yCqTbtxYLLZtm84kRqI6vL2wq0vpjFV6P0Wn gT9e2BF3I1bdzcpV1urDPsW/K40H7EAgn/noVtz8AP1wtLiqrh2lUNzGrYuAUMs3 DlXv3A9ZWyp5Wk1EE8le2GCX7/w= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIINutGZ5iYTAAwDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI2MDMxMzAwNTUzOVoXDTM2MDMxMDAwNTUzOVowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAx/rUe/rqovybS/YQDwHdl9QDfkA2KiCLHiA034mQgC8wmXiP6j9R37gf+qIM mHY+GfvWbKIgnMaeM+PuazKJYGky9R4iwavYB6K6wPnAp9Ngp3HTpY5q2Pu23qmY ynljYRMxtXr6WR+hHLkuMp20Hp99SGQbo2uis/2/GZNtfS8m2iUCX+oFqpq1OCSW c3gNdPoaDaGX0wN3V2hWDItSI4e1fEEDxsqgO7XofcXHzNko38grtYVr4QgQH0lD aSjMiFRDolkzWXpasRtqy+w6ZAuD1ZWTpazS3fHjIzz5x7RJRDU9CMcSWq1r91F4 N925uW3G7Ut0YPVSyhF92nmxQQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUqwonMBgUHVKP+kNRv+ZvW/kabyAwDQYJ KoZIhvcNAQELBQADggEBAKP5/DATNfNWCyHblWZl0STIrw+q2rXfzC2D3F7BBSxY Mn9R+qmhnhZ5Gzh01QN9FFv1xAk6HY4sbq1IAiAj9Uii+TrciOY2QuzldW/Z3MZR xhlUYhxw1r+Mer4iLLfxECzi6GstJ4UdhjLO+bmT53y8zn8qeRbZ9/eayDBcHg63 g+4u8imbrT1nCLhHkaOiWYf39AYZLlMrUYvj7w5SVOczyNzf/ISEKPkHOUPPSPBv PoSIq/dTl/wuh8QEk97A5yNPUtP8ZmLR8Ym0BdPCpRSabiw1XmrorfCojIxaw8hL O0UQ908APtDjFCX0mv3T947cvkkSd4vDVRszTAWAERw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIbov7OUX87uIwDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzczMzY0MzM0MB4XDTI2MDMxMzAxMTIx M1oXDTM2MDMxMDAxMTIxNFowWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzczMzY0MzM0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoxgP lkz7zKp0jYIfQFaLWxnLk++CjC70dmcvLJpFdc/59IhR/VgEmuYsz6NIEScFHBP3 qgDztSgT82YitkaZXuSlPOO3RtuIM5bic81SjQyBUf65KJP8SsaghexjSe7abwSL sarrsz4XpM9KYDOdj5fhRQq33fQW85TJm9k+1z5w8kb6F6WIzUcrTx1/I6+Uc5SG V0RXQKtuTNavZJrB9PBcR5nYINNQo32ASnJXgCulEjpeI2bTAfZ3zDObkHEgfm3t +ZMsfmkD1vcnQnReAZPc39ISCEvUoIO9x+6WR/Oo9vl9++3Hla1YPZ+0gepjM/b3 lUUYx9pRtmUVryJpeQIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUYDGsYuGfe1C9nG1B4N5zzIzTqTowHwYDVR0jBBgw FoAUYDGsYuGfe1C9nG1B4N5zzIzTqTowDQYJKoZIhvcNAQELBQADggEBADhcdmdy M6ulMwDigWC2Kmj7ibMFVVR1pPCdThcMGxjz/sI9OvQLN6M2ZPmlZZQhPuLUL8QC TGII0pEx9NpLKm34jQJ0fOCxgDxOCafBI+fNNeAz0IosXWt4uA+C9VMVj7av1sjE y6cq6QwTF0irmW6UyHgWXfvjVJagxzaddhTcVHJkhkhd2tpkjO6UROceB7oW0lC+ 2iBdoy5RTOOMNT3ODcCPwuCCz/PHZ5JhEY8fq7ak5fkG2jDb+FX3zVDIiXbUdDWY D0WlyfeUhKg4c2pS5Ehp2ob0zezQ0eQNzACQSqSaAkIzNGG8VU5szn8u73iZgpUM 8GmbihF5fNi2WXw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIR33yzA+d9IcwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzczMzY0MzY1MB4XDTI2MDMxMzAxMTI0NVoX DTI4MDMxMjAxMTI0NlowIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnIQz1kdn7ILv996s XGFuekVmLkVospDUjhTmXyedwAMYmws4rwaZNZ2ba1IMPyLNANtnDDDnGde3zJVl lqkB9Y2AABneVr0iHSvgtrJy5d2Zn+PZKhY/RKfUuvRWLQEb6gAGvNX+n/e4ImKc CmfHrl6FL5HzAZzI6pqJcDz3GIHZV6vIGwbVnIna1CZNRz3JoPKCBEkndZGT1hBz 1SWvyBK3TBn2gPlABNBvai9lVd7fgG2uDHWQTbByUc218Ty5dQ2JUQ0a9igTXozl tytyL/7UYOX083EjqaBy3Pq6Co1Uf5pisKtgAJMMbQl5MMxvTOqlfCCCka/2ozPF nQVzfwIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBRTjfb5/JAIrZYqqYiyw3fEv833 0TAfBgNVHSMEGDAWgBQjEDDvFtFIUHLQVPP7fpm59zTFqTAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBAGXtfbE+ Z8k0ZbKaruwBbLpKiKoJAZGlJCG00h2tHv94dGyukK6lkEcVZkKIypSEqFB5al4k MSixzLO8iZpu4IV7z4iI442l7ztL8YGkdxVyGxTo7OWnQAxc3tmYmDKOGYIY3rkS 5dhkebzbnkXSdTB2wO8Ie6+nw1GucKeCc5dSMwDB6e7Zd+LlKZzrxmEJkfjY5UR5 ZYXvPY6++fXQbcFH+fg4q941O1qhhzHU55pe604cUKWmLcorTCXQu62YSbWQ0Q8Y E/iTYhKRXaTzwnkqH+W0EfV842+DHIZT6FroxHBZaJxHcEuWvAm3Iz8sQezt/BR7 AcQd5MiWpr/MmDI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NzMzNjQzNjUwHhcNMjYwMzEzMDExMjQ0WhcNMjgwMzEy MDExMjQ1WjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NzMzNjQzNjUw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDjkcyX9Od9+ztx/V7CGAat Jcl+wQhtkeiSUCVO/SY25vMOkVqy916WEHcpleZEvxV0cT0fjXChxA3hyKSZ4Hsm UtddEoFNK1VzqM5sSyjmtGsddqr7HtMFQ+59q3p3MyL68yMM8+h+IJyyPc1nTJ8z pFubWwGTmC5d+dQJ7vCTVF1lsNcuS3ebuo/GAc8Aotj9Dp0+gK0nmhWVaXCL880x 4k5frPuaKbb7nG+ozkcwI4YGkgnUwOjtRaGWP+tXEbg+JzRhvkLzhzjJBIpHgHHv K7cCTzl6xJyxOz5J7A8/jFU/neLUJYBYBkdiNcU3nPp04BTy8ioZh4yLg0W1KBuP AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBQjEDDvFtFIUHLQVPP7fpm59zTFqTANBgkqhkiG9w0BAQsFAAOCAQEA S27rgIbFQOefU0VWc8w6aIPuU66fHVCg+PCQJ8tkTQWL/JjI/mwZcPjiClxEozG+ 1gWBE3VOGLtEC7A/WUHQlgY5SzAm2FAQSSAVTZ7/wZkPq2FV3pjJgP+LP0gdaYBk c2YOsNy9sA4oSSVrg0lbyUdtAxTqlDZ3iRmCkye28+T+Lf7M90UPNo4YDiJbDp4l L5t9QNgOUYmQPLaESb01jZZAWrxBfvFqtrgnTCvL4TvO9ZzS82fWZ6qvKxyYSATb JEKa3yVyGfnRUQy15P3xbLNbbKVjrNKQ9BTJmmYwKoKuy9h9AVwnwsYDw5tDiIiT zV4MjI6A4v/tUXlRXUdEQA== -----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-13T01:11:13Z" 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-13T01:17:51Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "10884" uid: cf1bebc4-3516-4a6d-8c08-affba6710d73 - 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-13T01:11:16Z" 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":"9fbfa930-8a05-41be-9f1e-050bd56df2a4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-13T01:11:16Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9fbfa930-8a05-41be-9f1e-050bd56df2a4 resourceVersion: "2844" uid: 8bfb45e9-cfb5-46f9-b9f9-48ce4f51b0ab - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIAj0X4OqRAa8wDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc3MzM2NDM0MjAe Fw0yNjAzMTMwMTEyMjFaFw0yODA1MTEwMTEyMjJaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NzMzNjQzNDIwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDibCsJXt0NAr6zISujagU0oPxZEQ6R3I+G QWHtDnLtZ6wqqrv7jgqHgDa0Bu8BSZLOo65lNKFOWyNIsRq4Hqstq0ptt1H+WKEx brV2QX3fX9lwzhXILBwaJdopBK4c+Vg2pT0c3mahoWc2w5MknxsahS/TisNNbcYt sTuF8pKpJ+RDhXKJ79AQQnMKhVp2W5bnSFN1onCrYB+ajJqAlg0kjQ0NDl5GO1UL +YBKAtD7I5zBwXAe7E7NmJVOLmAFcqmE2ioxG+7HdJfPbmAPaXa4GhCpk7QIJkV+ IpKqFCwmtauDxyehhPCD0HsILN0lmIxWU29yL91kBzn4hXlJfynRAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQKxlhk EY9KjvrTvMZqsc6fAMDBijAfBgNVHSMEGDAWgBQKxlhkEY9KjvrTvMZqsc6fAMDB ijANBgkqhkiG9w0BAQsFAAOCAQEAzVp2YNumoJ1MJXmtLisIE7Z+tXrGb6REf4Q7 /+7e8x54QLPcFQGn+ZYyt538FEYAU/yFKG0xkNXZfnL7k7X5Tw+buLZWYB2CyVYj JYFSYE+EdqRBOJuGEeua7LYtvOdvW0GT6SXom3+ZmkHJgzE7WxQWyB+OKXDpN1eJ ej8dhBzqXae7P0SSQx+bvzE2VTtO8Tx1VXHQdRz+rnZL+Pa6bWFzikxAqkmh+VUJ qwHlkI0/F+y+0suJuqfalxJB7aSsCh2NortyJuanbyCO4cdK4oncrpUi5FvKPwu4 FXeA5t3gI0NtWuXn7//Q9+CmlTzuapCjMFpdRQJ5lz1f9ip6wA== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-03-13T01:11:13Z" 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-13T01:11:13Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-03-13T01:12:33Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5248" uid: 9dba3d40-5a05-4f80-978a-f07bd89d7bcf - 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: "2026-03-13T01:11:15Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"9fbfa930-8a05-41be-9f1e-050bd56df2a4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-13T01:11:15Z" name: whereabouts-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9fbfa930-8a05-41be-9f1e-050bd56df2a4 resourceVersion: "2843" uid: 363746fd-1878-41ad-a335-8e582fadae0f kind: ConfigMapList metadata: resourceVersion: "21734"