--- apiVersion: v1 items: - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.134.0.64/23"],"mac_address":"0a:58:0a:86:00:40","gateway_ips":["10.134.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.134.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.134.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.134.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.134.0.1"}],"ip_address":"10.134.0.64/23","gateway_ip":"10.134.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.134.0.64" ], "mac": "0a:58:0a:86:00:40", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-09-11T00:00:00Z" generateName: image-pruner-29818080- generation: 1 labels: batch.kubernetes.io/controller-uid: a48b27c4-8e79-4ecd-aa08-bb5b404bd0ea batch.kubernetes.io/job-name: image-pruner-29818080 controller-uid: a48b27c4-8e79-4ecd-aa08-bb5b404bd0ea job-name: image-pruner-29818080 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-134-115 operation: Update subresource: status time: "2026-09-11T00:00:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:generateName: {} f:labels: .: {} f:batch.kubernetes.io/controller-uid: {} f:batch.kubernetes.io/job-name: {} f:controller-uid: {} f:job-name: {} f:ownerReferences: .: {} k:{"uid":"a48b27c4-8e79-4ecd-aa08-bb5b404bd0ea"}: {} f:spec: f:affinity: {} f:containers: k:{"name":"image-pruner"}: .: {} f:args: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/var/run/configmaps/serviceca"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"serviceca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-09-11T00:00:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-09-11T00:00:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:reason: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:reason: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.134.0.64"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-09-11T00:00:02Z" name: image-pruner-29818080-s6gs7 namespace: openshift-image-registry ownerReferences: - apiVersion: batch/v1 blockOwnerDeletion: true controller: true kind: Job name: image-pruner-29818080 uid: a48b27c4-8e79-4ecd-aa08-bb5b404bd0ea resourceVersion: "43121" uid: 931e2487-bf61-45d1-b887-a0732a343188 spec: affinity: {} containers: - args: - -c - | set -eu "$@" && exit for i in 1 2 3 4 5; do echo "attempt #$i has failed (exit code $?), going to make another attempt..." >&2 sleep $(($i * 30)) "$@" && break # this is the last command of the script, so its last failure will be exit code of the script done - arg0 - oc - adm - prune - images - --confirm=true - --certificate-authority=/var/run/configmaps/serviceca/service-ca.crt - --keep-tag-revisions=3 - --keep-younger-than=60m - --ignore-invalid-refs=true - --loglevel=1 - --prune-registry=true - --registry-url=https://image-registry.openshift-image-registry.svc:5000 command: - /bin/sh image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0444a9580f430c7c6b52f78667a80a82198c825805f1f2004fdfdf9aed2b95f5 imagePullPolicy: IfNotPresent name: image-pruner resources: requests: cpu: 100m memory: 256Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000290000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/configmaps/serviceca name: serviceca readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-v95b9 readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: pruner-dockercfg-rk97b nodeName: ip-10-0-134-115.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Never schedulerName: default-scheduler securityContext: fsGroup: 1000290000 seLinuxOptions: level: s0:c17,c9 seccompProfile: type: RuntimeDefault serviceAccount: pruner serviceAccountName: pruner terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - configMap: defaultMode: 420 name: serviceca name: serviceca - name: kube-api-access-v95b9 projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-09-11T00:00:02Z" observedGeneration: 1 status: "False" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-09-11T00:00:00Z" observedGeneration: 1 reason: PodCompleted status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-09-11T00:00:00Z" observedGeneration: 1 reason: PodCompleted status: "False" type: Ready - lastProbeTime: null lastTransitionTime: "2026-09-11T00:00:00Z" observedGeneration: 1 reason: PodCompleted status: "False" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-09-11T00:00:00Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 256Mi containerID: cri-o://166b26ecabc6d326e3529bef714d129c42e4b9367a77f230a43c3dd181a19e32 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0444a9580f430c7c6b52f78667a80a82198c825805f1f2004fdfdf9aed2b95f5 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0444a9580f430c7c6b52f78667a80a82198c825805f1f2004fdfdf9aed2b95f5 lastState: {} name: image-pruner ready: false resources: requests: cpu: 100m memory: 256Mi restartCount: 0 started: false state: terminated: containerID: cri-o://166b26ecabc6d326e3529bef714d129c42e4b9367a77f230a43c3dd181a19e32 exitCode: 0 finishedAt: "2026-09-11T00:00:01Z" reason: Completed startedAt: "2026-09-11T00:00:00Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000290000 uid: 1000290000 volumeMounts: - mountPath: /var/run/configmaps/serviceca name: serviceca readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-v95b9 readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.134.115 hostIPs: - ip: 10.0.134.115 observedGeneration: 1 phase: Succeeded podIP: 10.134.0.64 podIPs: - ip: 10.134.0.64 qosClass: Burstable startTime: "2026-09-11T00:00:00Z" - apiVersion: v1 kind: Pod metadata: annotations: imageregistry.operator.openshift.io/dependencies-checksum: sha256:96d8c6a83213b1ab07b4861911984543804daf1bfb86a93afb422a173158852d k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.15/23"],"mac_address":"0a:58:0a:85:00:0f","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.15/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.15" ], "mac": "0a:58:0a:85:00:0f", "default": true, "dns": {} }] openshift.io/required-scc: restricted-v2 openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-09-10T23:37:57Z" generateName: image-registry-5cc958457f- generation: 1 labels: docker-registry: default pod-template-hash: 5cc958457f managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-139-147 operation: Update subresource: status time: "2026-09-10T23:37:57Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:imageregistry.operator.openshift.io/dependencies-checksum: {} f:openshift.io/required-scc: {} f:target.workload.openshift.io/management: {} f:generateName: {} f:labels: .: {} f:docker-registry: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"158f590c-5c75-451f-8a2e-fc2818c0935d"}: {} f:spec: f:containers: k:{"name":"registry"}: .: {} f:command: {} f:env: .: {} k:{"name":"REGISTRY_HEALTH_STORAGEDRIVER_ENABLED"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HEALTH_STORAGEDRIVER_INTERVAL"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HEALTH_STORAGEDRIVER_THRESHOLD"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HTTP_ADDR"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HTTP_NET"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HTTP_SECRET"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HTTP_TLS_CERTIFICATE"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_HTTP_TLS_KEY"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_LOG_LEVEL"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_OPENSHIFT_METRICS_ENABLED"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_OPENSHIFT_QUOTA_ENABLED"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_OPENSHIFT_SERVER_ADDR"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_CACHE_BLOBDESCRIPTOR"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_DELETE_ENABLED"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_S3_BUCKET"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_S3_CREDENTIALSCONFIGPATH"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_S3_ENCRYPT"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_S3_FORCEPATHSTYLE"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_S3_REGION"}: .: {} f:name: {} f:value: {} k:{"name":"REGISTRY_STORAGE_S3_USEDUALSTACK"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:lifecycle: .: {} f:preStop: .: {} f:exec: .: {} f:command: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":5000,"protocol":"TCP"}: .: {} f:containerPort: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/pki/ca-trust/extracted"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/etc/pki/ca-trust/source/anchors"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/etc/secrets"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/usr/share/pki/ca-trust-source"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/lib/kubelet/"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/run/secrets/cloud"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/run/secrets/openshift/serviceaccount"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:nodeSelector: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:fsGroup: {} f:fsGroupChangePolicy: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:topologySpreadConstraints: .: {} k:{"topologyKey":"kubernetes.io/hostname","whenUnsatisfiable":"DoNotSchedule"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} k:{"topologyKey":"node-role.kubernetes.io/worker","whenUnsatisfiable":"DoNotSchedule"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} k:{"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"DoNotSchedule"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} f:volumes: .: {} k:{"name":"bound-sa-token"}: .: {} f:name: {} f:projected: .: {} f:defaultMode: {} f:sources: {} k:{"name":"ca-trust-extracted"}: .: {} f:emptyDir: {} f:name: {} k:{"name":"image-registry-private-configuration"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:optional: {} f:secretName: {} k:{"name":"installation-pull-secrets"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:optional: {} f:secretName: {} k:{"name":"registry-certificates"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"registry-tls"}: .: {} f:name: {} f:projected: .: {} f:defaultMode: {} f:sources: {} k:{"name":"trusted-ca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:items: {} f:name: {} f:optional: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-09-10T23:37:57Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-09-10T23:37:57Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.15"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-09-10T23:38:18Z" name: image-registry-5cc958457f-jp6d6 namespace: openshift-image-registry ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: image-registry-5cc958457f uid: 158f590c-5c75-451f-8a2e-fc2818c0935d resourceVersion: "9728" uid: 9a6499b2-8d93-4e40-9d1f-2b5c3185b93c spec: containers: - command: - /bin/sh - -c - mkdir -p /etc/pki/ca-trust/extracted/edk2 /etc/pki/ca-trust/extracted/java /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/pem && update-ca-trust extract --output /etc/pki/ca-trust/extracted/ && exec /usr/bin/dockerregistry env: - name: REGISTRY_STORAGE value: s3 - name: REGISTRY_STORAGE_S3_BUCKET value: 6af11428cf52-image-registry-us-east-1-ubsebosxwjfooqkmatqxeiaj - name: REGISTRY_STORAGE_S3_REGION value: us-east-1 - name: REGISTRY_STORAGE_S3_ENCRYPT value: "true" - name: REGISTRY_STORAGE_S3_FORCEPATHSTYLE value: "true" - name: REGISTRY_STORAGE_S3_CREDENTIALSCONFIGPATH value: /var/run/secrets/cloud/credentials - name: REGISTRY_STORAGE_S3_USEDUALSTACK value: "true" - name: REGISTRY_HTTP_ADDR value: :5000 - name: REGISTRY_HTTP_NET value: tcp - name: REGISTRY_HTTP_SECRET value: 47d0bc17db9537525349fef00fd65c0e21e3982cb48117d36d475bdd59d6981cf6bc9750fd7e89c83e8087b6f6aa8d56d86d53a22d7e2dfc1d4bdbc4cb29ed64 - name: REGISTRY_LOG_LEVEL value: info - name: REGISTRY_OPENSHIFT_QUOTA_ENABLED value: "true" - name: REGISTRY_STORAGE_CACHE_BLOBDESCRIPTOR value: inmemory - name: REGISTRY_STORAGE_DELETE_ENABLED value: "true" - name: REGISTRY_HEALTH_STORAGEDRIVER_ENABLED value: "true" - name: REGISTRY_HEALTH_STORAGEDRIVER_INTERVAL value: 10s - name: REGISTRY_HEALTH_STORAGEDRIVER_THRESHOLD value: "1" - name: REGISTRY_OPENSHIFT_METRICS_ENABLED value: "true" - name: REGISTRY_OPENSHIFT_SERVER_ADDR value: image-registry.openshift-image-registry.svc:5000 - name: REGISTRY_HTTP_TLS_CERTIFICATE value: /etc/secrets/tls.crt - name: REGISTRY_HTTP_TLS_KEY value: /etc/secrets/tls.key image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imagePullPolicy: IfNotPresent lifecycle: preStop: exec: command: - sleep - "25" livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 5000 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 name: registry ports: - containerPort: 5000 protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /healthz port: 5000 scheme: HTTPS initialDelaySeconds: 15 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 resources: requests: cpu: 100m memory: 256Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000290000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/secrets/cloud name: image-registry-private-configuration readOnly: true - mountPath: /etc/secrets name: registry-tls - mountPath: /etc/pki/ca-trust/extracted name: ca-trust-extracted - mountPath: /etc/pki/ca-trust/source/anchors name: registry-certificates - mountPath: /usr/share/pki/ca-trust-source name: trusted-ca - mountPath: /var/lib/kubelet/ name: installation-pull-secrets - mountPath: /var/run/secrets/openshift/serviceaccount name: bound-sa-token readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-n85kv readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: registry-dockercfg-67vss nodeName: ip-10-0-139-147.ec2.internal nodeSelector: kubernetes.io/os: linux preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000290000 fsGroupChangePolicy: OnRootMismatch seLinuxOptions: level: s0:c17,c9 seccompProfile: type: RuntimeDefault serviceAccount: registry serviceAccountName: registry terminationGracePeriodSeconds: 55 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists topologySpreadConstraints: - labelSelector: matchLabels: docker-registry: default maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule - labelSelector: matchLabels: docker-registry: default maxSkew: 1 topologyKey: node-role.kubernetes.io/worker whenUnsatisfiable: DoNotSchedule - labelSelector: matchLabels: docker-registry: default maxSkew: 1 topologyKey: topology.kubernetes.io/zone whenUnsatisfiable: DoNotSchedule volumes: - name: image-registry-private-configuration secret: defaultMode: 420 optional: false secretName: image-registry-private-configuration - name: registry-tls projected: defaultMode: 420 sources: - secret: name: image-registry-tls - emptyDir: {} name: ca-trust-extracted - configMap: defaultMode: 420 name: image-registry-certificates name: registry-certificates - configMap: defaultMode: 420 items: - key: ca-bundle.crt path: anchors/ca-bundle.crt name: trusted-ca optional: true name: trusted-ca - name: installation-pull-secrets secret: defaultMode: 420 items: - key: .dockerconfigjson path: config.json optional: true secretName: installation-pull-secrets - name: bound-sa-token projected: defaultMode: 420 sources: - serviceAccountToken: audience: openshift expirationSeconds: 3600 path: token - name: kube-api-access-n85kv projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:57Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:57Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-09-10T23:38:18Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-09-10T23:38:18Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:57Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 256Mi containerID: cri-o://1577606bcaec51472ffeb3221cc2d2302e63450ad83a8a04679de8e7e0cb3e55 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1551103d3d88ed60b0d858ebf78131cb83c77f404ed6f5ce6a08bce153a30fb8 lastState: {} name: registry ready: true resources: requests: cpu: 100m memory: 256Mi restartCount: 0 started: true state: running: startedAt: "2026-09-10T23:37:57Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000290000 uid: 1000290000 volumeMounts: - mountPath: /var/run/secrets/cloud name: image-registry-private-configuration readOnly: true recursiveReadOnly: Disabled - mountPath: /etc/secrets name: registry-tls - mountPath: /etc/pki/ca-trust/extracted name: ca-trust-extracted - mountPath: /etc/pki/ca-trust/source/anchors name: registry-certificates - mountPath: /usr/share/pki/ca-trust-source name: trusted-ca - mountPath: /var/lib/kubelet/ name: installation-pull-secrets - mountPath: /var/run/secrets/openshift/serviceaccount name: bound-sa-token readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-n85kv readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.139.147 hostIPs: - ip: 10.0.139.147 observedGeneration: 1 phase: Running podIP: 10.133.0.15 podIPs: - ip: 10.133.0.15 qosClass: Burstable startTime: "2026-09-10T23:37:57Z" - apiVersion: v1 kind: Pod metadata: annotations: openshift.io/required-scc: privileged openshift.io/scc: privileged security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-09-10T23:36:51Z" generateName: node-ca- generation: 1 labels: controller-revision-hash: db6dbdd9 name: node-ca pod-template-generation: "1" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:openshift.io/required-scc: {} f:target.workload.openshift.io/management: {} f:generateName: {} f:labels: .: {} f:controller-revision-hash: {} f:name: {} f:pod-template-generation: {} f:ownerReferences: .: {} k:{"uid":"c22ccae6-51fa-49d5-a051-5751a388f8c7"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"node-ca"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:privileged: {} f:readOnlyRootFilesystem: {} f:runAsGroup: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/docker/certs.d"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp/serviceca"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:hostNetwork: {} f:nodeSelector: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} f:volumes: .: {} k:{"name":"host"}: .: {} f:hostPath: .: {} f:path: {} f:type: {} f:name: {} k:{"name":"serviceca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-09-10T23:36:51Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.0.134.115"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-09-10T23:37:12Z" name: node-ca-6rwlz namespace: openshift-image-registry ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: DaemonSet name: node-ca uid: c22ccae6-51fa-49d5-a051-5751a388f8c7 resourceVersion: "7006" uid: 2ef2ea39-f2e5-446d-9485-ae649a729cd3 spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchFields: - key: metadata.name operator: In values: - ip-10-0-134-115.ec2.internal containers: - command: - /bin/sh - -c - | trap 'jobs -p | xargs -r kill; echo shutting down node-ca; exit 0' TERM while [ true ]; do for f in $(ls /tmp/serviceca); do echo $f ca_file_path="/tmp/serviceca/${f}" f=$(echo $f | sed -r 's/(.*)\.\./\1:/') reg_dir_path="/etc/docker/certs.d/${f}" if [ -e "${reg_dir_path}" ]; then cp -u $ca_file_path $reg_dir_path/ca.crt else mkdir $reg_dir_path cp $ca_file_path $reg_dir_path/ca.crt fi done for d in $(ls /etc/docker/certs.d); do echo $d dp=$(echo $d | sed -r 's/(.*):/\1\.\./') reg_conf_path="/tmp/serviceca/${dp}" if [ ! -e "${reg_conf_path}" ]; then rm -rf /etc/docker/certs.d/$d fi done sleep 60 & wait ${!} done image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imagePullPolicy: IfNotPresent name: node-ca resources: requests: cpu: 10m memory: 10Mi securityContext: privileged: true readOnlyRootFilesystem: true runAsGroup: 0 runAsNonRoot: true runAsUser: 1001 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /tmp/serviceca name: serviceca - mountPath: /etc/docker/certs.d name: host - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-wvfxr readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true hostNetwork: true imagePullSecrets: - name: node-ca-dockercfg-hf66z nodeName: ip-10-0-134-115.ec2.internal nodeSelector: kubernetes.io/os: linux preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: node-ca serviceAccountName: node-ca terminationGracePeriodSeconds: 30 tolerations: - operator: Exists volumes: - hostPath: path: /etc/docker/certs.d type: "" name: host - configMap: defaultMode: 420 name: image-registry-certificates name: serviceca - name: kube-api-access-wvfxr projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:12Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:52Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:12Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:12Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:51Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 10m memory: 10Mi containerID: cri-o://ab20cded2acbb80736d3eef85dbcc084194bda8814de62b0f98cac4265993ae7 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1551103d3d88ed60b0d858ebf78131cb83c77f404ed6f5ce6a08bce153a30fb8 lastState: {} name: node-ca ready: true resources: requests: cpu: 10m memory: 10Mi restartCount: 0 started: true state: running: startedAt: "2026-09-10T23:37:11Z" user: linux: gid: 0 supplementalGroups: - 0 uid: 1001 volumeMounts: - mountPath: /tmp/serviceca name: serviceca - mountPath: /etc/docker/certs.d name: host - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-wvfxr readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.134.115 hostIPs: - ip: 10.0.134.115 observedGeneration: 1 phase: Running podIP: 10.0.134.115 podIPs: - ip: 10.0.134.115 qosClass: Burstable startTime: "2026-09-10T23:36:52Z" - apiVersion: v1 kind: Pod metadata: annotations: openshift.io/required-scc: privileged openshift.io/scc: privileged security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-09-10T23:36:25Z" generateName: node-ca- generation: 1 labels: controller-revision-hash: db6dbdd9 name: node-ca pod-template-generation: "1" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:openshift.io/required-scc: {} f:target.workload.openshift.io/management: {} f:generateName: {} f:labels: .: {} f:controller-revision-hash: {} f:name: {} f:pod-template-generation: {} f:ownerReferences: .: {} k:{"uid":"c22ccae6-51fa-49d5-a051-5751a388f8c7"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"node-ca"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:privileged: {} f:readOnlyRootFilesystem: {} f:runAsGroup: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/docker/certs.d"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp/serviceca"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:hostNetwork: {} f:nodeSelector: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} f:volumes: .: {} k:{"name":"host"}: .: {} f:hostPath: .: {} f:path: {} f:type: {} f:name: {} k:{"name":"serviceca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-09-10T23:36:25Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.0.139.142"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-09-10T23:36:46Z" name: node-ca-f7fjr namespace: openshift-image-registry ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: DaemonSet name: node-ca uid: c22ccae6-51fa-49d5-a051-5751a388f8c7 resourceVersion: "6279" uid: 7be68ac6-c59b-4afa-9974-a39f8067c1f7 spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchFields: - key: metadata.name operator: In values: - ip-10-0-139-142.ec2.internal containers: - command: - /bin/sh - -c - | trap 'jobs -p | xargs -r kill; echo shutting down node-ca; exit 0' TERM while [ true ]; do for f in $(ls /tmp/serviceca); do echo $f ca_file_path="/tmp/serviceca/${f}" f=$(echo $f | sed -r 's/(.*)\.\./\1:/') reg_dir_path="/etc/docker/certs.d/${f}" if [ -e "${reg_dir_path}" ]; then cp -u $ca_file_path $reg_dir_path/ca.crt else mkdir $reg_dir_path cp $ca_file_path $reg_dir_path/ca.crt fi done for d in $(ls /etc/docker/certs.d); do echo $d dp=$(echo $d | sed -r 's/(.*):/\1\.\./') reg_conf_path="/tmp/serviceca/${dp}" if [ ! -e "${reg_conf_path}" ]; then rm -rf /etc/docker/certs.d/$d fi done sleep 60 & wait ${!} done image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imagePullPolicy: IfNotPresent name: node-ca resources: requests: cpu: 10m memory: 10Mi securityContext: privileged: true readOnlyRootFilesystem: true runAsGroup: 0 runAsNonRoot: true runAsUser: 1001 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /tmp/serviceca name: serviceca - mountPath: /etc/docker/certs.d name: host - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-pq45v readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true hostNetwork: true imagePullSecrets: - name: node-ca-dockercfg-hf66z nodeName: ip-10-0-139-142.ec2.internal nodeSelector: kubernetes.io/os: linux preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: node-ca serviceAccountName: node-ca terminationGracePeriodSeconds: 30 tolerations: - operator: Exists volumes: - hostPath: path: /etc/docker/certs.d type: "" name: host - configMap: defaultMode: 420 name: image-registry-certificates name: serviceca - name: kube-api-access-pq45v projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:46Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:26Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:46Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:46Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:25Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 10m memory: 10Mi containerID: cri-o://4be7387e51484dd33d99eec94e5a66c9d5a5c487c4a6c5974a64e13bc02a5615 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1551103d3d88ed60b0d858ebf78131cb83c77f404ed6f5ce6a08bce153a30fb8 lastState: {} name: node-ca ready: true resources: requests: cpu: 10m memory: 10Mi restartCount: 0 started: true state: running: startedAt: "2026-09-10T23:36:46Z" user: linux: gid: 0 supplementalGroups: - 0 uid: 1001 volumeMounts: - mountPath: /tmp/serviceca name: serviceca - mountPath: /etc/docker/certs.d name: host - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-pq45v readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.139.142 hostIPs: - ip: 10.0.139.142 observedGeneration: 1 phase: Running podIP: 10.0.139.142 podIPs: - ip: 10.0.139.142 qosClass: Burstable startTime: "2026-09-10T23:36:26Z" - apiVersion: v1 kind: Pod metadata: annotations: openshift.io/required-scc: privileged openshift.io/scc: privileged security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-09-10T23:36:41Z" generateName: node-ca- generation: 1 labels: controller-revision-hash: db6dbdd9 name: node-ca pod-template-generation: "1" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:openshift.io/required-scc: {} f:target.workload.openshift.io/management: {} f:generateName: {} f:labels: .: {} f:controller-revision-hash: {} f:name: {} f:pod-template-generation: {} f:ownerReferences: .: {} k:{"uid":"c22ccae6-51fa-49d5-a051-5751a388f8c7"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"node-ca"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:privileged: {} f:readOnlyRootFilesystem: {} f:runAsGroup: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/docker/certs.d"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp/serviceca"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:hostNetwork: {} f:nodeSelector: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} f:volumes: .: {} k:{"name":"host"}: .: {} f:hostPath: .: {} f:path: {} f:type: {} f:name: {} k:{"name":"serviceca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-09-10T23:36:41Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.0.139.147"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-09-10T23:37:03Z" name: node-ca-h7g65 namespace: openshift-image-registry ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: DaemonSet name: node-ca uid: c22ccae6-51fa-49d5-a051-5751a388f8c7 resourceVersion: "6820" uid: 54ed315c-a8ea-457b-8795-b40ad51e0a01 spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchFields: - key: metadata.name operator: In values: - ip-10-0-139-147.ec2.internal containers: - command: - /bin/sh - -c - | trap 'jobs -p | xargs -r kill; echo shutting down node-ca; exit 0' TERM while [ true ]; do for f in $(ls /tmp/serviceca); do echo $f ca_file_path="/tmp/serviceca/${f}" f=$(echo $f | sed -r 's/(.*)\.\./\1:/') reg_dir_path="/etc/docker/certs.d/${f}" if [ -e "${reg_dir_path}" ]; then cp -u $ca_file_path $reg_dir_path/ca.crt else mkdir $reg_dir_path cp $ca_file_path $reg_dir_path/ca.crt fi done for d in $(ls /etc/docker/certs.d); do echo $d dp=$(echo $d | sed -r 's/(.*):/\1\.\./') reg_conf_path="/tmp/serviceca/${dp}" if [ ! -e "${reg_conf_path}" ]; then rm -rf /etc/docker/certs.d/$d fi done sleep 60 & wait ${!} done image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imagePullPolicy: IfNotPresent name: node-ca resources: requests: cpu: 10m memory: 10Mi securityContext: privileged: true readOnlyRootFilesystem: true runAsGroup: 0 runAsNonRoot: true runAsUser: 1001 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /tmp/serviceca name: serviceca - mountPath: /etc/docker/certs.d name: host - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-kkszs readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true hostNetwork: true imagePullSecrets: - name: node-ca-dockercfg-hf66z nodeName: ip-10-0-139-147.ec2.internal nodeSelector: kubernetes.io/os: linux preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: node-ca serviceAccountName: node-ca terminationGracePeriodSeconds: 30 tolerations: - operator: Exists volumes: - hostPath: path: /etc/docker/certs.d type: "" name: host - configMap: defaultMode: 420 name: image-registry-certificates name: serviceca - name: kube-api-access-kkszs projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:03Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:42Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:03Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-09-10T23:37:03Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-09-10T23:36:41Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 10m memory: 10Mi containerID: cri-o://702f3516056b67037032e96a3079dfa8797f01bc2ba0fb6af4289df4adc76259 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1ede51f0939b0c3d64025a444de8cbd252789c4c2a600a6301081f72ac78aeb7 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1551103d3d88ed60b0d858ebf78131cb83c77f404ed6f5ce6a08bce153a30fb8 lastState: {} name: node-ca ready: true resources: requests: cpu: 10m memory: 10Mi restartCount: 0 started: true state: running: startedAt: "2026-09-10T23:37:02Z" user: linux: gid: 0 supplementalGroups: - 0 uid: 1001 volumeMounts: - mountPath: /tmp/serviceca name: serviceca - mountPath: /etc/docker/certs.d name: host - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-kkszs readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.139.147 hostIPs: - ip: 10.0.139.147 observedGeneration: 1 phase: Running podIP: 10.0.139.147 podIPs: - ip: 10.0.139.147 qosClass: Burstable startTime: "2026-09-10T23:36:42Z" kind: PodList metadata: resourceVersion: "58697"