Collectd operator utilties
[demo.git] / vnfs / DAaaS / deploy / training-core / charts / kubernetes-HDFS / charts / hdfs-k8s / templates / _helpers.tpl
1 {{/* vim: set filetype=mustache: */}}
2 {{/*
3 Create a short app name.
4 */}}
5 {{- define "hdfs-k8s.name" -}}
6 hdfs
7 {{- end -}}
8
9 {{/*
10 Create a fully qualified app name.
11 We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
12 If release name contains chart name it will be used as a full name.
13 */}}
14 {{- define "hdfs-k8s.fullname" -}}
15 {{- if .Values.global.fullnameOverride -}}
16 {{- .Values.global.fullnameOverride | trunc 63 | trimSuffix "-" -}}
17 {{- else -}}
18 {{- $name := include "hdfs-k8s.name" . -}}
19 {{- if contains $name .Release.Name -}}
20 {{- .Release.Name | trunc 63 | trimSuffix "-" -}}
21 {{- else -}}
22 {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
23 {{- end -}}
24 {{- end -}}
25 {{- end -}}
26
27 {{/*
28 Create chart name and version as used by the subchart label.
29 */}}
30 {{- define "hdfs-k8s.subchart" -}}
31 {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
32 {{- end -}}
33
34 {{- define "zookeeper-fullname" -}}
35 {{- $fullname := include "hdfs-k8s.fullname" . -}}
36 {{- if contains "zookeeper" $fullname -}}
37 {{- printf "%s" $fullname -}}
38 {{- else -}}
39 {{- printf "%s-zookeeper" $fullname | trunc 63 | trimSuffix "-" -}}
40 {{- end -}}
41 {{- end -}}
42
43 {{- define "hdfs-k8s.config.name" -}}
44 {{- template "hdfs-k8s.name" . -}}-config
45 {{- end -}}
46
47 {{- define "hdfs-k8s.config.fullname" -}}
48 {{- $fullname := include "hdfs-k8s.fullname" . -}}
49 {{- if contains "config" $fullname -}}
50 {{- printf "%s" $fullname -}}
51 {{- else -}}
52 {{- printf "%s-config" $fullname | trunc 63 | trimSuffix "-" -}}
53 {{- end -}}
54 {{- end -}}
55
56 {{- define "hdfs-k8s.krb5.name" -}}
57 {{- template "hdfs-k8s.name" . -}}-krb5
58 {{- end -}}
59
60 {{- define "hdfs-k8s.krb5.fullname" -}}
61 {{- $fullname := include "hdfs-k8s.fullname" . -}}
62 {{- if contains "config" $fullname -}}
63 {{- printf "%s" $fullname -}}
64 {{- else -}}
65 {{- printf "%s-krb5" $fullname | trunc 63 | trimSuffix "-" -}}
66 {{- end -}}
67 {{- end -}}
68
69 {{- define "hdfs-k8s.journalnode.name" -}}
70 {{- template "hdfs-k8s.name" . -}}-journalnode
71 {{- end -}}
72
73 {{- define "hdfs-k8s.journalnode.fullname" -}}
74 {{- $fullname := include "hdfs-k8s.fullname" . -}}
75 {{- if contains "journalnode" $fullname -}}
76 {{- printf "%s" $fullname -}}
77 {{- else -}}
78 {{- printf "%s-journalnode" $fullname | trunc 63 | trimSuffix "-" -}}
79 {{- end -}}
80 {{- end -}}
81
82 {{- define "hdfs-k8s.namenode.name" -}}
83 {{- template "hdfs-k8s.name" . -}}-namenode
84 {{- end -}}
85
86 {{- define "hdfs-k8s.namenode.fullname" -}}
87 {{- $fullname := include "hdfs-k8s.fullname" . -}}
88 {{- if contains "namenode" $fullname -}}
89 {{- printf "%s" $fullname -}}
90 {{- else -}}
91 {{- printf "%s-namenode" $fullname | trunc 63 | trimSuffix "-" -}}
92 {{- end -}}
93 {{- end -}}
94
95 {{- define "hdfs-k8s.datanode.name" -}}
96 {{- template "hdfs-k8s.name" . -}}-datanode
97 {{- end -}}
98
99 {{- define "hdfs-k8s.datanode.fullname" -}}
100 {{- $fullname := include "hdfs-k8s.fullname" . -}}
101 {{- if contains "datanode" $fullname -}}
102 {{- printf "%s" $fullname -}}
103 {{- else -}}
104 {{- printf "%s-datanode" $fullname | trunc 63 | trimSuffix "-" -}}
105 {{- end -}}
106 {{- end -}}
107
108 {{- define "hdfs-k8s.client.name" -}}
109 {{- template "hdfs-k8s.name" . -}}-client
110 {{- end -}}
111
112 {{- define "hdfs-k8s.client.fullname" -}}
113 {{- $fullname := include "hdfs-k8s.fullname" . -}}
114 {{- if contains "client" $fullname -}}
115 {{- printf "%s" $fullname -}}
116 {{- else -}}
117 {{- printf "%s-client" $fullname | trunc 63 | trimSuffix "-" -}}
118 {{- end -}}
119 {{- end -}}
120
121 {{/*
122 Create the kerberos principal suffix for core HDFS services
123 */}}
124 {{- define "hdfs-principal" -}}
125 {{- printf "hdfs/_HOST@%s" .Values.global.kerberosRealm -}}
126 {{- end -}}
127
128 {{/*
129 Create the kerberos principal for HTTP services
130 */}}
131 {{- define "http-principal" -}}
132 {{- printf "HTTP/_HOST@%s" .Values.global.kerberosRealm -}}
133 {{- end -}}
134
135 {{/*
136 Create the name for a Kubernetes Configmap containing a Kerberos config file.
137 */}}
138 {{- define "krb5-configmap" -}}
139 {{- if .Values.global.kerberosConfigMapOverride -}}
140 {{- .Values.global.kerberosConfigMapOverride | trunc 63 | trimSuffix "-" -}}
141 {{- else -}}
142 {{- $name := include "hdfs-k8s.krb5.fullname" . -}}
143 {{- printf "%s-config" $name | trunc 63 | trimSuffix "-" -}}
144 {{- end -}}
145 {{- end -}}
146
147 {{/*
148 Create the name for a Kubernetes Secret containing Kerberos keytabs.
149 */}}
150 {{- define "krb5-keytabs-secret" -}}
151 {{- if .Values.global.kerberosKeytabsSecretOverride -}}
152 {{- .Values.global.kerberosKeytabsSecretOverride | trunc 63 | trimSuffix "-" -}}
153 {{- else -}}
154 {{- $name := include "hdfs-k8s.krb5.fullname" . -}}
155 {{- printf "%s-keytabs" $name | trunc 63 | trimSuffix "-" -}}
156 {{- end -}}
157 {{- end -}}
158
159
160 {{/*
161 Create the domain name part of services.
162 The HDFS config file should specify FQDN of services. Otherwise, Kerberos
163 login may fail.
164 */}}
165 {{- define "svc-domain" -}}
166 {{- printf "%s.svc.cluster.local" .Release.Namespace -}}
167 {{- end -}}
168
169 {{/*
170 Create the zookeeper quorum server list.  The below uses two loops to make
171 sure the last item does not have comma. It uses index 0 for the last item
172 since that is the only special index that helm template gives us.
173 */}}
174 {{- define "zookeeper-quorum" -}}
175 {{- if .Values.global.zookeeperQuorumOverride -}}
176 {{- .Values.global.zookeeperQuorumOverride -}}
177 {{- else -}}
178 {{- $service := include "zookeeper-fullname" . -}}
179 {{- $domain := include "svc-domain" . -}}
180 {{- $replicas := .Values.global.zookeeperQuorumSize | int -}}
181 {{- range $i, $e := until $replicas -}}
182   {{- if ne $i 0 -}}
183     {{- printf "%s-%d.%s-headless.%s:2181," $service $i $service $domain -}}
184   {{- end -}}
185 {{- end -}}
186 {{- range $i, $e := until $replicas -}}
187   {{- if eq $i 0 -}}
188     {{- printf "%s-%d.%s-headless.%s:2181" $service $i $service $domain -}}
189   {{- end -}}
190 {{- end -}}
191 {{- end -}}
192 {{- end -}}
193
194 {{/*
195 Construct the name of the Kerberos KDC pod 0.
196 */}}
197 {{- define "krb5-pod-0" -}}
198 {{- template "hdfs-k8s.krb5.fullname" . -}}-0
199 {{- end -}}
200
201 {{/*
202 Construct the full name of the Kerberos KDC statefulset member 0.
203 */}}
204 {{- define "krb5-svc-0" -}}
205 {{- $pod := include "krb5-pod-0" . -}}
206 {{- $service := include "hdfs-k8s.krb5.fullname" . -}}
207 {{- $domain := include "svc-domain" . -}}
208 {{- printf "%s.%s.%s" $pod $service $domain -}}
209 {{- end -}}
210
211 {{/*
212 Create the journalnode quorum server list.  The below uses two loops to make
213 sure the last item does not have the delimiter. It uses index 0 for the last
214 item since that is the only special index that helm template gives us.
215 */}}
216 {{- define "journalnode-quorum" -}}
217 {{- $service := include "hdfs-k8s.journalnode.fullname" . -}}
218 {{- $domain := include "svc-domain" . -}}
219 {{- $replicas := .Values.global.journalnodeQuorumSize | int -}}
220 {{- range $i, $e := until $replicas -}}
221   {{- if ne $i 0 -}}
222     {{- printf "%s-%d.%s.%s:8485;" $service $i $service $domain -}}
223   {{- end -}}
224 {{- end -}}
225 {{- range $i, $e := until $replicas -}}
226   {{- if eq $i 0 -}}
227     {{- printf "%s-%d.%s.%s:8485" $service $i $service $domain -}}
228   {{- end -}}
229 {{- end -}}
230 {{- end -}}
231
232 {{/*
233 Construct the name of the namenode pod 0.
234 */}}
235 {{- define "namenode-pod-0" -}}
236 {{- template "hdfs-k8s.namenode.fullname" . -}}-0
237 {{- end -}}
238
239 {{/*
240 Construct the full name of the namenode statefulset member 0.
241 */}}
242 {{- define "namenode-svc-0" -}}
243 {{- $pod := include "namenode-pod-0" . -}}
244 {{- $service := include "hdfs-k8s.namenode.fullname" . -}}
245 {{- $domain := include "svc-domain" . -}}
246 {{- printf "%s.%s.%s" $pod $service $domain -}}
247 {{- end -}}
248
249 {{/*
250 Construct the name of the namenode pod 1.
251 */}}
252 {{- define "namenode-pod-1" -}}
253 {{- template "hdfs-k8s.namenode.fullname" . -}}-1
254 {{- end -}}
255
256 {{/*
257 Construct the full name of the namenode statefulset member 1.
258 */}}
259 {{- define "namenode-svc-1" -}}
260 {{- $pod := include "namenode-pod-1" . -}}
261 {{- $service := include "hdfs-k8s.namenode.fullname" . -}}
262 {{- $domain := include "svc-domain" . -}}
263 {{- printf "%s.%s.%s" $pod $service $domain -}}
264 {{- end -}}