--- apiVersion: v1 items: - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.128.0.138/23"],"mac_address":"0a:58:0a:80:00:8a","gateway_ips":["10.128.0.1"],"routes":[{"dest":"10.128.0.0/16","nextHop":"10.128.0.1"},{"dest":"172.30.0.0/16","nextHop":"10.128.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.128.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.128.0.1"}],"ip_address":"10.128.0.138/23","gateway_ip":"10.128.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.128.0.138" ], "mac": "0a:58:0a:80:00:8a", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default creationTimestamp: "2026-03-19T12:22:15Z" generateName: nmstate-console-plugin-86f58fcf4- labels: app: nmstate-console-plugin pod-template-hash: 86f58fcf4 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:generateName: {} f:labels: .: {} f:app: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"46373c9a-bacb-4ec6-8c13-b2ff288daaa5"}: {} f:spec: f:containers: k:{"name":"nmstate-console-plugin"}: .: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:ports: .: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:protocol: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/nginx/nginx.conf"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/serving-cert"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"nginx-conf"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"plugin-serving-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-03-19T12:22:15Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: master-0 operation: Update subresource: status time: "2026-03-19T12:22:15Z" - 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-03-19T12:22:16Z" - 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":"10.128.0.138"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-03-19T12:22:24Z" name: nmstate-console-plugin-86f58fcf4-7lbg6 namespace: openshift-nmstate ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: nmstate-console-plugin-86f58fcf4 uid: 46373c9a-bacb-4ec6-8c13-b2ff288daaa5 resourceVersion: "24691" uid: e33e37d7-1911-4149-8382-6b009a1b4bbe spec: containers: - image: registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:dcf6081eab6e9ce9595482d29ae143452dfc76682cc40354a9a64c8e3284c83a imagePullPolicy: Always name: nmstate-console-plugin ports: - containerPort: 9443 protocol: TCP resources: requests: cpu: 10m memory: 50Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 1000780000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/serving-cert name: plugin-serving-cert readOnly: true - mountPath: /etc/nginx/nginx.conf name: nginx-conf readOnly: true subPath: nginx.conf - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-n4szl readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: master-0 preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000780000 seLinuxOptions: level: s0:c28,c12 seccompProfile: type: RuntimeDefault serviceAccount: default serviceAccountName: default 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: - name: plugin-serving-cert secret: defaultMode: 420 secretName: plugin-serving-cert - configMap: defaultMode: 420 name: nginx-conf name: nginx-conf - name: kube-api-access-n4szl 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-03-19T12:22:24Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:24Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:24Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://f8ba77947c87125f77bdd7ed941e837f41dedaaa6483749946e726eb5de2fb54 image: registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:dcf6081eab6e9ce9595482d29ae143452dfc76682cc40354a9a64c8e3284c83a imageID: registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:58f568df5d122f0c32737c628444b60969be047cd1ba27d4e4d060c46d477412 lastState: {} name: nmstate-console-plugin ready: true restartCount: 0 started: true state: running: startedAt: "2026-03-19T12:22:23Z" volumeMounts: - mountPath: /var/serving-cert name: plugin-serving-cert readOnly: true recursiveReadOnly: Disabled - mountPath: /etc/nginx/nginx.conf name: nginx-conf readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-n4szl readOnly: true recursiveReadOnly: Disabled hostIP: 192.168.32.10 hostIPs: - ip: 192.168.32.10 phase: Running podIP: 10.128.0.138 podIPs: - ip: 10.128.0.138 qosClass: Burstable startTime: "2026-03-19T12:22:15Z" - apiVersion: v1 kind: Pod metadata: annotations: description: kubernetes-nmstate-handler configures and presents node networking, reconciling declerative NNCP and reports with NNS and NNCE openshift.io/scc: privileged creationTimestamp: "2026-03-19T12:22:15Z" generateName: nmstate-handler- labels: app: kubernetes-nmstate component: kubernetes-nmstate-handler controller-revision-hash: 6ff87f4fb6 name: nmstate-handler pod-template-generation: "1" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:description: {} f:generateName: {} f:labels: .: {} f:app: {} f:component: {} f:controller-revision-hash: {} f:name: {} f:pod-template-generation: {} f:ownerReferences: .: {} k:{"uid":"c2993bc2-2ae2-43e8-befe-373c8766cbe7"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"nmstate-handler"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"COMPONENT"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"ENABLE_PROFILER"}: .: {} f:name: {} f:value: {} k:{"name":"MANAGED_BY"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"NMSTATE_INSTANCE_NODE_LOCK_FILE"}: .: {} f:name: {} f:value: {} k:{"name":"NODE_NAME"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"OPERATOR_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"PART_OF"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"POD_NAME"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"PROFILER_PORT"}: .: {} f:name: {} f:value: {} k:{"name":"VERSION"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"WATCH_NAMESPACE"}: .: {} f:name: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:readinessProbe: .: {} f:exec: .: {} f:command: {} f:failureThreshold: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:privileged: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/run/dbus/system_bus_socket"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/run/openvswitch"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/k8s_nmstate"}: .: {} 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":"dbus-socket"}: .: {} f:hostPath: .: {} f:path: {} f:type: {} f:name: {} k:{"name":"nmstate-lock"}: .: {} f:hostPath: .: {} f:path: {} f:type: {} f:name: {} k:{"name":"ovs-socket"}: .: {} f:hostPath: .: {} f:path: {} f:type: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-03-19T12:22:15Z" - 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-03-19T12:22:30Z" name: nmstate-handler-xjs2f namespace: openshift-nmstate ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: DaemonSet name: nmstate-handler uid: c2993bc2-2ae2-43e8-befe-373c8766cbe7 resourceVersion: "24791" uid: c58c9b23-392b-4b14-9b28-89736d899d6d spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchFields: - key: metadata.name operator: In values: - master-0 containers: - args: - --zap-time-encoding=iso8601 command: - manager env: - name: WATCH_NAMESPACE - name: POD_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.name - name: COMPONENT valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.labels['app.kubernetes.io/component'] - name: PART_OF valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.labels['app.kubernetes.io/part-of'] - name: VERSION valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.labels['app.kubernetes.io/version'] - name: MANAGED_BY valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.labels['app.kubernetes.io/managed-by'] - name: OPERATOR_NAME value: nmstate - name: NODE_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: spec.nodeName - name: ENABLE_PROFILER value: "False" - name: PROFILER_PORT value: "6060" - name: NMSTATE_INSTANCE_NODE_LOCK_FILE value: /var/k8s_nmstate/handler_lock image: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e imagePullPolicy: Always name: nmstate-handler readinessProbe: exec: command: - cat - /tmp/healthy failureThreshold: 3 initialDelaySeconds: 5 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 1 resources: requests: cpu: 100m memory: 100Mi securityContext: privileged: true terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /run/dbus/system_bus_socket name: dbus-socket - mountPath: /var/k8s_nmstate name: nmstate-lock - mountPath: /run/openvswitch name: ovs-socket - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-wsshm readOnly: true dnsPolicy: Default enableServiceLinks: true hostNetwork: true nodeName: master-0 nodeSelector: kubernetes.io/arch: amd64 kubernetes.io/os: linux preemptionPolicy: PreemptLowerPriority priority: 2000001000 priorityClassName: system-node-critical restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: nmstate-handler serviceAccountName: nmstate-handler terminationGracePeriodSeconds: 30 tolerations: - operator: Exists volumes: - hostPath: path: /run/dbus/system_bus_socket type: Socket name: dbus-socket - hostPath: path: /var/k8s_nmstate type: "" name: nmstate-lock - hostPath: path: /run/openvswitch type: "" name: ovs-socket - name: kube-api-access-wsshm 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-03-19T12:22:24Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:30Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:30Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://267a1fdfd2deca1ca840cda9d4db57ccfcc191ac9fc5462859f170694e4853f2 image: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e imageID: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:3433a4bab66e3f0ac8f6d3b01eb0f32b28d7241dab22b4370e8596889ae85a47 lastState: {} name: nmstate-handler ready: true restartCount: 0 started: true state: running: startedAt: "2026-03-19T12:22:23Z" volumeMounts: - mountPath: /run/dbus/system_bus_socket name: dbus-socket - mountPath: /var/k8s_nmstate name: nmstate-lock - mountPath: /run/openvswitch name: ovs-socket - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-wsshm 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-03-19T12:22:15Z" - apiVersion: v1 kind: Pod metadata: annotations: description: kubernetes-nmstate-metrics dump nmstate metrics k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.128.0.136/23"],"mac_address":"0a:58:0a:80:00:88","gateway_ips":["10.128.0.1"],"routes":[{"dest":"10.128.0.0/16","nextHop":"10.128.0.1"},{"dest":"172.30.0.0/16","nextHop":"10.128.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.128.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.128.0.1"}],"ip_address":"10.128.0.136/23","gateway_ip":"10.128.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.128.0.136" ], "mac": "0a:58:0a:80:00:88", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default creationTimestamp: "2026-03-19T12:22:15Z" generateName: nmstate-metrics-9b8c8685d- labels: app: kubernetes-nmstate component: kubernetes-nmstate-metrics name: nmstate-metrics pod-template-hash: 9b8c8685d prometheus.nmstate.io: "true" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:description: {} f:generateName: {} f:labels: .: {} f:app: {} f:component: {} f:name: {} f:pod-template-hash: {} f:prometheus.nmstate.io: {} f:ownerReferences: .: {} k:{"uid":"3389dcb5-771e-4495-8ea6-bbca8a401725"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"kube-rbac-proxy"}: .: {} f:args: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:ports: .: {} k:{"containerPort":8443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} k:{"name":"nmstate-metrics"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"ENABLE_PROFILER"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"POD_NAME"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"POD_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"PROFILER_PORT"}: .: {} f:name: {} f:value: {} k:{"name":"RUN_METRICS_MANAGER"}: .: {} f:name: {} k:{"name":"WATCH_NAMESPACE"}: .: {} f:name: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:nodeSelector: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} f:topologySpreadConstraints: .: {} k:{"topologyKey":"kubernetes.io/hostname","whenUnsatisfiable":"DoNotSchedule"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} manager: kube-controller-manager operation: Update time: "2026-03-19T12:22:15Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: master-0 operation: Update subresource: status time: "2026-03-19T12:22:15Z" - 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-03-19T12:22:15Z" - 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":"10.128.0.136"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-03-19T12:22:24Z" name: nmstate-metrics-9b8c8685d-v9s4d namespace: openshift-nmstate ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: nmstate-metrics-9b8c8685d uid: 3389dcb5-771e-4495-8ea6-bbca8a401725 resourceVersion: "24687" uid: ad53604e-2d6b-4169-9a4f-e4c878098a24 spec: affinity: nodeAffinity: preferredDuringSchedulingIgnoredDuringExecution: - preference: matchExpressions: - key: node-role.kubernetes.io/control-plane operator: Exists weight: 10 - preference: matchExpressions: - key: node-role.kubernetes.io/master operator: Exists weight: 1 containers: - args: - --zap-time-encoding=iso8601 command: - manager env: - name: WATCH_NAMESPACE - name: POD_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.name - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: RUN_METRICS_MANAGER - name: OPERATOR_NAME value: nmstate - name: ENABLE_PROFILER value: "False" - name: PROFILER_PORT value: "6060" image: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e imagePullPolicy: Always name: nmstate-metrics resources: requests: cpu: 30m memory: 20Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 1000780000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-zjg5d readOnly: true - args: - --logtostderr - --secure-listen-address=:8443 - --upstream=http://127.0.0.1:8089 image: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:4fdd6da66aba2523d2c21cef306b7650659926bbadb96dedd000d2b8c0229078 imagePullPolicy: IfNotPresent name: kube-rbac-proxy ports: - containerPort: 8443 name: metrics protocol: TCP resources: requests: cpu: 10m memory: 20Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 1000780000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-zjg5d readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: master-0 nodeSelector: kubernetes.io/arch: amd64 preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000780000 seLinuxOptions: level: s0:c28,c12 seccompProfile: type: RuntimeDefault serviceAccount: nmstate-handler serviceAccountName: nmstate-handler terminationGracePeriodSeconds: 30 tolerations: - effect: NoSchedule key: node-role.kubernetes.io/master operator: Exists - effect: NoSchedule key: node-role.kubernetes.io/control-plane operator: Exists - 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: component: kubernetes-nmstate-metrics maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule volumes: - name: kube-api-access-zjg5d 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-03-19T12:22:24Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:24Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:24Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://60f057dc34b434c2edee3558b5507558e9604cc1499d903c36566535ff40a26f image: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:4fdd6da66aba2523d2c21cef306b7650659926bbadb96dedd000d2b8c0229078 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:4fdd6da66aba2523d2c21cef306b7650659926bbadb96dedd000d2b8c0229078 lastState: {} name: kube-rbac-proxy ready: true restartCount: 0 started: true state: running: startedAt: "2026-03-19T12:22:23Z" volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-zjg5d readOnly: true recursiveReadOnly: Disabled - containerID: cri-o://2581b20ae7b8720ce9778a2febdd72b5615e6a902f64a6b3c1c67bd72e5ef5f3 image: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e imageID: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:3433a4bab66e3f0ac8f6d3b01eb0f32b28d7241dab22b4370e8596889ae85a47 lastState: {} name: nmstate-metrics ready: true restartCount: 0 started: true state: running: startedAt: "2026-03-19T12:22:23Z" volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-zjg5d readOnly: true recursiveReadOnly: Disabled hostIP: 192.168.32.10 hostIPs: - ip: 192.168.32.10 phase: Running podIP: 10.128.0.136 podIPs: - ip: 10.128.0.136 qosClass: Burstable startTime: "2026-03-19T12:22:15Z" - apiVersion: v1 kind: Pod metadata: annotations: alm-examples: |- [ { "apiVersion": "nmstate.io/v1", "kind": "NMState", "metadata": { "name": "nmstate" }, "spec": {} } ] capabilities: Basic Install categories: OpenShift Optional certified: "false" containerImage: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:60ec3d3da1ba06551932e9ebf8f98bd2cdf5e18c0b4b05c124847b7672458094 createdAt: "2022-02-21 08:46:16" description: | Kubernetes NMState is a declaritive means of configuring NetworkManager. features.operators.openshift.io/disconnected: "true" features.operators.openshift.io/fips-compliant: "true" features.operators.openshift.io/proxy-aware: "false" features.operators.openshift.io/tls-profiles: "false" features.operators.openshift.io/token-auth-aws: "false" features.operators.openshift.io/token-auth-azure: "false" features.operators.openshift.io/token-auth-gcp: "false" k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.128.0.123/23"],"mac_address":"0a:58:0a:80:00:7b","gateway_ips":["10.128.0.1"],"routes":[{"dest":"10.128.0.0/16","nextHop":"10.128.0.1"},{"dest":"172.30.0.0/16","nextHop":"10.128.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.128.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.128.0.1"}],"ip_address":"10.128.0.123/23","gateway_ip":"10.128.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.128.0.123" ], "mac": "0a:58:0a:80:00:7b", "default": true, "dns": {} }] olm.operatorGroup: openshift-nmstate-tn6k8 olm.operatorNamespace: openshift-nmstate olm.skipRange: '>=4.3.0 <4.18.0-202603041813' olm.targetNamespaces: openshift-nmstate openshift.io/scc: restricted-v2 operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"nmstate.io","kind":"NMState","version":"v1"}},{"type":"olm.gvk","value":{"group":"nmstate.io","kind":"NMState","version":"v1beta1"}},{"type":"olm.package","value":{"packageName":"kubernetes-nmstate-operator","version":"4.18.0-202603041813"}}]}' operatorframework.io/suggested-namespace: openshift-nmstate operators.openshift.io/infrastructure-features: '["disconnected"]' operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine", "OpenShift Container Platform", "OpenShift Platform Plus"]' operators.operatorframework.io/builder: operator-sdk-v1.22.2 operators.operatorframework.io/project_layout: go.kubebuilder.io/v3 repository: https://github.com/openshift/kubernetes-nmstate seccomp.security.alpha.kubernetes.io/pod: runtime/default support: Red Hat, Inc. creationTimestamp: "2026-03-19T12:21:04Z" generateName: nmstate-operator-796d4cfff4- labels: app: kubernetes-nmstate-operator name: kubernetes-nmstate-operator pod-template-hash: 796d4cfff4 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:alm-examples: {} f:capabilities: {} f:categories: {} f:certified: {} f:containerImage: {} f:createdAt: {} f:description: {} f:features.operators.openshift.io/disconnected: {} f:features.operators.openshift.io/fips-compliant: {} f:features.operators.openshift.io/proxy-aware: {} f:features.operators.openshift.io/tls-profiles: {} f:features.operators.openshift.io/token-auth-aws: {} f:features.operators.openshift.io/token-auth-azure: {} f:features.operators.openshift.io/token-auth-gcp: {} f:olm.operatorGroup: {} f:olm.operatorNamespace: {} f:olm.skipRange: {} f:olm.targetNamespaces: {} f:operatorframework.io/properties: {} f:operatorframework.io/suggested-namespace: {} f:operators.openshift.io/infrastructure-features: {} f:operators.openshift.io/valid-subscription: {} f:operators.operatorframework.io/builder: {} f:operators.operatorframework.io/project_layout: {} f:repository: {} f:support: {} f:generateName: {} f:labels: .: {} f:app: {} f:name: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"b198e4dd-4aa6-40a4-9963-14d8920e0cc6"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"nmstate-operator"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"ENABLE_PROFILER"}: .: {} f:name: {} f:value: {} k:{"name":"HANDLER_IMAGE"}: .: {} f:name: {} f:value: {} k:{"name":"HANDLER_IMAGE_PULL_POLICY"}: .: {} f:name: {} f:value: {} k:{"name":"HANDLER_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"KUBE_RBAC_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} k:{"name":"MONITORING_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_CONDITION_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"PLUGIN_IMAGE"}: .: {} f:name: {} f:value: {} k:{"name":"PROFILER_PORT"}: .: {} f:name: {} f:value: {} k:{"name":"RUN_OPERATOR"}: .: {} f:name: {} k:{"name":"WATCH_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} manager: kube-controller-manager operation: Update time: "2026-03-19T12:21:04Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: master-0 operation: Update subresource: status time: "2026-03-19T12:21:04Z" - 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-03-19T12:21:05Z" - 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":"10.128.0.123"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-03-19T12:21:12Z" name: nmstate-operator-796d4cfff4-4pg9j namespace: openshift-nmstate ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: nmstate-operator-796d4cfff4 uid: b198e4dd-4aa6-40a4-9963-14d8920e0cc6 resourceVersion: "21960" uid: df7823bf-2d07-4834-9afe-d8427193bcbe spec: affinity: nodeAffinity: preferredDuringSchedulingIgnoredDuringExecution: - preference: matchExpressions: - key: node-role.kubernetes.io/control-plane operator: Exists weight: 10 - preference: matchExpressions: - key: node-role.kubernetes.io/master operator: Exists weight: 1 containers: - args: - --zap-time-encoding=iso8601 command: - manager env: - name: WATCH_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.annotations['olm.targetNamespaces'] - name: OPERATOR_NAME value: kubernetes-nmstate-operator - name: ENABLE_PROFILER value: "False" - name: PROFILER_PORT value: "6060" - name: RUN_OPERATOR - name: HANDLER_IMAGE value: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e - name: PLUGIN_IMAGE value: registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:dcf6081eab6e9ce9595482d29ae143452dfc76682cc40354a9a64c8e3284c83a - name: HANDLER_IMAGE_PULL_POLICY value: Always - name: HANDLER_NAMESPACE value: openshift-nmstate - name: MONITORING_NAMESPACE value: openshift-monitoring - name: KUBE_RBAC_PROXY_IMAGE value: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:4fdd6da66aba2523d2c21cef306b7650659926bbadb96dedd000d2b8c0229078 - name: OPERATOR_CONDITION_NAME value: kubernetes-nmstate-operator.4.18.0-202603041813 image: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:60ec3d3da1ba06551932e9ebf8f98bd2cdf5e18c0b4b05c124847b7672458094 imagePullPolicy: Always name: nmstate-operator resources: requests: cpu: 60m memory: 30Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsUser: 1000780000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-w8gcw readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: master-0 preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000780000 runAsNonRoot: true seLinuxOptions: level: s0:c28,c12 seccompProfile: type: RuntimeDefault serviceAccount: nmstate-operator serviceAccountName: nmstate-operator terminationGracePeriodSeconds: 30 tolerations: - effect: NoSchedule key: node-role.kubernetes.io/control-plane operator: Exists - effect: NoSchedule key: node-role.kubernetes.io/master operator: Exists - 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: - name: kube-api-access-w8gcw 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-03-19T12:21:12Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-03-19T12:21:04Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-03-19T12:21:12Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-03-19T12:21:12Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-03-19T12:21:04Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://63ecc749c2b84fb447bddee940d7b3fa1950fc1b1ceef4c8400e6cd02873aa0b image: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:60ec3d3da1ba06551932e9ebf8f98bd2cdf5e18c0b4b05c124847b7672458094 imageID: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:60ec3d3da1ba06551932e9ebf8f98bd2cdf5e18c0b4b05c124847b7672458094 lastState: {} name: nmstate-operator ready: true restartCount: 0 started: true state: running: startedAt: "2026-03-19T12:21:11Z" volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-w8gcw readOnly: true recursiveReadOnly: Disabled hostIP: 192.168.32.10 hostIPs: - ip: 192.168.32.10 phase: Running podIP: 10.128.0.123 podIPs: - ip: 10.128.0.123 qosClass: Burstable startTime: "2026-03-19T12:21:04Z" - apiVersion: v1 kind: Pod metadata: annotations: description: kubernetes-nmstate-webhook resets NNCP status k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.128.0.137/23"],"mac_address":"0a:58:0a:80:00:89","gateway_ips":["10.128.0.1"],"routes":[{"dest":"10.128.0.0/16","nextHop":"10.128.0.1"},{"dest":"172.30.0.0/16","nextHop":"10.128.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.128.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.128.0.1"}],"ip_address":"10.128.0.137/23","gateway_ip":"10.128.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.128.0.137" ], "mac": "0a:58:0a:80:00:89", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default creationTimestamp: "2026-03-19T12:22:15Z" generateName: nmstate-webhook-5f558f5558- labels: app: kubernetes-nmstate component: kubernetes-nmstate-webhook name: nmstate-webhook pod-template-hash: 5f558f5558 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:description: {} f:generateName: {} f:labels: .: {} f:app: {} f:component: {} f:name: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"d5b47038-1af1-4869-8259-89ae645dd54c"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"nmstate-webhook"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"ENABLE_PROFILER"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"POD_NAME"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"POD_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"PROFILER_PORT"}: .: {} f:name: {} f:value: {} k:{"name":"RUN_WEBHOOK_SERVER"}: .: {} f:name: {} k:{"name":"WATCH_NAMESPACE"}: .: {} f:name: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:ports: .: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:httpHeaders: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs/"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:nodeSelector: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} f:topologySpreadConstraints: .: {} k:{"topologyKey":"kubernetes.io/hostname","whenUnsatisfiable":"DoNotSchedule"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} f:volumes: .: {} k:{"name":"tls-key-pair"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-03-19T12:22:15Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: master-0 operation: Update subresource: status time: "2026-03-19T12:22:15Z" - 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-03-19T12:22:16Z" - 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":"10.128.0.137"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-03-19T12:22:36Z" name: nmstate-webhook-5f558f5558-6qz5w namespace: openshift-nmstate ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: nmstate-webhook-5f558f5558 uid: d5b47038-1af1-4869-8259-89ae645dd54c resourceVersion: "24822" uid: e94c395a-afd4-4b0e-b796-b09cb0eb6f51 spec: affinity: nodeAffinity: preferredDuringSchedulingIgnoredDuringExecution: - preference: matchExpressions: - key: node-role.kubernetes.io/control-plane operator: Exists weight: 10 - preference: matchExpressions: - key: node-role.kubernetes.io/master operator: Exists weight: 1 containers: - args: - --zap-time-encoding=iso8601 command: - manager env: - name: WATCH_NAMESPACE - name: POD_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.name - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: RUN_WEBHOOK_SERVER - name: OPERATOR_NAME value: nmstate - name: ENABLE_PROFILER value: "False" - name: PROFILER_PORT value: "6060" image: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e imagePullPolicy: Always name: nmstate-webhook ports: - containerPort: 9443 name: webhook-server protocol: TCP readinessProbe: failureThreshold: 3 httpGet: httpHeaders: - name: Content-Type value: application/json path: /readyz port: webhook-server scheme: HTTPS initialDelaySeconds: 10 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: requests: cpu: 30m memory: 20Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 1000780000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs/ name: tls-key-pair readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-lxczw readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: master-0 nodeSelector: kubernetes.io/arch: amd64 preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000780000 seLinuxOptions: level: s0:c28,c12 seccompProfile: type: RuntimeDefault serviceAccount: nmstate-handler serviceAccountName: nmstate-handler terminationGracePeriodSeconds: 30 tolerations: - effect: NoSchedule key: node-role.kubernetes.io/master operator: Exists - effect: NoSchedule key: node-role.kubernetes.io/control-plane operator: Exists - 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: component: kubernetes-nmstate-webhook maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule volumes: - name: tls-key-pair secret: defaultMode: 420 secretName: openshift-nmstate-webhook - name: kube-api-access-lxczw 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-03-19T12:22:24Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:36Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:36Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-03-19T12:22:15Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://6ea6456fecf909137a0185f23373156f7c816d6f2a32370ea097c9c0da0ed81d image: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:b1744b2b84d6e23d83f465f450d2621a86bfec595d64373438b2e7ce5331e82e imageID: registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:3433a4bab66e3f0ac8f6d3b01eb0f32b28d7241dab22b4370e8596889ae85a47 lastState: {} name: nmstate-webhook ready: true restartCount: 0 started: true state: running: startedAt: "2026-03-19T12:22:23Z" volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs/ name: tls-key-pair readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-lxczw readOnly: true recursiveReadOnly: Disabled hostIP: 192.168.32.10 hostIPs: - ip: 192.168.32.10 phase: Running podIP: 10.128.0.137 podIPs: - ip: 10.128.0.137 qosClass: Burstable startTime: "2026-03-19T12:22:15Z" kind: PodList metadata: resourceVersion: "51308"