--- apiVersion: v1 items: - apiVersion: v1 kind: Pod metadata: creationTimestamp: "2026-02-20T11:53:00Z" generateName: machine-approver-7dd9c7d7b9- labels: app: machine-approver pod-template-hash: 7dd9c7d7b9 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:target.workload.openshift.io/management: {} f:generateName: {} f:labels: .: {} f:app: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"4af33b65-6fa9-40b4-be10-e62253f9ab37"}: {} f:spec: f:containers: k:{"name":"kube-rbac-proxy"}: .: {} f:args: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:ports: .: {} k:{"containerPort":9192,"protocol":"TCP"}: .: {} f:containerPort: {} f:hostPort: {} f:name: {} f:protocol: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/kube-rbac-proxy"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/etc/tls/private"}: .: {} f:mountPath: {} f:name: {} k:{"name":"machine-approver-controller"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"RELEASE_VERSION"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/var/run/configmaps/config"}: .: {} 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":"auth-proxy-config"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"config"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:optional: {} f:name: {} k:{"name":"machine-approver-tls"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-02-20T11:53:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:status: {} f:type: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"192.168.32.10"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-02-20T12:02:02Z" name: machine-approver-7dd9c7d7b9-qg84l namespace: openshift-cluster-machine-approver ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: machine-approver-7dd9c7d7b9 uid: 4af33b65-6fa9-40b4-be10-e62253f9ab37 resourceVersion: "11968" uid: 7635c0ff-4d40-4310-8187-230323e504e0 spec: containers: - args: - --secure-listen-address=0.0.0.0:9192 - --upstream=http://127.0.0.1:9191/ - --tls-cert-file=/etc/tls/private/tls.crt - --tls-private-key-file=/etc/tls/private/tls.key - --config-file=/etc/kube-rbac-proxy/config-file.yaml - --tls-cipher-suites=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305 - --logtostderr=true - --v=3 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cb2014728aa54e620f65424402b14c5247016734a9a982c393dc011acb1a1f52 imagePullPolicy: IfNotPresent name: kube-rbac-proxy ports: - containerPort: 9192 hostPort: 9192 name: https protocol: TCP resources: requests: cpu: 10m memory: 20Mi terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /etc/kube-rbac-proxy name: auth-proxy-config - mountPath: /etc/tls/private name: machine-approver-tls - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-p5m78 readOnly: true - args: - --config=/var/run/configmaps/config/config.yaml - -v=2 - --logtostderr - --leader-elect=true - --leader-elect-lease-duration=137s - --leader-elect-renew-deadline=107s - --leader-elect-retry-period=26s - --leader-elect-resource-namespace=openshift-cluster-machine-approver - --api-group-version=machine.openshift.io/v1beta1 - --max-concurrent-reconciles=10 command: - /usr/bin/machine-approver env: - name: RELEASE_VERSION value: 4.18.33 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:2ba8aec9f09d75121b95d2e6f1097415302c0ae7121fa7076fd38d7adb9a5afa imagePullPolicy: IfNotPresent name: machine-approver-controller resources: requests: cpu: 10m memory: 50Mi terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/configmaps/config name: config - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-p5m78 readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true hostNetwork: true imagePullSecrets: - name: machine-approver-sa-dockercfg-l5hc4 nodeName: master-0 nodeSelector: node-role.kubernetes.io/master: "" preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: machine-approver-sa serviceAccountName: machine-approver-sa terminationGracePeriodSeconds: 30 tolerations: - effect: NoSchedule key: node-role.kubernetes.io/master operator: Exists - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 120 - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 120 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - configMap: defaultMode: 420 name: kube-rbac-proxy name: auth-proxy-config - name: machine-approver-tls secret: defaultMode: 420 secretName: machine-approver-tls - configMap: defaultMode: 440 name: machine-approver-config optional: true name: config - name: kube-api-access-p5m78 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-02-20T11:53:02Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-02-20T11:53:01Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-02-20T12:01:29Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-02-20T12:01:29Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-02-20T11:53:01Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://7c9278a1d3d2466c483e93e79bfad049432771a18fc950094bb44a8f0f527114 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cb2014728aa54e620f65424402b14c5247016734a9a982c393dc011acb1a1f52 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:cb2014728aa54e620f65424402b14c5247016734a9a982c393dc011acb1a1f52 lastState: {} name: kube-rbac-proxy ready: true restartCount: 0 started: true state: running: startedAt: "2026-02-20T11:53:02Z" volumeMounts: - mountPath: /etc/kube-rbac-proxy name: auth-proxy-config - mountPath: /etc/tls/private name: machine-approver-tls - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-p5m78 readOnly: true recursiveReadOnly: Disabled - containerID: cri-o://8c5461d15d7eab278a7d6ba7f412ddd0416b9d86f734dccb7a0b7a984f4d1c02 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:2ba8aec9f09d75121b95d2e6f1097415302c0ae7121fa7076fd38d7adb9a5afa imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:2ba8aec9f09d75121b95d2e6f1097415302c0ae7121fa7076fd38d7adb9a5afa lastState: terminated: containerID: cri-o://43e3bfd2d03db486eaa07c471fb4184138af1fd2a51e7d71dbadb2ebc26dee9d exitCode: 255 finishedAt: "2026-02-20T12:01:27Z" message: | tificatesigningrequest" controllerGroup="certificates.k8s.io" controllerKind="CertificateSigningRequest" source="kind source: *v1.CertificateSigningRequest" I0220 11:53:02.431440 1 controller.go:175] "Starting EventSource" controller="certificatesigningrequest" controllerGroup="certificates.k8s.io" controllerKind="CertificateSigningRequest" source="kind source: *v1.ConfigMap" I0220 11:53:02.431473 1 controller.go:183] "Starting Controller" controller="certificatesigningrequest" controllerGroup="certificates.k8s.io" controllerKind="CertificateSigningRequest" I0220 11:53:02.436663 1 reflector.go:368] Caches populated for *v1.ClusterOperator from github.com/openshift/cluster-machine-approver/status.go:99 I0220 11:53:02.577334 1 reflector.go:368] Caches populated for *v1.ConfigMap from sigs.k8s.io/controller-runtime/pkg/cache/internal/informers.go:106 I0220 11:53:02.638595 1 controller.go:217] "Starting workers" controller="certificatesigningrequest" controllerGroup="certificates.k8s.io" controllerKind="CertificateSigningRequest" worker count=10 E0220 11:59:40.696805 1 leaderelection.go:429] Failed to update lock optimitically: Timeout: request did not complete within requested timeout - context deadline exceeded, falling back to slow path E0220 12:00:40.699014 1 leaderelection.go:436] error retrieving resource lock openshift-cluster-machine-approver/cluster-machine-approver-leader: the server was unable to return a response in the time allotted, but may still be processing the request (get leases.coordination.k8s.io cluster-machine-approver-leader) I0220 12:00:53.691821 1 leaderelection.go:297] failed to renew lease openshift-cluster-machine-approver/cluster-machine-approver-leader: timed out waiting for the condition E0220 12:01:27.697077 1 leaderelection.go:322] Failed to release lock: Timeout: request did not complete within requested timeout - context deadline exceeded F0220 12:01:27.697191 1 main.go:244] unable to run the manager: leader election lost reason: Error startedAt: "2026-02-20T11:53:02Z" name: machine-approver-controller ready: true restartCount: 1 started: true state: running: startedAt: "2026-02-20T12:01:28Z" volumeMounts: - mountPath: /var/run/configmaps/config name: config - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-p5m78 readOnly: true recursiveReadOnly: Disabled hostIP: 192.168.32.10 hostIPs: - ip: 192.168.32.10 phase: Running podIP: 192.168.32.10 podIPs: - ip: 192.168.32.10 qosClass: Burstable startTime: "2026-02-20T11:53:01Z" kind: PodList metadata: resourceVersion: "54179"