apiVersion: v1
kind: Pod
metadata:
  annotations:
    kubectl.kubernetes.io/default-container: pxc
    percona.com/configuration-hash: 05cba3c0b1f1aea21888a8712b9bc1b5
  creationTimestamp: "2026-04-28T06:02:26Z"
  generateName: percona-xtradb-pxc-
  labels:
    app.kubernetes.io/component: pxc
    app.kubernetes.io/instance: percona-xtradb
    app.kubernetes.io/managed-by: percona-xtradb-cluster-operator
    app.kubernetes.io/name: percona-xtradb-cluster
    app.kubernetes.io/part-of: percona-xtradb-cluster
    apps.kubernetes.io/pod-index: "0"
    controller-revision-hash: percona-xtradb-pxc-c4456b795
    statefulset.kubernetes.io/pod-name: percona-xtradb-pxc-0
  name: percona-xtradb-pxc-0
  namespace: openstack
  ownerReferences:
  - apiVersion: apps/v1
    blockOwnerDeletion: true
    controller: true
    kind: StatefulSet
    name: percona-xtradb-pxc
    uid: 00b4e608-4aad-4127-9e4f-af4809b5ddc5
  resourceVersion: "2334"
  uid: 17599595-a9e0-4b5a-9dd8-1fe2e0ae1114
spec:
  affinity:
    podAntiAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
      - labelSelector:
          matchLabels:
            app.kubernetes.io/component: pxc
            app.kubernetes.io/instance: percona-xtradb
            app.kubernetes.io/managed-by: percona-xtradb-cluster-operator
            app.kubernetes.io/name: percona-xtradb-cluster
            app.kubernetes.io/part-of: percona-xtradb-cluster
        topologyKey: kubernetes.io/hostname
  containers:
  - args:
    - mysqld
    command:
    - /var/lib/mysql/pxc-entrypoint.sh
    env:
    - name: PXC_SERVICE
      value: percona-xtradb-pxc-unready
    - name: MONITOR_HOST
      value: '%'
    - name: MYSQL_ROOT_PASSWORD
      valueFrom:
        secretKeyRef:
          key: root
          name: internal-percona-xtradb
    - name: XTRABACKUP_PASSWORD
      valueFrom:
        secretKeyRef:
          key: xtrabackup
          name: internal-percona-xtradb
    - name: MONITOR_PASSWORD
      valueFrom:
        secretKeyRef:
          key: monitor
          name: internal-percona-xtradb
    - name: CLUSTER_HASH
      value: "1246393"
    - name: OPERATOR_ADMIN_PASSWORD
      valueFrom:
        secretKeyRef:
          key: operator
          name: internal-percona-xtradb
    - name: LIVENESS_CHECK_TIMEOUT
      value: "60"
    - name: READINESS_CHECK_TIMEOUT
      value: "15"
    - name: DEFAULT_AUTHENTICATION_PLUGIN
      value: caching_sha2_password
    - name: MYSQL_NOTIFY_SOCKET
      value: /var/lib/mysql/notify.sock
    - name: MYSQL_STATE_FILE
      value: /var/lib/mysql/mysql.state
    envFrom:
    - secretRef:
        name: percona-xtradb-env-vars-pxc
        optional: true
    image: harbor.atmosphere.dev/docker.io/percona/percona-xtradb-cluster:8.0.41-32.1
    imagePullPolicy: Always
    livenessProbe:
      exec:
        command:
        - /var/lib/mysql/liveness-check.sh
      failureThreshold: 100
      initialDelaySeconds: 300
      periodSeconds: 10
      successThreshold: 1
      timeoutSeconds: 60
    name: pxc
    ports:
    - containerPort: 3306
      name: mysql
      protocol: TCP
    - containerPort: 4444
      name: sst
      protocol: TCP
    - containerPort: 4567
      name: write-set
      protocol: TCP
    - containerPort: 4568
      name: ist
      protocol: TCP
    - containerPort: 33062
      name: mysql-admin
      protocol: TCP
    - containerPort: 33060
      name: mysqlx
      protocol: TCP
    readinessProbe:
      exec:
        command:
        - /var/lib/mysql/readiness-check.sh
      failureThreshold: 5
      initialDelaySeconds: 15
      periodSeconds: 30
      successThreshold: 1
      timeoutSeconds: 15
    resources: {}
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/lib/mysql
      name: datadir
    - mountPath: /etc/percona-xtradb-cluster.conf.d
      name: config
    - mountPath: /tmp
      name: tmp
    - mountPath: /etc/mysql/ssl
      name: ssl
    - mountPath: /etc/mysql/ssl-internal
      name: ssl-internal
    - mountPath: /etc/mysql/mysql-users-secret
      name: mysql-users-secret-file
    - mountPath: /etc/my.cnf.d
      name: auto-config
    - mountPath: /etc/mysql/vault-keyring-secret
      name: vault-keyring-secret
    - mountPath: /etc/mysql/init-file
      name: mysql-init-file
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: kube-api-access-xpfr2
      readOnly: true
  - args:
    - --mysqld.username=monitor
    - --collect.info_schema.processlist
    env:
    - name: MYSQLD_EXPORTER_PASSWORD
      valueFrom:
        secretKeyRef:
          key: monitor
          name: percona-xtradb
    image: harbor.atmosphere.dev/quay.io/prometheus/mysqld-exporter:v0.17.0
    imagePullPolicy: IfNotPresent
    name: exporter
    ports:
    - containerPort: 9104
      name: metrics
      protocol: TCP
    readinessProbe:
      failureThreshold: 3
      httpGet:
        path: /
        port: metrics
        scheme: HTTP
      periodSeconds: 10
      successThreshold: 1
      timeoutSeconds: 1
    resources: {}
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: kube-api-access-xpfr2
      readOnly: true
  dnsPolicy: ClusterFirst
  enableServiceLinks: true
  hostname: percona-xtradb-pxc-0
  initContainers:
  - command:
    - /pxc-init-entrypoint.sh
    image: harbor.atmosphere.dev/docker.io/percona/percona-xtradb-cluster-operator:1.17.0
    imagePullPolicy: Always
    name: pxc-init
    resources:
      limits:
        cpu: 50m
        memory: 50M
      requests:
        cpu: 50m
        memory: 50M
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/lib/mysql
      name: datadir
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: kube-api-access-xpfr2
      readOnly: true
  nodeName: instance
  nodeSelector:
    openstack-control-plane: enabled
  preemptionPolicy: PreemptLowerPriority
  priority: 0
  restartPolicy: Always
  schedulerName: default-scheduler
  securityContext:
    fsGroup: 1001
    supplementalGroups:
    - 1001
  serviceAccount: default
  serviceAccountName: default
  subdomain: percona-xtradb-pxc
  terminationGracePeriodSeconds: 600
  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: datadir
    persistentVolumeClaim:
      claimName: datadir-percona-xtradb-pxc-0
  - emptyDir: {}
    name: tmp
  - configMap:
      defaultMode: 420
      name: percona-xtradb-pxc
      optional: true
    name: config
  - name: ssl-internal
    secret:
      defaultMode: 420
      optional: true
      secretName: percona-xtradb-ssl-internal
  - name: ssl
    secret:
      defaultMode: 420
      optional: true
      secretName: percona-xtradb-ssl
  - configMap:
      defaultMode: 420
      name: auto-percona-xtradb-pxc
      optional: true
    name: auto-config
  - name: vault-keyring-secret
    secret:
      defaultMode: 420
      optional: true
      secretName: percona-xtradb-vault
  - name: mysql-users-secret-file
    secret:
      defaultMode: 420
      optional: false
      secretName: internal-percona-xtradb
  - name: mysql-init-file
    secret:
      defaultMode: 420
      optional: true
      secretName: percona-xtradb-mysql-init
  - name: kube-api-access-xpfr2
    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
status:
  conditions:
  - lastProbeTime: null
    lastTransitionTime: "2026-04-28T06:02:38Z"
    status: "True"
    type: Initialized
  - lastProbeTime: null
    lastTransitionTime: "2026-04-28T06:03:34Z"
    status: "True"
    type: Ready
  - lastProbeTime: null
    lastTransitionTime: "2026-04-28T06:03:34Z"
    status: "True"
    type: ContainersReady
  - lastProbeTime: null
    lastTransitionTime: "2026-04-28T06:02:33Z"
    status: "True"
    type: PodScheduled
  containerStatuses:
  - containerID: containerd://18fb4304c17c95ec69fed7d3bf92443b4cf4af10d65526826635e4abab3b6b1e
    image: harbor.atmosphere.dev/quay.io/prometheus/mysqld-exporter:v0.17.0
    imageID: harbor.atmosphere.dev/quay.io/prometheus/mysqld-exporter@sha256:1c7ad2b1596720b1b158632aa7fb4545829064ddaa9fd91133e12d6792c4716b
    lastState: {}
    name: exporter
    ready: true
    restartCount: 0
    started: true
    state:
      running:
        startedAt: "2026-04-28T06:02:47Z"
  - containerID: containerd://b68ee7ca667a9509f8e022a2d0e3fcd29f54fb2b14b85690d1bb80a6060bf34e
    image: harbor.atmosphere.dev/docker.io/percona/percona-xtradb-cluster:8.0.41-32.1
    imageID: harbor.atmosphere.dev/docker.io/percona/percona-xtradb-cluster@sha256:168ffb252d533b856a74820dea51c155bf5a8cb6a806a4d8a2e387ed7417a733
    lastState: {}
    name: pxc
    ready: true
    restartCount: 0
    started: true
    state:
      running:
        startedAt: "2026-04-28T06:02:46Z"
  hostIP: 199.204.45.113
  initContainerStatuses:
  - containerID: containerd://444bc0f9868373e92b4f44dd559fd01774559e0e548f95a50e50d606312128c9
    image: harbor.atmosphere.dev/docker.io/percona/percona-xtradb-cluster-operator:1.17.0
    imageID: harbor.atmosphere.dev/docker.io/percona/percona-xtradb-cluster-operator@sha256:96a78ea3895b9d1ecab62ba64c4bb2c79b1582cde4f27ef8f0ec9def458eb2df
    lastState: {}
    name: pxc-init
    ready: true
    restartCount: 0
    started: false
    state:
      terminated:
        containerID: containerd://444bc0f9868373e92b4f44dd559fd01774559e0e548f95a50e50d606312128c9
        exitCode: 0
        finishedAt: "2026-04-28T06:02:37Z"
        reason: Completed
        startedAt: "2026-04-28T06:02:34Z"
  phase: Running
  podIP: 10.0.0.169
  podIPs:
  - ip: 10.0.0.169
  qosClass: Burstable
  startTime: "2026-04-28T06:02:33Z"
