github.com/percona/percona-xtradb-cluster-operator@v1.14.0/e2e-tests/upgrade-haproxy/compare/statefulset_upgrade-haproxy-haproxy-k127.yml (about)

     1  apiVersion: apps/v1
     2  kind: StatefulSet
     3  metadata:
     4    generation: 2
     5    name: upgrade-haproxy-haproxy
     6    ownerReferences:
     7      - controller: true
     8        kind: PerconaXtraDBCluster
     9        name: upgrade-haproxy
    10  spec:
    11    persistentVolumeClaimRetentionPolicy:
    12      whenDeleted: Retain
    13      whenScaled: Retain
    14    podManagementPolicy: OrderedReady
    15    replicas: 3
    16    revisionHistoryLimit: 10
    17    selector:
    18      matchLabels:
    19        app.kubernetes.io/component: haproxy
    20        app.kubernetes.io/instance: upgrade-haproxy
    21        app.kubernetes.io/managed-by: percona-xtradb-cluster-operator
    22        app.kubernetes.io/name: percona-xtradb-cluster
    23        app.kubernetes.io/part-of: percona-xtradb-cluster
    24    serviceName: upgrade-haproxy-haproxy
    25    template:
    26      metadata:
    27        labels:
    28          app.kubernetes.io/component: haproxy
    29          app.kubernetes.io/instance: upgrade-haproxy
    30          app.kubernetes.io/managed-by: percona-xtradb-cluster-operator
    31          app.kubernetes.io/name: percona-xtradb-cluster
    32          app.kubernetes.io/part-of: percona-xtradb-cluster
    33      spec:
    34        affinity:
    35          podAntiAffinity:
    36            requiredDuringSchedulingIgnoredDuringExecution:
    37              - labelSelector:
    38                  matchLabels:
    39                    app.kubernetes.io/component: haproxy
    40                    app.kubernetes.io/instance: upgrade-haproxy
    41                    app.kubernetes.io/managed-by: percona-xtradb-cluster-operator
    42                    app.kubernetes.io/name: percona-xtradb-cluster
    43                    app.kubernetes.io/part-of: percona-xtradb-cluster
    44                topologyKey: kubernetes.io/hostname
    45        containers:
    46          - env:
    47              - name: PXC_SERVICE
    48                value: upgrade-haproxy-pxc
    49              - name: LIVENESS_CHECK_TIMEOUT
    50                value: "5"
    51              - name: READINESS_CHECK_TIMEOUT
    52                value: "1"
    53            envFrom:
    54              - secretRef:
    55                  name: upgrade-haproxy-env-vars-haproxy
    56                  optional: true
    57            imagePullPolicy: Always
    58            livenessProbe:
    59              exec:
    60                command:
    61                  - /usr/local/bin/liveness-check.sh
    62              failureThreshold: 4
    63              initialDelaySeconds: 60
    64              periodSeconds: 30
    65              successThreshold: 1
    66              timeoutSeconds: 5
    67            name: haproxy
    68            ports:
    69              - containerPort: 3306
    70                name: mysql
    71                protocol: TCP
    72              - containerPort: 3307
    73                name: mysql-replicas
    74                protocol: TCP
    75              - containerPort: 3309
    76                name: proxy-protocol
    77                protocol: TCP
    78              - containerPort: 33062
    79                name: mysql-admin
    80                protocol: TCP
    81              - containerPort: 33060
    82                name: mysqlx
    83                protocol: TCP
    84            readinessProbe:
    85              exec:
    86                command:
    87                  - /usr/local/bin/readiness-check.sh
    88              failureThreshold: 3
    89              initialDelaySeconds: 15
    90              periodSeconds: 5
    91              successThreshold: 1
    92              timeoutSeconds: 1
    93            resources:
    94              requests:
    95                cpu: 600m
    96                memory: 1G
    97            terminationMessagePath: /dev/termination-log
    98            terminationMessagePolicy: File
    99            volumeMounts:
   100              - mountPath: /etc/haproxy-custom/
   101                name: haproxy-custom
   102              - mountPath: /etc/haproxy/pxc
   103                name: haproxy-auto
   104              - mountPath: /etc/mysql/mysql-users-secret
   105                name: mysql-users-secret-file
   106              - mountPath: /etc/mysql/haproxy-env-secret
   107                name: upgrade-haproxy-env-vars-haproxy
   108          - args:
   109              - /usr/bin/peer-list
   110              - -on-change=/usr/bin/add_pxc_nodes.sh
   111              - -service=$(PXC_SERVICE)
   112            env:
   113              - name: PXC_SERVICE
   114                value: upgrade-haproxy-pxc
   115            envFrom:
   116              - secretRef:
   117                  name: upgrade-haproxy-env-vars-haproxy
   118                  optional: true
   119            imagePullPolicy: Always
   120            name: pxc-monit
   121            resources: {}
   122            terminationMessagePath: /dev/termination-log
   123            terminationMessagePolicy: File
   124            volumeMounts:
   125              - mountPath: /etc/haproxy-custom/
   126                name: haproxy-custom
   127              - mountPath: /etc/haproxy/pxc
   128                name: haproxy-auto
   129              - mountPath: /etc/mysql/mysql-users-secret
   130                name: mysql-users-secret-file
   131              - mountPath: /etc/mysql/haproxy-env-secret
   132                name: upgrade-haproxy-env-vars-haproxy
   133        dnsPolicy: ClusterFirst
   134        initContainers:
   135          - command:
   136              - /pxc-init-entrypoint.sh
   137            imagePullPolicy: Always
   138            name: pxc-init
   139            resources:
   140              limits:
   141                cpu: 50m
   142                memory: 50M
   143            terminationMessagePath: /dev/termination-log
   144            terminationMessagePolicy: File
   145            volumeMounts:
   146              - mountPath: /var/lib/mysql
   147                name: bin
   148        restartPolicy: Always
   149        schedulerName: default-scheduler
   150        securityContext: {}
   151        serviceAccount: default
   152        serviceAccountName: default
   153        terminationGracePeriodSeconds: 30
   154        volumes:
   155          - configMap:
   156              defaultMode: 420
   157              name: upgrade-haproxy-haproxy
   158              optional: true
   159            name: haproxy-custom
   160          - emptyDir: {}
   161            name: haproxy-auto
   162          - name: mysql-users-secret-file
   163            secret:
   164              defaultMode: 420
   165              optional: false
   166              secretName: internal-upgrade-haproxy
   167          - name: upgrade-haproxy-env-vars-haproxy
   168            secret:
   169              defaultMode: 420
   170              optional: true
   171              secretName: upgrade-haproxy-env-vars-haproxy
   172          - emptyDir: {}
   173            name: bin
   174    updateStrategy:
   175      rollingUpdate:
   176        partition: 0
   177      type: RollingUpdate