--- apiVersion: apps/v1 items: - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "17" creationTimestamp: "2026-02-24T02:34:40Z" generation: 17 managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:ownerReferences: .: {} k:{"uid":"f72a2153-89cc-438d-acd7-8bdfbd10c0ea"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:labels: .: {} f:service: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"dnsmasq-dns"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"CONFIG_HASH"}: .: {} f:name: {} f:value: {} k:{"name":"POD_IP"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:tcpSocket: .: {} f:port: {} f:timeoutSeconds: {} f:name: {} f:readinessProbe: .: {} f:failureThreshold: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:tcpSocket: .: {} f:port: {} f:timeoutSeconds: {} f:resources: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/dnsmasq.d/config.cfg"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/dns-svc"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/dns-swift-storage-0"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/ovsdbserver-nb"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/ovsdbserver-sb"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} f:dnsPolicy: {} f:initContainers: .: {} k:{"name":"init"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"CONFIG_HASH"}: .: {} f:name: {} f:value: {} k:{"name":"POD_IP"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/dnsmasq.d/config.cfg"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/dns-svc"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/dns-swift-storage-0"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/ovsdbserver-nb"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/dnsmasq.d/hosts/ovsdbserver-sb"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"config"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"dns-svc"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"dns-swift-storage-0"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"ovsdbserver-nb"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{"name":"ovsdbserver-sb"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} manager: manager operation: Update time: "2026-02-24T02:39:20Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:39:30Z" name: dnsmasq-dns namespace: openstack ownerReferences: - apiVersion: network.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: DNSMasq name: dns uid: f72a2153-89cc-438d-acd7-8bdfbd10c0ea resourceVersion: "35813" uid: e147ebd4-6a46-40ca-a6c4-0b2095303932 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: service: dnsmasq strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: creationTimestamp: null labels: service: dnsmasq spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: service operator: In values: - dnsmasq topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - -c - dnsmasq --interface=* --conf-dir=/etc/dnsmasq.d --hostsdir=/etc/dnsmasq.d/hosts --keep-in-foreground --log-debug --bind-interfaces --listen-address=$(POD_IP) --port 5353 --log-facility=- --no-hosts --domain-needed --no-resolv --bogus-priv --log-queries command: - /bin/bash env: - name: CONFIG_HASH value: n585h7fhbch5d5hddh646h99h5f8h58dhc7h98h656h55fh5b9h5f7h6bh679hbchfchcbh6bh59dh54chf6h547hb6h65ch597h5d4h549h574h79q - name: POD_IP valueFrom: fieldRef: apiVersion: v1 fieldPath: status.podIP image: quay.io/podified-antelope-centos9/openstack-neutron-server@sha256:c21a3e6f24adda8d9f7cfdb1115a43c928c3ee0ec263e331a215d9da533bbfcd imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 initialDelaySeconds: 3 periodSeconds: 3 successThreshold: 1 tcpSocket: port: 5353 timeoutSeconds: 5 name: dnsmasq-dns readinessProbe: failureThreshold: 3 initialDelaySeconds: 5 periodSeconds: 5 successThreshold: 1 tcpSocket: port: 5353 timeoutSeconds: 5 resources: {} securityContext: allowPrivilegeEscalation: false runAsNonRoot: true seccompProfile: type: RuntimeDefault terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /etc/dnsmasq.d/config.cfg name: config readOnly: true subPath: dns - mountPath: /etc/dnsmasq.d/hosts/dns-svc name: dns-svc readOnly: true subPath: dns-svc - mountPath: /etc/dnsmasq.d/hosts/dns-swift-storage-0 name: dns-swift-storage-0 readOnly: true subPath: dns-swift-storage-0 - mountPath: /etc/dnsmasq.d/hosts/ovsdbserver-nb name: ovsdbserver-nb readOnly: true subPath: ovsdbserver-nb - mountPath: /etc/dnsmasq.d/hosts/ovsdbserver-sb name: ovsdbserver-sb readOnly: true subPath: ovsdbserver-sb dnsPolicy: ClusterFirst initContainers: - args: - -c - dnsmasq --interface=* --conf-dir=/etc/dnsmasq.d --hostsdir=/etc/dnsmasq.d/hosts --keep-in-foreground --log-debug --bind-interfaces --listen-address=$(POD_IP) --port 5353 --log-facility=- --no-hosts --domain-needed --no-resolv --bogus-priv --log-queries --test command: - /bin/bash env: - name: CONFIG_HASH value: n585h7fhbch5d5hddh646h99h5f8h58dhc7h98h656h55fh5b9h5f7h6bh679hbchfchcbh6bh59dh54chf6h547hb6h65ch597h5d4h549h574h79q - name: POD_IP valueFrom: fieldRef: apiVersion: v1 fieldPath: status.podIP image: quay.io/podified-antelope-centos9/openstack-neutron-server@sha256:c21a3e6f24adda8d9f7cfdb1115a43c928c3ee0ec263e331a215d9da533bbfcd imagePullPolicy: IfNotPresent name: init resources: {} securityContext: allowPrivilegeEscalation: false runAsNonRoot: true seccompProfile: type: RuntimeDefault terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /etc/dnsmasq.d/config.cfg name: config readOnly: true subPath: dns - mountPath: /etc/dnsmasq.d/hosts/dns-svc name: dns-svc readOnly: true subPath: dns-svc - mountPath: /etc/dnsmasq.d/hosts/dns-swift-storage-0 name: dns-swift-storage-0 readOnly: true subPath: dns-swift-storage-0 - mountPath: /etc/dnsmasq.d/hosts/ovsdbserver-nb name: ovsdbserver-nb readOnly: true subPath: ovsdbserver-nb - mountPath: /etc/dnsmasq.d/hosts/ovsdbserver-sb name: ovsdbserver-sb readOnly: true subPath: ovsdbserver-sb restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: dnsmasq-dns serviceAccountName: dnsmasq-dns terminationGracePeriodSeconds: 10 volumes: - configMap: defaultMode: 420 name: dns name: config - configMap: defaultMode: 420 name: dns-svc name: dns-svc - configMap: defaultMode: 420 name: dns-swift-storage-0 name: dns-swift-storage-0 - configMap: defaultMode: 420 name: ovsdbserver-nb name: ovsdbserver-nb - configMap: defaultMode: 420 name: ovsdbserver-sb name: ovsdbserver-sb status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:35:22Z" lastUpdateTime: "2026-02-24T02:35:22Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:34:40Z" lastUpdateTime: "2026-02-24T02:39:30Z" message: ReplicaSet "dnsmasq-dns-7586c46c57" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 17 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "2" creationTimestamp: "2026-02-24T02:37:15Z" generation: 2 managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:ownerReferences: .: {} k:{"uid":"6648499d-a60b-4141-b6e6-f6734b2bcf23"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:annotations: .: {} f:k8s.v1.cni.cncf.io/networks: {} f:labels: .: {} f:component: {} f:service: {} 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: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: manager operation: Update time: "2026-02-24T02:37:18Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:37:31Z" name: ironic namespace: openstack ownerReferences: - apiVersion: ironic.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: IronicAPI name: ironic-api uid: 6648499d-a60b-4141-b6e6-f6734b2bcf23 resourceVersion: "33083" uid: 87e63865-57aa-496c-aeba-288f949ff217 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: component: api service: ironic strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: k8s.v1.cni.cncf.io/networks: '[]' creationTimestamp: null labels: component: api service: ironic 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: nb6hddhdh7h579h696hdbh8bh7fh577hf8h5f9h5f7h64ch4hbh7h5cdh549h5b8h679h5d6h564h68fh6dh67ch579h687h94h64ch586h5cbq - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:02f558cf4c54f02f0032f919b1e02673d2f65438aa1d837ab4587728c50cbc2f imagePullPolicy: IfNotPresent name: ironic-api-log resources: {} securityContext: runAsUser: 0 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/log/ironic name: logs - 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: nb6hddhdh7h579h696hdbh8bh7fh577hf8h5f9h5f7h64ch4hbh7h5cdh549h5b8h679h5d6h564h68fh6dh67ch579h687h94h64ch586h5cbq - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-ironic-api@sha256:02f558cf4c54f02f0032f919b1e02673d2f65438aa1d837ab4587728c50cbc2f 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: 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 dnsPolicy: ClusterFirst 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:02f558cf4c54f02f0032f919b1e02673d2f65438aa1d837ab4587728c50cbc2f imagePullPolicy: IfNotPresent name: init resources: {} securityContext: 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 restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: ironic-ironic serviceAccountName: ironic-ironic terminationGracePeriodSeconds: 60 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 status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:37:31Z" lastUpdateTime: "2026-02-24T02:37:31Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:37:15Z" lastUpdateTime: "2026-02-24T02:37:31Z" message: ReplicaSet "ironic-85b75c94bc" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 2 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" creationTimestamp: "2026-02-24T02:37:15Z" generation: 1 managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:ownerReferences: .: {} k:{"uid":"cf0111cf-8026-47f1-b763-1d9a3262988c"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:labels: .: {} f:component: {} f:service: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"ironic-neutron-agent"}: .: {} 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:exec: .: {} f:command: {} f:failureThreshold: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:readinessProbe: .: {} f:exec: .: {} f:command: {} f:failureThreshold: {} 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":"/var/lib/config-data/default"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/kolla/config_files/config.json"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} f:dnsPolicy: {} 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"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: manager operation: Update time: "2026-02-24T02:37:15Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:37:46Z" name: ironic-neutron-agent namespace: openstack ownerReferences: - apiVersion: ironic.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: IronicNeutronAgent name: ironic-ironic-neutron-agent uid: cf0111cf-8026-47f1-b763-1d9a3262988c resourceVersion: "33627" uid: d5f0a172-4ff8-4365-917e-5d024a7a45b3 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: component: ironic-neutron-agent service: ironic-neutron-agent strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: creationTimestamp: null labels: component: ironic-neutron-agent service: ironic-neutron-agent spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: service operator: In values: - ironic-neutron-agent topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - -c - /usr/local/bin/kolla_set_configs && /usr/local/bin/kolla_start command: - /bin/bash env: - name: CONFIG_HASH value: n68h579h694h58ch57ch548h657h658hcdh4h644h86h64dh5cbh96hd5h58h5d7h5cbh77h58fh686hch648h676h59bh55h665h9fh5c6h558h658q - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-ironic-neutron-agent@sha256:a3f5b519c7fc33e9f66fe553a7bc5cce51c3ff01223190cfa93bb75149a1dfcc imagePullPolicy: IfNotPresent livenessProbe: exec: command: - /bin/true failureThreshold: 3 initialDelaySeconds: 3 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 name: ironic-neutron-agent readinessProbe: exec: command: - /bin/true failureThreshold: 3 initialDelaySeconds: 3 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 resources: {} securityContext: runAsUser: 0 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/lib/config-data/default name: config readOnly: true - mountPath: /var/lib/kolla/config_files/config.json name: config readOnly: true subPath: ironic-neutron-agent-config.json - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true subPath: tls-ca-bundle.pem dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: ironic-ironic serviceAccountName: ironic-ironic terminationGracePeriodSeconds: 60 volumes: - name: config secret: defaultMode: 416 secretName: ironic-ironic-neutron-agent-config-data - name: combined-ca-bundle secret: defaultMode: 292 secretName: combined-ca-bundle status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:37:46Z" lastUpdateTime: "2026-02-24T02:37:46Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:37:15Z" lastUpdateTime: "2026-02-24T02:37:46Z" message: ReplicaSet "ironic-neutron-agent-7d8f6784f6" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 1 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" creationTimestamp: "2026-02-24T02:36:49Z" generation: 1 managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:ownerReferences: .: {} k:{"uid":"84cc3ce0-d4a6-45be-ab90-2887007435be"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:annotations: .: {} f:k8s.v1.cni.cncf.io/networks: {} f:labels: .: {} f:owner: {} f:service: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"keystone-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:capabilities: .: {} f:drop: {} f:runAsGroup: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/keystone/credential-keys"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/etc/keystone/fernet-keys"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/usr/local/bin/container-scripts"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/default"}: .: {} 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: {} f:dnsPolicy: {} 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":"credential-keys"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} k:{"name":"fernet-keys"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} k:{"name":"internal-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} 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: manager operation: Update time: "2026-02-24T02:36:49Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:37:21Z" name: keystone namespace: openstack ownerReferences: - apiVersion: keystone.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: KeystoneAPI name: keystone uid: 84cc3ce0-d4a6-45be-ab90-2887007435be resourceVersion: "32743" uid: d07dac3d-a159-45f9-a5a2-87027b3ec325 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: owner: keystone service: keystone strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: k8s.v1.cni.cncf.io/networks: '[]' creationTimestamp: null labels: owner: keystone service: keystone spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: service operator: In values: - keystone topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - -c - /usr/local/bin/kolla_start command: - /bin/bash env: - name: CONFIG_HASH value: n588h8ch54h5f8hf4hcbh59bh5dbh65h9fh67fh58dh65fh647h5b6h59hf9h57ch554h684hdch658hd8h66fh696h5f7hbh59h8bh5f6h66fh5bq - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-keystone@sha256:f278ba51944ed62c43b97612829b4723befd0c69bf7f4bd305230a7e4ceb5ec8 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /v3 port: 5000 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 name: keystone-api readinessProbe: failureThreshold: 3 httpGet: path: /v3 port: 5000 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 resources: {} securityContext: capabilities: drop: - MKNOD runAsGroup: 42425 runAsUser: 42425 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 - mountPath: /var/lib/kolla/config_files/config.json name: config-data readOnly: true subPath: keystone-api-config.json - mountPath: /etc/keystone/fernet-keys name: fernet-keys readOnly: true - mountPath: /etc/keystone/credential-keys name: credential-keys 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 dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: keystone-keystone serviceAccountName: keystone-keystone terminationGracePeriodSeconds: 30 volumes: - name: scripts secret: defaultMode: 493 secretName: keystone-scripts - name: config-data secret: defaultMode: 420 secretName: keystone-config-data - name: fernet-keys secret: defaultMode: 420 items: - key: FernetKeys0 path: "0" - key: FernetKeys1 path: "1" - key: FernetKeys2 path: "2" - key: FernetKeys3 path: "3" - key: FernetKeys4 path: "4" secretName: keystone - name: credential-keys secret: defaultMode: 420 items: - key: CredentialKeys0 path: "0" - key: CredentialKeys1 path: "1" secretName: keystone - name: combined-ca-bundle secret: defaultMode: 292 secretName: combined-ca-bundle - name: internal-tls-certs secret: defaultMode: 256 secretName: cert-keystone-internal-svc - name: public-tls-certs secret: defaultMode: 256 secretName: cert-keystone-public-svc status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:37:21Z" lastUpdateTime: "2026-02-24T02:37:21Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:36:49Z" lastUpdateTime: "2026-02-24T02:37:21Z" message: ReplicaSet "keystone-8f98fb65f" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 1 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "2" creationTimestamp: "2026-02-24T02:37:00Z" generation: 2 managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:ownerReferences: .: {} k:{"uid":"fa4faa68-ea37-4645-8243-2f38f83b4d61"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:annotations: .: {} f:k8s.v1.cni.cncf.io/networks: {} f:labels: .: {} f:service: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"neutron-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:resources: {} f:securityContext: .: {} f:capabilities: .: {} f:drop: {} f:runAsGroup: {} f:runAsNonRoot: {} 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":"/var/lib/config-data/default"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/config-data/tls/certs/ovndb.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/config-data/tls/certs/ovndbca.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/config-data/tls/private/ovndb.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:{"name":"neutron-httpd"}: .: {} 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:capabilities: .: {} f:drop: {} f:runAsGroup: {} f:runAsNonRoot: {} 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/pki/tls/certs/internal.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/certs/public.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/private/internal.key"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/private/public.key"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/var/lib/config-data/default"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/var/lib/kolla/config_files/config.json"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} f:dnsPolicy: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:fsGroup: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"combined-ca-bundle"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"config"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"httpd-config"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"internal-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"ovndb-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"public-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: manager operation: Update time: "2026-02-24T02:37:04Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:37:35Z" name: neutron namespace: openstack ownerReferences: - apiVersion: neutron.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: NeutronAPI name: neutron uid: fa4faa68-ea37-4645-8243-2f38f83b4d61 resourceVersion: "33278" uid: 8c77bacb-0a59-47d8-a40a-7ab3453eff71 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: service: neutron strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: k8s.v1.cni.cncf.io/networks: '[{"name":"internalapi","namespace":"openstack","interface":"internalapi"}]' creationTimestamp: null labels: service: neutron spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: service operator: In values: - neutron topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - -c - /usr/local/bin/kolla_start command: - /bin/bash env: - name: CONFIG_HASH value: ncch64dh579h68ch7h644h5c4h67ch544h8dh86h57ch675h5f6h657hd6h559h55h5d9h57h585h668h5d7h67dh65h5fbh675h5dbh64bh658h5c4hdfq - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-neutron-server@sha256:c21a3e6f24adda8d9f7cfdb1115a43c928c3ee0ec263e331a215d9da533bbfcd imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: / port: 9696 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 name: neutron-api resources: {} securityContext: capabilities: drop: - MKNOD runAsGroup: 42435 runAsNonRoot: true runAsUser: 42435 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/lib/config-data/default name: config readOnly: true - mountPath: /var/lib/kolla/config_files/config.json name: config readOnly: true subPath: neutron-api-config.json - 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/ovndb.crt name: ovndb-tls-certs readOnly: true subPath: tls.crt - mountPath: /var/lib/config-data/tls/private/ovndb.key name: ovndb-tls-certs readOnly: true subPath: tls.key - mountPath: /var/lib/config-data/tls/certs/ovndbca.crt name: ovndb-tls-certs readOnly: true subPath: ca.crt - args: - -c - /usr/local/bin/kolla_start command: - /bin/bash env: - name: CONFIG_HASH value: ncch64dh579h68ch7h644h5c4h67ch544h8dh86h57ch675h5f6h657hd6h559h55h5d9h57h585h668h5d7h67dh65h5fbh675h5dbh64bh658h5c4hdfq - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-neutron-server@sha256:c21a3e6f24adda8d9f7cfdb1115a43c928c3ee0ec263e331a215d9da533bbfcd imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: / port: 9696 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 name: neutron-httpd readinessProbe: failureThreshold: 3 httpGet: path: / port: 9696 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 resources: {} securityContext: capabilities: drop: - MKNOD runAsGroup: 42435 runAsNonRoot: true runAsUser: 42435 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/lib/config-data/default name: httpd-config readOnly: true - mountPath: /var/lib/kolla/config_files/config.json name: config readOnly: true subPath: neutron-httpd-config.json - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true subPath: tls-ca-bundle.pem - mountPath: /etc/pki/tls/certs/internal.crt name: internal-tls-certs readOnly: true subPath: tls.crt - mountPath: /etc/pki/tls/private/internal.key name: internal-tls-certs readOnly: true subPath: tls.key - mountPath: /etc/pki/tls/certs/public.crt name: public-tls-certs readOnly: true subPath: tls.crt - mountPath: /etc/pki/tls/private/public.key name: public-tls-certs readOnly: true subPath: tls.key dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 42435 serviceAccount: neutron-neutron serviceAccountName: neutron-neutron terminationGracePeriodSeconds: 30 volumes: - name: config secret: defaultMode: 420 secretName: neutron-config - name: httpd-config secret: defaultMode: 420 secretName: neutron-httpd-config - name: combined-ca-bundle secret: defaultMode: 292 secretName: combined-ca-bundle - name: internal-tls-certs secret: defaultMode: 256 secretName: cert-neutron-internal-svc - name: public-tls-certs secret: defaultMode: 256 secretName: cert-neutron-public-svc - name: ovndb-tls-certs secret: defaultMode: 256 secretName: cert-neutron-ovndbs status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:37:31Z" lastUpdateTime: "2026-02-24T02:37:31Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:37:00Z" lastUpdateTime: "2026-02-24T02:37:35Z" message: ReplicaSet "neutron-6b46dbc6bf" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 2 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" creationTimestamp: "2026-02-24T02:36:50Z" generation: 1 managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:ownerReferences: .: {} k:{"uid":"2a2f2922-f66e-40ff-9ab6-12d435710348"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:annotations: .: {} f:k8s.v1.cni.cncf.io/networks: {} f:labels: .: {} f:owner: {} f:service: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"placement-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":"/usr/local/bin/container-scripts"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} 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/lib/openstack/config"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/log/placement"}: .: {} f:mountPath: {} f:name: {} k:{"name":"placement-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: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":"/usr/local/bin/container-scripts"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} 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/lib/openstack/config"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/log/placement"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} 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":"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: manager operation: Update time: "2026-02-24T02:36:50Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:37:22Z" name: placement namespace: openstack ownerReferences: - apiVersion: placement.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: PlacementAPI name: placement uid: 2a2f2922-f66e-40ff-9ab6-12d435710348 resourceVersion: "32800" uid: 6dea695a-e001-4c76-8c80-76d0fad99d31 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: owner: placement service: placement strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: k8s.v1.cni.cncf.io/networks: '[]' creationTimestamp: null labels: owner: placement service: placement spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: service operator: In values: - placement topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - --single-child - -- - /usr/bin/tail - -n+1 - -F - /var/log/placement/placement-api.log command: - /usr/bin/dumb-init env: - name: CONFIG_HASH value: n9dh59fh595h5b4h9fh65bh548h67dh64fh97hc5h5cbhc4h68dh77h5fbh55fh64dh68ch686h5bbhf9hfdh658hf6h674h6ch559h59ch96h7bh684q - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-placement-api@sha256:92021b9fa077b6fc021f2910d238184f2a7dacc0a564b5da13f4b0fb68318cf0 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: / port: 8778 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 name: placement-log readinessProbe: failureThreshold: 3 httpGet: path: / port: 8778 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 resources: {} securityContext: runAsUser: 42482 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /usr/local/bin/container-scripts name: scripts readOnly: true - mountPath: /var/log/placement name: logs - mountPath: /var/lib/openstack/config name: config-data - mountPath: /var/lib/kolla/config_files/config.json name: config-data readOnly: true subPath: placement-api-config.json - 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 - args: - -c - /usr/local/bin/kolla_start command: - /bin/bash env: - name: CONFIG_HASH value: n9dh59fh595h5b4h9fh65bh548h67dh64fh97hc5h5cbhc4h68dh77h5fbh55fh64dh68ch686h5bbhf9hfdh658hf6h674h6ch559h59ch96h7bh684q - name: KOLLA_CONFIG_STRATEGY value: COPY_ALWAYS image: quay.io/podified-antelope-centos9/openstack-placement-api@sha256:92021b9fa077b6fc021f2910d238184f2a7dacc0a564b5da13f4b0fb68318cf0 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: / port: 8778 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 name: placement-api readinessProbe: failureThreshold: 3 httpGet: path: / port: 8778 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 30 successThreshold: 1 timeoutSeconds: 30 resources: {} securityContext: runAsUser: 42482 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /usr/local/bin/container-scripts name: scripts readOnly: true - mountPath: /var/log/placement name: logs - mountPath: /var/lib/openstack/config name: config-data - mountPath: /var/lib/kolla/config_files/config.json name: config-data readOnly: true subPath: placement-api-config.json - 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 dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: placement-placement serviceAccountName: placement-placement terminationGracePeriodSeconds: 30 volumes: - name: scripts secret: defaultMode: 493 secretName: placement-scripts - name: config-data secret: defaultMode: 416 secretName: placement-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-placement-internal-svc - name: public-tls-certs secret: defaultMode: 256 secretName: cert-placement-public-svc status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:37:22Z" lastUpdateTime: "2026-02-24T02:37:22Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:36:50Z" lastUpdateTime: "2026-02-24T02:37:22Z" message: ReplicaSet "placement-f597cf46d" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 1 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" creationTimestamp: "2026-02-24T02:37:29Z" generation: 1 labels: component: swift-proxy service: swift managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:labels: .: {} f:component: {} f:service: {} f:ownerReferences: .: {} k:{"uid":"4a0a13f7-ef0d-40b9-a425-5c6abee88748"}: {} f:spec: f:progressDeadlineSeconds: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:strategy: f:rollingUpdate: .: {} f:maxSurge: {} f:maxUnavailable: {} f:type: {} f:template: f:metadata: f:annotations: .: {} f:k8s.v1.cni.cncf.io/networks: {} f:labels: .: {} f:component: {} f:service: {} f:spec: f:affinity: .: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"proxy-httpd"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"CONFIG_HASH"}: .: {} 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:ports: .: {} k:{"containerPort":8080,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} 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:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:runAsNonRoot: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/httpd/conf.d/ssl.conf"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/httpd/conf/httpd.conf"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/certs/internal.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/certs/public.crt"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/private/internal.key"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/pki/tls/private/public.key"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/etc/swift"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/run/httpd"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/var/log/httpd"}: .: {} f:mountPath: {} f:name: {} k:{"name":"proxy-server"}: .: {} f:command: {} f:env: .: {} k:{"name":"CONFIG_HASH"}: .: {} 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:ports: .: {} k:{"containerPort":8081,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} 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:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:runAsNonRoot: {} 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/swift"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:fsGroup: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} 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":"etc-swift"}: .: {} f:name: {} f:projected: .: {} f:defaultMode: {} f:sources: {} k:{"name":"internal-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"log-httpd"}: .: {} f:emptyDir: {} f:name: {} k:{"name":"public-tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"run-httpd"}: .: {} f:emptyDir: {} f:name: {} manager: manager operation: Update time: "2026-02-24T02:37:29Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-02-24T02:37:39Z" name: swift-proxy namespace: openstack ownerReferences: - apiVersion: swift.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: SwiftProxy name: swift-proxy uid: 4a0a13f7-ef0d-40b9-a425-5c6abee88748 resourceVersion: "33389" uid: 2da6a71c-d615-46cc-970f-46509c15cf1b spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: component: swift-proxy service: swift strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: k8s.v1.cni.cncf.io/networks: '[]' creationTimestamp: null labels: component: swift-proxy service: swift spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: component operator: In values: - swift-proxy topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - -DFOREGROUND command: - /usr/sbin/httpd env: - name: CONFIG_HASH value: n5ffh594hd9h5fbh4h88h548h576h59h677h68ch68h58fh8dh65bh58bh687h56bh657hd7h546hfdh577h59dhbfh55ch5fchb5h67hb5h68h676q image: quay.io/podified-antelope-centos9/openstack-swift-proxy-server@sha256:bed63ddf64b7a100451f17bc370e74648fb3db9db0d3c538b07396a00fdbd123 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /healthcheck port: 8080 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 3 successThreshold: 1 timeoutSeconds: 5 name: proxy-httpd ports: - containerPort: 8080 name: proxy-httpd protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /healthcheck port: 8080 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 resources: {} securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 42445 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /etc/swift name: etc-swift - mountPath: /etc/httpd/conf/httpd.conf name: config-data readOnly: true subPath: httpd.conf - mountPath: /etc/httpd/conf.d/ssl.conf name: config-data readOnly: true subPath: ssl.conf - mountPath: /run/httpd name: run-httpd - mountPath: /var/log/httpd name: log-httpd - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true subPath: tls-ca-bundle.pem - mountPath: /etc/pki/tls/certs/internal.crt name: internal-tls-certs readOnly: true subPath: tls.crt - mountPath: /etc/pki/tls/private/internal.key name: internal-tls-certs readOnly: true subPath: tls.key - mountPath: /etc/pki/tls/certs/public.crt name: public-tls-certs readOnly: true subPath: tls.crt - mountPath: /etc/pki/tls/private/public.key name: public-tls-certs readOnly: true subPath: tls.key - command: - /usr/bin/swift-proxy-server - /etc/swift/proxy-server.conf.d - -v env: - name: CONFIG_HASH value: n5ffh594hd9h5fbh4h88h548h576h59h677h68ch68h58fh8dh65bh58bh687h56bh657hd7h546hfdh577h59dhbfh55ch5fchb5h67hb5h68h676q image: quay.io/podified-antelope-centos9/openstack-swift-proxy-server@sha256:bed63ddf64b7a100451f17bc370e74648fb3db9db0d3c538b07396a00fdbd123 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /healthcheck port: 8080 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 3 successThreshold: 1 timeoutSeconds: 5 name: proxy-server ports: - containerPort: 8081 name: proxy-server protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /healthcheck port: 8080 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 resources: {} securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 42445 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /etc/swift name: etc-swift - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem name: combined-ca-bundle readOnly: true subPath: tls-ca-bundle.pem dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 42445 runAsNonRoot: true seccompProfile: type: RuntimeDefault serviceAccount: swift-swift serviceAccountName: swift-swift terminationGracePeriodSeconds: 30 volumes: - name: config-data secret: defaultMode: 420 secretName: swift-proxy-config-data - name: etc-swift projected: defaultMode: 420 sources: - secret: items: - key: 00-proxy-server.conf path: proxy-server.conf.d/00-proxy-server.conf - key: 01-proxy-server.conf path: proxy-server.conf.d/01-proxy-server.conf - key: dispersion.conf path: dispersion.conf - key: keymaster.conf path: keymaster.conf name: swift-proxy-config-data - secret: name: swift-conf - configMap: name: swift-ring-files - emptyDir: {} name: run-httpd - emptyDir: {} name: log-httpd - name: combined-ca-bundle secret: defaultMode: 292 secretName: combined-ca-bundle - name: internal-tls-certs secret: defaultMode: 256 secretName: cert-swift-internal-svc - name: public-tls-certs secret: defaultMode: 256 secretName: cert-swift-public-svc status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-02-24T02:37:39Z" lastUpdateTime: "2026-02-24T02:37:39Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-02-24T02:37:29Z" lastUpdateTime: "2026-02-24T02:37:39Z" message: ReplicaSet "swift-proxy-675fbd6d58" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 1 readyReplicas: 1 replicas: 1 updatedReplicas: 1 kind: DeploymentList metadata: resourceVersion: "54663"