github.com/percona/percona-xtradb-cluster-operator@v1.14.0/e2e-tests/monitoring-2-0/compare/statefulset_monitoring-haproxy.yml (about)

     1  apiVersion: apps/v1
     2  kind: StatefulSet
     3  metadata:
     4    generation: 3
     5    name: monitoring-haproxy
     6    ownerReferences:
     7      - controller: true
     8        kind: PerconaXtraDBCluster
     9        name: monitoring
    10  spec:
    11    podManagementPolicy: OrderedReady
    12    replicas: 2
    13    revisionHistoryLimit: 10
    14    selector:
    15      matchLabels:
    16        app.kubernetes.io/component: haproxy
    17        app.kubernetes.io/instance: monitoring
    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: monitoring-haproxy
    22    template:
    23      metadata:
    24        labels:
    25          app.kubernetes.io/component: haproxy
    26          app.kubernetes.io/instance: monitoring
    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        containers:
    32          - env:
    33              - name: PMM_SERVER
    34                value: monitoring-service
    35              - name: PMM_USER
    36                value: api_key
    37              - name: PMM_PASSWORD
    38                valueFrom:
    39                  secretKeyRef:
    40                    key: pmmserverkey
    41                    name: internal-monitoring
    42              - name: CLIENT_PORT_LISTEN
    43                value: "7777"
    44              - name: CLIENT_PORT_MIN
    45                value: "30100"
    46              - name: CLIENT_PORT_MAX
    47                value: "30105"
    48              - name: POD_NAME
    49                valueFrom:
    50                  fieldRef:
    51                    apiVersion: v1
    52                    fieldPath: metadata.name
    53              - name: POD_NAMESPASE
    54                valueFrom:
    55                  fieldRef:
    56                    apiVersion: v1
    57                    fieldPath: metadata.namespace
    58              - name: PMM_AGENT_SERVER_ADDRESS
    59                value: monitoring-service
    60              - name: PMM_AGENT_SERVER_USERNAME
    61                value: api_key
    62              - name: PMM_AGENT_SERVER_PASSWORD
    63                valueFrom:
    64                  secretKeyRef:
    65                    key: pmmserverkey
    66                    name: internal-monitoring
    67              - name: PMM_AGENT_LISTEN_PORT
    68                value: "7777"
    69              - name: PMM_AGENT_PORTS_MIN
    70                value: "30100"
    71              - name: PMM_AGENT_PORTS_MAX
    72                value: "30105"
    73              - name: PMM_AGENT_CONFIG_FILE
    74                value: /usr/local/percona/pmm2/config/pmm-agent.yaml
    75              - name: PMM_AGENT_SERVER_INSECURE_TLS
    76                value: "1"
    77              - name: PMM_AGENT_LISTEN_ADDRESS
    78                value: 0.0.0.0
    79              - name: PMM_AGENT_SETUP_METRICS_MODE
    80                value: push
    81              - name: PMM_AGENT_SETUP
    82                value: "1"
    83              - name: PMM_AGENT_SETUP_FORCE
    84                value: "1"
    85              - name: PMM_AGENT_SETUP_NODE_TYPE
    86                value: container
    87              - name: PMM_AGENT_SETUP_NODE_NAME
    88                value: $(PMM_PREFIX)$(POD_NAMESPASE)-$(POD_NAME)
    89              - name: DB_TYPE
    90                value: haproxy
    91              - name: MONITOR_USER
    92                value: monitor
    93              - name: MONITOR_PASSWORD
    94                valueFrom:
    95                  secretKeyRef:
    96                    key: monitor
    97                    name: internal-monitoring
    98              - name: DB_USER
    99                value: monitor
   100              - name: DB_PASSWORD
   101                valueFrom:
   102                  secretKeyRef:
   103                    key: monitor
   104                    name: internal-monitoring
   105              - name: DB_CLUSTER
   106                value: pxc
   107              - name: DB_HOST
   108                value: localhost
   109              - name: DB_PORT
   110                value: "3306"
   111              - name: CLUSTER_NAME
   112                value: monitoring
   113              - name: PMM_ADMIN_CUSTOM_PARAMS
   114                value: --listen-port=8404
   115              - name: PMM_AGENT_PRERUN_SCRIPT
   116                value: /var/lib/mysql/pmm-prerun.sh
   117              - name: PMM_AGENT_SIDECAR
   118                value: "true"
   119              - name: PMM_AGENT_SIDECAR_SLEEP
   120                value: "5"
   121              - name: PMM_AGENT_PATHS_TEMPDIR
   122                value: /tmp
   123            envFrom:
   124              - secretRef:
   125                  name: my-env-var-secrets
   126                  optional: true
   127            imagePullPolicy: Always
   128            lifecycle:
   129              preStop:
   130                exec:
   131                  command:
   132                    - bash
   133                    - -c
   134                    - pmm-admin unregister --force
   135            livenessProbe:
   136              failureThreshold: 3
   137              httpGet:
   138                path: /local/Status
   139                port: 7777
   140                scheme: HTTP
   141              initialDelaySeconds: 60
   142              periodSeconds: 10
   143              successThreshold: 1
   144              timeoutSeconds: 5
   145            name: pmm-client
   146            ports:
   147              - containerPort: 7777
   148                protocol: TCP
   149              - containerPort: 30100
   150                protocol: TCP
   151              - containerPort: 30101
   152                protocol: TCP
   153              - containerPort: 30102
   154                protocol: TCP
   155              - containerPort: 30103
   156                protocol: TCP
   157              - containerPort: 30104
   158                protocol: TCP
   159              - containerPort: 30105
   160                protocol: TCP
   161            resources:
   162              limits:
   163                cpu: "1"
   164                memory: 1G
   165              requests:
   166                cpu: 308m
   167                memory: 508M
   168            terminationMessagePath: /dev/termination-log
   169            terminationMessagePolicy: File
   170            volumeMounts:
   171              - mountPath: /var/lib/mysql
   172                name: bin
   173          - env:
   174              - name: PXC_SERVICE
   175                value: monitoring-pxc
   176              - name: LIVENESS_CHECK_TIMEOUT
   177                value: "5"
   178              - name: READINESS_CHECK_TIMEOUT
   179                value: "1"
   180            envFrom:
   181              - secretRef:
   182                  name: my-env-var-secrets
   183                  optional: true
   184            imagePullPolicy: Always
   185            livenessProbe:
   186              exec:
   187                command:
   188                  - /usr/local/bin/liveness-check.sh
   189              failureThreshold: 4
   190              initialDelaySeconds: 60
   191              periodSeconds: 30
   192              successThreshold: 1
   193              timeoutSeconds: 5
   194            name: haproxy
   195            ports:
   196              - containerPort: 3306
   197                name: mysql
   198                protocol: TCP
   199              - containerPort: 3307
   200                name: mysql-replicas
   201                protocol: TCP
   202              - containerPort: 3309
   203                name: proxy-protocol
   204                protocol: TCP
   205              - containerPort: 33062
   206                name: mysql-admin
   207                protocol: TCP
   208              - containerPort: 33060
   209                name: mysqlx
   210                protocol: TCP
   211            readinessProbe:
   212              exec:
   213                command:
   214                  - /usr/local/bin/readiness-check.sh
   215              failureThreshold: 3
   216              initialDelaySeconds: 15
   217              periodSeconds: 5
   218              successThreshold: 1
   219              timeoutSeconds: 1
   220            resources:
   221              requests:
   222                cpu: 300m
   223                memory: 500M
   224            terminationMessagePath: /dev/termination-log
   225            terminationMessagePolicy: File
   226            volumeMounts:
   227              - mountPath: /etc/haproxy-custom/
   228                name: haproxy-custom
   229              - mountPath: /etc/haproxy/pxc
   230                name: haproxy-auto
   231              - mountPath: /etc/mysql/mysql-users-secret
   232                name: mysql-users-secret-file
   233              - mountPath: /etc/mysql/haproxy-env-secret
   234                name: my-env-var-secrets
   235          - args:
   236              - /usr/bin/peer-list
   237              - -on-change=/usr/bin/add_pxc_nodes.sh
   238              - -service=$(PXC_SERVICE)
   239            env:
   240              - name: PXC_SERVICE
   241                value: monitoring-pxc
   242            envFrom:
   243              - secretRef:
   244                  name: my-env-var-secrets
   245                  optional: true
   246            imagePullPolicy: Always
   247            name: pxc-monit
   248            resources: {}
   249            terminationMessagePath: /dev/termination-log
   250            terminationMessagePolicy: File
   251            volumeMounts:
   252              - mountPath: /etc/haproxy-custom/
   253                name: haproxy-custom
   254              - mountPath: /etc/haproxy/pxc
   255                name: haproxy-auto
   256              - mountPath: /etc/mysql/mysql-users-secret
   257                name: mysql-users-secret-file
   258              - mountPath: /etc/mysql/haproxy-env-secret
   259                name: my-env-var-secrets
   260        dnsPolicy: ClusterFirst
   261        initContainers:
   262          - command:
   263              - /pxc-init-entrypoint.sh
   264            imagePullPolicy: Always
   265            name: pxc-init
   266            resources:
   267              limits:
   268                cpu: 50m
   269                memory: 50M
   270            terminationMessagePath: /dev/termination-log
   271            terminationMessagePolicy: File
   272            volumeMounts:
   273              - mountPath: /var/lib/mysql
   274                name: bin
   275        restartPolicy: Always
   276        schedulerName: default-scheduler
   277        securityContext: {}
   278        serviceAccount: default
   279        serviceAccountName: default
   280        terminationGracePeriodSeconds: 30
   281        volumes:
   282          - configMap:
   283              defaultMode: 420
   284              name: monitoring-haproxy
   285              optional: true
   286            name: haproxy-custom
   287          - emptyDir: {}
   288            name: haproxy-auto
   289          - name: mysql-users-secret-file
   290            secret:
   291              defaultMode: 420
   292              optional: false
   293              secretName: internal-monitoring
   294          - name: my-env-var-secrets
   295            secret:
   296              defaultMode: 420
   297              optional: true
   298              secretName: my-env-var-secrets
   299          - emptyDir: {}
   300            name: bin
   301    updateStrategy:
   302      rollingUpdate:
   303        partition: 0
   304      type: RollingUpdate