--- kind: StatefulSet apiVersion: apps/v1 metadata: name: xc-manage-etcd labels: app.kubernetes.io/name: xc-manage-etcd helm.sh/chart: '{{ template "xc-manage.chart" . }}' app.kubernetes.io/managed-by: "{{ .Release.Service }}" app.kubernetes.io/managed-by: "{{ .Release.Service }}" app: xc-manage-etcd spec: serviceName: xc-manage-etcd selector: matchLabels: app: xc-manage-etcd {{- if .Values.etcd.persistence.enabled }} volumeClaimTemplates: - metadata: name: data spec: accessModes: - ReadWriteOnce resources: requests: storage: 5Gi storageClassName: "{{ .Values.etcd.persistence.storageClass }}" volumeMode: Filesystem {{- end }} template: metadata: labels: app.kubernetes.io/name: xc-manage-etcd helm.sh/chart: '{{ template "xc-manage.chart" . }}' app.kubernetes.io/managed-by: "{{ .Release.Service }}" app.kubernetes.io/managed-by: "{{ .Release.Service }}" app: xc-manage-etcd spec: containers: - name: etcd {{- if contains "/" .Values.etcd.image.repository }} image: "{{ .Values.etcd.image.repository }}:{{ .Values.etcd.image.tag }}{{ include "beagle.imageArch" . }}" {{- else }} image: "{{ .Values.global.hub }}/{{ .Values.etcd.image.repository }}:{{ .Values.etcd.image.tag }}{{ include "beagle.imageArch" . }}" {{- end }} imagePullPolicy: "{{ .Values.global.imagePullPolicy }}" command: - /usr/local/bin/etcd - --name - xc-manage-etcd-0 - --data-dir - /data - --initial-advertise-peer-urls - http://xc-manage-etcd-0:2380 - --listen-peer-urls - http://0.0.0.0:2380 - --listen-client-urls - http://0.0.0.0:2379 - --advertise-client-urls - http://xc-manage-etcd-0:2379 ports: - containerPort: 2379 name: client protocol: TCP {{- if .Values.etcd.persistence.enabled }} volumeMounts: - name: data mountPath: /data {{- end }}