Skip to content

PMM HA pmm stateful set name differs from names in haproxy configmap #729

@ihanick

Description

@ihanick

haproxy configuration assumes that pmm pod names are pmm-0, pmm-1, pmm-2, but statefulset name is pmm-pmm-ha

StatefulSet name generated from:

  name: {{ include "pmm.fullname" . }}

{{- define "pmm.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: pmm-pmm-ha
  labels:
    helm.sh/chart: pmm-ha-1.3.23
    app.kubernetes.io/name: pmm-ha
    app.kubernetes.io/instance: pmm
    app.kubernetes.io/component: pmm-server
...
---
# Source: pmm-ha/templates/haproxy-configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: pmm-haproxy
  namespace: pmm3
  labels:
    app.kubernetes.io/name: haproxy
    app.kubernetes.io/instance: pmm
    app.kubernetes.io/managed-by: Helm
data:
  haproxy.cfg: |
...
    backend https_back
        option httpchk
        http-check send meth GET uri /v1/server/leaderHealthCheck ver HTTP/1.1 hdr Host www
        http-check expect status 200
        server pmm-0-https pmm-0.monitoring-service.pmm3.svc.cluster.local:8443 check ssl verify none resolvers k8s init-addr last,libc,none
        server pmm-1-https pmm-1.monitoring-service.pmm3.svc.cluster.local:8443 check ssl verify none resolvers k8s init-addr last,libc,none
        server pmm-2-https pmm-2.monitoring-service.pmm3.svc.cluster.local:8443 check ssl verify none resolvers k8s init-addr last,libc,none
...

So, it's possible to set fullnameOverride: "pmm" under values.yaml to make it working.
Could you make haproxy working if override is not defined?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions