94 lines
3.3 KiB
YAML
94 lines
3.3 KiB
YAML
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
namespace: {{ .Release.Namespace }}
|
|
name: statefulset-mariadb
|
|
labels:
|
|
{{- include "site.labels" . | nindent 4 }}
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app: mariadb
|
|
tier: mariadb
|
|
serviceName: "mariadb"
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: mariadb
|
|
tier: mariadb
|
|
{{- include "site.labels" . | nindent 8 }}
|
|
annotations:
|
|
checksum/configmap: {{ include (print $.Template.BasePath "/mariadb/configmap-mariadb.yaml") . | sha256sum }}
|
|
checksum/secret: {{ include (print $.Template.BasePath "/mariadb/secret-mariadb.yaml") . | sha256sum }}
|
|
checksum/values-config: {{ .Files.Get "values-config-k3s.yaml" | sha256sum }}
|
|
spec:
|
|
automountServiceAccountToken: false
|
|
containers:
|
|
- image: {{ required ".Values.mariadb.repository entry is required!" .Values.mariadb.repository }}:{{ required ".Values.mariadb.tag entry is required!" .Values.mariadb.tag }}
|
|
imagePullPolicy: IfNotPresent
|
|
name: mariadb
|
|
envFrom:
|
|
- configMapRef:
|
|
name: configmap-mariadb-envvars
|
|
- secretRef:
|
|
name: secret-mariadb
|
|
|
|
ports:
|
|
- containerPort: 3306
|
|
name: mariadb
|
|
|
|
startupProbe:
|
|
tcpSocket:
|
|
port: 3306
|
|
failureThreshold: 12
|
|
periodSeconds: 10
|
|
timeoutSeconds: 5
|
|
|
|
livenessProbe:
|
|
tcpSocket:
|
|
port: 3306
|
|
periodSeconds: 60
|
|
failureThreshold: 1
|
|
initialDelaySeconds: 0
|
|
timeoutSeconds: 5
|
|
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: 3306
|
|
periodSeconds: 10
|
|
failureThreshold: 3
|
|
initialDelaySeconds: 0
|
|
timeoutSeconds: 5
|
|
|
|
resources:
|
|
requests:
|
|
memory: "{{ required ".Values.mariadb.ressourceRequest.memory entry is required!" .Values.mariadb.ressourceRequest.memory }}"
|
|
cpu: "{{ required ".Values.mariadb.ressourceRequest.cpu entry is required!" .Values.mariadb.ressourceRequest.cpu }}"
|
|
ephemeral-storage: "{{ required ".Values.mariadb.ressourceRequest.ephemeralStorage entry is required!" .Values.mariadb.ressourceRequest.ephemeralStorage }}"
|
|
limits:
|
|
memory: "{{ required ".Values.mariadb.ressourceLimit.memory entry is required!" .Values.mariadb.ressourceLimit.memory }}"
|
|
cpu: "{{ required ".Values.mariadb.ressourceLimit.cpu entry is required!" .Values.mariadb.ressourceLimit.cpu }}"
|
|
ephemeral-storage: "{{ required ".Values.mariadb.ressourceLimit.ephemeralStorage entry is required!" .Values.mariadb.ressourceLimit.ephemeralStorage }}"
|
|
|
|
volumeMounts:
|
|
- name: mariadb-datadir
|
|
mountPath: /var/lib/mysql
|
|
- name: mariadb-config
|
|
mountPath: /etc/mysql/conf.d/
|
|
|
|
lifecycle:
|
|
preStop:
|
|
exec:
|
|
command: ["/bin/sh","-c","pkill -SIGTERM mariadb"]
|
|
|
|
terminationGracePeriodSeconds: {{ required ".Values.mariadb.terminationGracePeriodSeconds entry is required!" .Values.mariadb.terminationGracePeriodSeconds }}
|
|
|
|
volumes:
|
|
- name: mariadb-datadir
|
|
persistentVolumeClaim:
|
|
claimName: pvc-mariadb-datadir
|
|
- name: mariadb-config
|
|
configMap:
|
|
name: configmap-mariadb-config
|