--- apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.128.0.237/23"],"mac_address":"0a:58:0a:80:00:ed","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.237/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.237" ], "mac": "0a:58:0a:80:00:ed", "default": true, "dns": {} }] k8s.v1.cni.cncf.io/networks: '[]' openshift.io/scc: anyuid creationTimestamp: "2026-02-16T21:38:07Z" generateName: ironic-6d6dfb9f68- labels: component: api pod-template-hash: 6d6dfb9f68 service: ironic managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:k8s.v1.cni.cncf.io/networks: {} f:generateName: {} f:labels: .: {} f:component: {} f:pod-template-hash: {} f:service: {} f:ownerReferences: .: {} k:{"uid":"22f120ef-42c6-4b6a-aa4d-64c06b8a5433"}: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"ironic-api"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"CONFIG_HASH"}: .: {} f:name: {} f:value: {} k:{"name":"KOLLA_CONFIG_STRATEGY"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: {} f:securityContext: .: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/podinfo"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/usr/local/bin/container-scripts"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/custom"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/default"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/merged"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/lib/config-data/tls/certs/internal.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/config-data/tls/certs/public.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/config-data/tls/private/internal.key"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/config-data/tls/private/public.key"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/kolla/config_files/config.json"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/log/ironic"}: .: {} f:mountPath: {} f:name: {} k:{"name":"ironic-api-log"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"CONFIG_HASH"}: .: {} f:name: {} f:value: {} k:{"name":"KOLLA_CONFIG_STRATEGY"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: {} f:securityContext: .: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/var/log/ironic"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:initContainers: .: {} k:{"name":"init"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"DatabaseHost"}: .: {} f:name: {} f:value: {} k:{"name":"DatabaseName"}: .: {} f:name: {} f:value: {} k:{"name":"DeployHTTPURL"}: .: {} f:name: {} k:{"name":"IngressDomain"}: .: {} f:name: {} k:{"name":"IronicPassword"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} k:{"name":"PodName"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"PodNamespace"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"ProvisionNetwork"}: .: {} f:name: {} k:{"name":"QuorumQueues"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} k:{"name":"TransportURL"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: {} f:securityContext: .: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/podinfo"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/usr/local/bin/container-scripts"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/custom"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/default"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/merged"}: .: {} f:mountPath: {} f:name: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"combined-ca-bundle"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"config-data"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"config-data-custom"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"config-data-merged"}: .: {} f:emptyDir: {} f:name: {} k:{"name":"etc-podinfo"}: .: {} f:downwardAPI: .: {} f:defaultMode: {} f:items: {} f:name: {} k:{"name":"internal-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"logs"}: .: {} f:emptyDir: {} f:name: {} k:{"name":"public-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"scripts"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-02-16T21:38:07Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: master-0 operation: Update subresource: status time: "2026-02-16T21:38:07Z" - 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-02-16T21:38:10Z" - 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:initContainerStatuses: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.128.0.237"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-02-16T21:38:20Z" name: ironic-6d6dfb9f68-58l7d namespace: openstack ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: ironic-6d6dfb9f68 uid: 22f120ef-42c6-4b6a-aa4d-64c06b8a5433 resourceVersion: "34168" uid: df8afaf9-42b4-4639-855e-f6cf99c985bf spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: service operator: In values: - ironic topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - --single-child - -- - /usr/bin/tail - -n+1 - -F - /var/log/ironic/ironic-api.log command: - /usr/bin/dumb-init env: - name: CONFIG_HASH value: n677h67bh5bbh578h6bh65fh677hf6h9bh64dh9dh8fh5fdh675h65bh569hdh546h5c6hd5hdfh667hdbh56fh65h647hd4h554h5d6hd4h98h644q - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e imagePullPolicy: IfNotPresent name: ironic-api-log resources: {} securityContext: capabilities: drop: - MKNOD runAsUser: 0 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/log/ironic name: logs - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-fdqwf readOnly: true - args: - -c - /usr/local/bin/container-scripts/api-prep.sh && /usr/local/bin/kolla_set_configs && usermod -a -G tty ironic && /usr/local/bin/kolla_start command: - /bin/bash env: - name: CONFIG_HASH value: n677h67bh5bbh578h6bh65fh677hf6h9bh64dh9dh8fh5fdh675h65bh569hdh546h5c6hd5hdfh667hdbh56fh65h647hd4h554h5d6hd4h98h644q - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /v1 port: 6385 scheme: HTTPS initialDelaySeconds: 3 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 name: ironic-api readinessProbe: failureThreshold: 3 httpGet: path: /v1 port: 6385 scheme: HTTPS initialDelaySeconds: 3 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 resources: {} securityContext: capabilities: drop: - MKNOD runAsUser: 0 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /usr/local/bin/container-scripts name: scripts readOnly: true - mountPath: /var/lib/config-data/merged name: config-data-merged - mountPath: /etc/podinfo name: etc-podinfo - mountPath: /var/lib/kolla/config_files/config.json name: config-data readOnly: true subPath: ironic-api-config.json - mountPath: /var/lib/config-data/default name: config-data readOnly: true - mountPath: /var/log/ironic name: logs - mountPath: /var/lib/config-data/custom name: config-data-custom readOnly: true - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true subPath: tls-ca-bundle.pem - mountPath: /var/lib/config-data/tls/certs/internal.crt name: internal-tls-certs readOnly: true subPath: tls.crt - mountPath: /var/lib/config-data/tls/private/internal.key name: internal-tls-certs readOnly: true subPath: tls.key - mountPath: /var/lib/config-data/tls/certs/public.crt name: public-tls-certs readOnly: true subPath: tls.crt - mountPath: /var/lib/config-data/tls/private/public.key name: public-tls-certs readOnly: true subPath: tls.key - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-fdqwf readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true initContainers: - args: - -c - /usr/local/bin/container-scripts/init.sh command: - /bin/bash env: - name: IronicPassword valueFrom: secretKeyRef: key: IronicPassword name: osp-secret - name: PodName valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.name - name: PodNamespace valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: ProvisionNetwork - name: TransportURL valueFrom: secretKeyRef: key: transport_url name: rabbitmq-transport-url-ironic-transport - name: QuorumQueues valueFrom: secretKeyRef: key: quorumqueues name: rabbitmq-transport-url-ironic-transport optional: true - name: DatabaseHost value: openstack.openstack.svc - name: DatabaseName value: ironic - name: DeployHTTPURL - name: IngressDomain image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e imagePullPolicy: IfNotPresent name: init resources: {} securityContext: capabilities: drop: - MKNOD runAsUser: 0 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /usr/local/bin/container-scripts name: scripts readOnly: true - mountPath: /var/lib/config-data/default name: config-data readOnly: true - mountPath: /var/lib/config-data/merged name: config-data-merged - mountPath: /etc/podinfo name: etc-podinfo - mountPath: /var/lib/config-data/custom name: config-data-custom readOnly: true - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true subPath: tls-ca-bundle.pem - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-fdqwf readOnly: true nodeName: master-0 preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: seLinuxOptions: level: s0:c28,c22 serviceAccount: ironic-ironic serviceAccountName: ironic-ironic terminationGracePeriodSeconds: 60 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 volumes: - name: scripts secret: defaultMode: 493 secretName: ironic-api-scripts - name: config-data secret: defaultMode: 416 secretName: ironic-api-config-data - emptyDir: {} name: config-data-merged - downwardAPI: defaultMode: 420 items: - fieldRef: apiVersion: v1 fieldPath: metadata.annotations['k8s.v1.cni.cncf.io/network-status'] path: network-status name: etc-podinfo - name: config-data-custom secret: defaultMode: 416 secretName: ironic-config-data - emptyDir: {} name: logs - name: combined-ca-bundle secret: defaultMode: 292 secretName: combined-ca-bundle - name: internal-tls-certs secret: defaultMode: 256 secretName: cert-ironic-internal-svc - name: public-tls-certs secret: defaultMode: 256 secretName: cert-ironic-public-svc - name: kube-api-access-fdqwf 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-16T21:38:12Z" status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-02-16T21:38:12Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-02-16T21:38:20Z" status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-02-16T21:38:20Z" status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-02-16T21:38:07Z" status: "True" type: PodScheduled containerStatuses: - containerID: cri-o://9598e05e173cddadfe8a0593cc2022de8ab16e7f6d05bfd5cb047d8819039cfb image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e imageID: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e lastState: {} name: ironic-api ready: true restartCount: 0 started: true state: running: startedAt: "2026-02-16T21:38:14Z" volumeMounts: - mountPath: /usr/local/bin/container-scripts name: scripts readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/merged name: config-data-merged - mountPath: /etc/podinfo name: etc-podinfo - mountPath: /var/lib/kolla/config_files/config.json name: config-data readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/default name: config-data readOnly: true recursiveReadOnly: Disabled - mountPath: /var/log/ironic name: logs - mountPath: /var/lib/config-data/custom name: config-data-custom readOnly: true recursiveReadOnly: Disabled - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/tls/certs/internal.crt name: internal-tls-certs readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/tls/private/internal.key name: internal-tls-certs readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/tls/certs/public.crt name: public-tls-certs readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/tls/private/public.key name: public-tls-certs readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-fdqwf readOnly: true recursiveReadOnly: Disabled - containerID: cri-o://2e20103a9d011bea98edf99dc001ed41c9cee65ead55c0e22b4c1aa0c17fb32b image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e imageID: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e lastState: {} name: ironic-api-log ready: true restartCount: 0 started: true state: running: startedAt: "2026-02-16T21:38:13Z" volumeMounts: - mountPath: /var/log/ironic name: logs - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-fdqwf readOnly: true recursiveReadOnly: Disabled hostIP: 192.168.32.10 hostIPs: - ip: 192.168.32.10 initContainerStatuses: - containerID: cri-o://a39ce9c9349a01b157c3cd6408fd7bf95bfc82f86113d0b8b70425b87b949472 image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e imageID: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:bb4ff085a07cb6a042d47ffb3cd4757cf3d07d1bf85fade3b7da9a2a0b404b4e lastState: {} name: init ready: true restartCount: 0 started: false state: terminated: containerID: cri-o://a39ce9c9349a01b157c3cd6408fd7bf95bfc82f86113d0b8b70425b87b949472 exitCode: 0 finishedAt: "2026-02-16T21:38:12Z" reason: Completed startedAt: "2026-02-16T21:38:11Z" volumeMounts: - mountPath: /usr/local/bin/container-scripts name: scripts readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/default name: config-data readOnly: true recursiveReadOnly: Disabled - mountPath: /var/lib/config-data/merged name: config-data-merged - mountPath: /etc/podinfo name: etc-podinfo - mountPath: /var/lib/config-data/custom name: config-data-custom readOnly: true recursiveReadOnly: Disabled - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-fdqwf readOnly: true recursiveReadOnly: Disabled phase: Running podIP: 10.128.0.237 podIPs: - ip: 10.128.0.237 qosClass: BestEffort startTime: "2026-02-16T21:38:07Z"