Collectd operator utilties
[demo.git] / vnfs / DAaaS / training-core / charts / kubernetes-HDFS / charts / hdfs-krb5-k8s / templates / statefulset.yaml
1 # A headless service to create DNS records.
2 apiVersion: v1
3 kind: Service
4 metadata:
5   name: {{ template "hdfs-k8s.krb5.fullname" . }}
6   labels:
7     app: {{ template "hdfs-k8s.krb5.name" . }}
8     chart: {{ template "hdfs-k8s.subchart" . }}
9     release: {{ .Release.Name }}
10   annotations:
11     # TODO: Deprecated. Replace tolerate-unready-endpoints with
12     # v1.Service.PublishNotReadyAddresses.
13     service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
14 spec:
15   ports:
16     - port: {{ .Values.service.port }}
17       protocol: TCP
18       name: kdc-tcp
19     - port: {{ .Values.service.port }}
20       protocol: UDP
21       name: kdc-udp
22   clusterIP: None
23   selector:
24     app: {{ template "hdfs-k8s.krb5.name" . }}
25     release: {{ .Release.Name }}
26 ---
27 apiVersion: apps/v1beta1
28 kind: StatefulSet
29 metadata:
30   name: {{ template "hdfs-k8s.krb5.fullname" . }}
31   labels:
32     app: {{ template "hdfs-k8s.krb5.name" . }}
33     chart: {{ template "hdfs-k8s.subchart" . }}
34     release: {{ .Release.Name }}
35 spec:
36   serviceName: {{ template "hdfs-k8s.krb5.fullname" . }}
37   replicas: {{ .Values.replicaCount }}
38   selector:
39     matchLabels:
40       app: {{ template "hdfs-k8s.krb5.name" . }}
41       release: {{ .Release.Name }}
42   template:
43     metadata:
44       labels:
45         app: {{ template "hdfs-k8s.krb5.name" . }}
46         release: {{ .Release.Name }}
47       {{- if .Values.podAnnotations }}
48       annotations:
49 {{ toYaml .Values.podAnnotations | indent 8 }}
50       {{- end }}
51     spec:
52       containers:
53         - name: {{ .Chart.Name }}
54           image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
55           imagePullPolicy: {{ .Values.image.pullPolicy }}
56           env:
57             - name: KRB5_REALM
58               value: {{ .Values.global.kerberosRealm }}
59             - name: KRB5_KDC
60               value: {{ template "krb5-svc-0" . }}
61           ports:
62             - name: kdc-tcp
63               containerPort: 88
64               protocol: TCP
65             - name: kdc-udp
66               containerPort: 88
67               protocol: UDP
68           livenessProbe:
69             tcpSocket:
70               port: kdc-tcp
71           readinessProbe:
72             tcpSocket:
73               port: kdc-tcp
74       restartPolicy: Always
75       {{- if .Values.global.podSecurityContext.enabled }}
76       securityContext:
77         runAsUser: {{ .Values.global.podSecurityContext.runAsUser }}
78         fsGroup: {{ .Values.global.podSecurityContext.fsGroup }}
79       {{- end }}
80   volumeClaimTemplates:
81     - metadata:
82         name: datadir
83       spec:
84         accessModes:
85           - {{ .Values.persistence.accessMode | quote }}
86         resources:
87           requests:
88             storage: {{ .Values.persistence.size | quote }}
89       {{- if .Values.persistence.storageClass }}
90         {{- if (eq "-" .Values.persistence.storageClass) }}
91         storageClassName: ""
92         {{- else }}
93         storageClassName: "{{ .Values.persistence.storageClass }}"
94         {{- end }}
95       {{- end }}
96       {{- if .Values.persistence.selector }}
97         selector:
98 {{ toYaml .Values.persistence.selector | indent 10 }}
99       {{- end }}