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