blob: 5ef7c2f24261e08258179583e94898b7d57f322c [file] [log] [blame]
Fiachra Corcoranbe966552018-08-07 16:58:45 +01001# Copyright © 2017 Amdocs, Bell Canada
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
efiacor4808baa2019-03-11 23:36:05 +000014apiVersion: apps/v1beta1
15kind: StatefulSet
Fiachra Corcoranbe966552018-08-07 16:58:45 +010016metadata:
17 name: {{ include "common.fullname" . }}
18 namespace: {{ include "common.namespace" . }}
19 labels:
20 app: {{ include "common.name" . }}
21 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010022 release: {{ include "common.release" . }}
Fiachra Corcoranbe966552018-08-07 16:58:45 +010023 heritage: {{ .Release.Service }}
24spec:
25 replicas: {{ .Values.replicaCount }}
efiacor4808baa2019-03-11 23:36:05 +000026 serviceName: {{ .Values.config.dmaapDrNode.name }}
Fiachra Corcoranbe966552018-08-07 16:58:45 +010027 template:
28 metadata:
29 labels:
30 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010031 release: {{ include "common.release" . }}
Fiachra Corcoranbe966552018-08-07 16:58:45 +010032 spec:
Fiachra Corcoranbe966552018-08-07 16:58:45 +010033 initContainers:
34 - name: {{ include "common.name" . }}-readiness
35 image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
36 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
37 command:
38 - /root/ready.py
39 args:
40 - --container-name
econwar28266fa2019-03-05 16:39:00 +000041 - dmaap-dr-prov
Fiachra Corcoranbe966552018-08-07 16:58:45 +010042 env:
43 - name: NAMESPACE
44 valueFrom:
45 fieldRef:
46 apiVersion: v1
47 fieldPath: metadata.namespace
efiacore62958b2019-09-27 16:54:36 +010048 {{- if .Values.global.aafEnabled }}
efiacor0ccdd6c2020-02-05 20:42:47 +000049 - name: {{ include "common.name" . }}-aaf-readiness
50 image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
51 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
52 command:
53 - /root/ready.py
54 args:
55 - --container-name
56 - aaf-locate
efiacora03527b2020-02-07 19:02:15 +000057 - --container-name
58 - aaf-cm
efiacor0ccdd6c2020-02-05 20:42:47 +000059 env:
60 - name: NAMESPACE
61 valueFrom:
62 fieldRef:
63 apiVersion: v1
64 fieldPath: metadata.namespace
efiacore62958b2019-09-27 16:54:36 +010065 - name: {{ include "common.name" . }}-dr-node-aaf-config
66 image: "{{ include "common.repository" . }}/{{ .Values.global.aafAgentImage }}"
67 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
68 volumeMounts:
69 - mountPath: {{ .Values.persistence.aafCredsPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +010070 name: {{ include "common.fullname" . }}-aaf-props
efiacore62958b2019-09-27 16:54:36 +010071 command: ["bash","-c","exec /opt/app/aaf_config/bin/agent.sh"]
72 env:
73 - name: APP_FQI
74 value: "{{ .Values.aafConfig.fqi }}"
75 - name: aaf_locate_url
76 value: "https://aaf-locate.{{ .Release.Namespace }}:8095"
77 - name: aaf_locator_container
78 value: "{{ .Values.global.aafLocatorContainer }}"
79 - name: aaf_locator_container_ns
80 value: "{{ .Release.Namespace }}"
81 - name: aaf_locator_fqdn
82 value: "{{ .Values.aafConfig.fqdn }}"
83 - name: aaf_locator_public_fqdn
84 value: "{{.Values.aafConfig.publicFqdn}}"
85 - name: aaf_locator_app_ns
86 value: "{{ .Values.global.aafAppNs }}"
87 - name: DEPLOY_FQI
88 value: "{{ .Values.aafConfig.aafDeployFqi }}"
89 - name: DEPLOY_PASSWORD
90 value: "{{ .Values.aafConfig.aafDeployPass }}"
91 - name: cadi_longitude
92 value: "{{ .Values.aafConfig.cadiLongitude }}"
93 - name: cadi_latitude
94 value: "{{ .Values.aafConfig.cadiLatitude }}"
95 {{- end }}
econwar4d9f35f2019-04-16 08:02:13 +000096 - name: {{ include "common.name" . }}-permission-fixer
97 image: "{{ .Values.global.busyBoxRepository }}/{{ .Values.global.busyBoxImage }}"
98 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
99 volumeMounts:
100 - mountPath: {{ .Values.persistence.spoolPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100101 name: {{ include "common.fullname" . }}-data
econwar4d9f35f2019-04-16 08:02:13 +0000102 - mountPath: {{ .Values.persistence.eventLogsPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100103 name: {{ include "common.fullname" . }}-event-logs
efiacore62958b2019-09-27 16:54:36 +0100104 {{- if .Values.global.aafEnabled }}
105 - mountPath: {{ .Values.persistence.aafCredsPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100106 name: {{ include "common.fullname" . }}-aaf-props
efiacore62958b2019-09-27 16:54:36 +0100107 {{- end }}
108 command: ["chown","-Rf","1000:1001", "/opt/app/"]
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100109 containers:
110 - name: {{ include "common.name" . }}
111 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
112 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
113 ports:
econwar28266fa2019-03-05 16:39:00 +0000114 - containerPort: {{.Values.config.dmaapDrNode.externalPort}}
115 - containerPort: {{.Values.config.dmaapDrNode.externalPort2}}
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100116 {{- if eq .Values.liveness.enabled true }}
117 livenessProbe:
118 tcpSocket:
econwar28266fa2019-03-05 16:39:00 +0000119 port: {{.Values.config.dmaapDrNode.internalPort}}
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100120 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
121 periodSeconds: {{ .Values.liveness.periodSeconds }}
122 {{ end -}}
123 readinessProbe:
124 tcpSocket:
econwar28266fa2019-03-05 16:39:00 +0000125 port: {{.Values.config.dmaapDrNode.internalPort}}
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100126 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
127 periodSeconds: {{ .Values.readiness.periodSeconds }}
128 volumeMounts:
efiacore62958b2019-09-27 16:54:36 +0100129 {{- if .Values.global.aafEnabled }}
130 - mountPath: {{ .Values.persistence.aafCredsPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100131 name: {{ include "common.fullname" . }}-aaf-props
efiacore62958b2019-09-27 16:54:36 +0100132 {{- end }}
efiacor4808baa2019-03-11 23:36:05 +0000133 - mountPath: {{ .Values.persistence.spoolPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100134 name: {{ include "common.fullname" . }}-data
efiacor4808baa2019-03-11 23:36:05 +0000135 - mountPath: {{ .Values.persistence.eventLogsPath }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100136 name: {{ include "common.fullname" . }}-event-logs
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100137 - mountPath: /etc/localtime
138 name: localtime
139 readOnly: false
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100140 - mountPath: /opt/app/datartr/etc/node.properties
efiacoreabb6522019-04-08 09:46:09 +0000141 name: {{ include "common.fullname" . }}-config
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100142 subPath: node.properties
efiacor7b9a0872019-08-28 21:20:22 +0000143 - mountPath: /opt/app/datartr/etc/logback.xml
144 name: {{ include "common.fullname" . }}-log-conf
145 subPath: logback.xml
146 - mountPath: {{ .Values.global.loggingDirectory }}
147 name: {{ include "common.fullname" . }}-logs
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100148 resources:
efiacore62958b2019-09-27 16:54:36 +0100149{{ include "common.resources" . }}
Fiachra Corcoranbe966552018-08-07 16:58:45 +0100150 {{- if .Values.nodeSelector }}
151 nodeSelector:
152{{ toYaml .Values.nodeSelector | indent 10 }}
153 {{- end -}}
154 {{- if .Values.affinity }}
155 affinity:
156{{ toYaml .Values.affinity | indent 10 }}
efiacore62958b2019-09-27 16:54:36 +0100157 {{- end -}}
Krzysztof Opasiak03b10092020-01-24 22:45:16 +0100158 # Filebeat sidecar container
EmmettCox6065d3e2019-04-12 09:45:30 +0000159 - name: {{ include "common.name" . }}-filebeat-onap
econwar378cf192019-01-08 16:19:59 +0000160 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
161 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
162 volumeMounts:
163 - name: {{ include "common.fullname" . }}-filebeat-conf
164 mountPath: /usr/share/filebeat/filebeat.yml
165 subPath: filebeat.yml
166 - name: {{ include "common.fullname" . }}-data-filebeat
167 mountPath: /usr/share/filebeat/data
efiacor7b9a0872019-08-28 21:20:22 +0000168 - name: {{ include "common.fullname" . }}-logs
econwar378cf192019-01-08 16:19:59 +0000169 mountPath: /var/log/onap/datarouter-node
Sylvain Desbureaux789d79a2018-12-20 11:04:34 +0100170 imagePullSecrets:
171 - name: "{{ include "common.namespace" . }}-docker-registry-key"
efiacor4808baa2019-03-11 23:36:05 +0000172 volumes:
173 - name: localtime
174 hostPath:
175 path: /etc/localtime
efiacoreabb6522019-04-08 09:46:09 +0000176 - name: {{ include "common.fullname" . }}-config
efiacor4808baa2019-03-11 23:36:05 +0000177 configMap:
efiacoreabb6522019-04-08 09:46:09 +0000178 name: {{ include "common.fullname" . }}-configmap
179 items:
180 - key: node.properties
181 path: node.properties
efiacor4808baa2019-03-11 23:36:05 +0000182 - name: {{ include "common.fullname" . }}-log-conf
183 configMap:
184 name: {{ include "common.fullname" . }}-log
185 - name: {{ include "common.fullname" . }}-filebeat-conf
186 configMap:
efiacor7b9a0872019-08-28 21:20:22 +0000187 name: {{ include "common.fullname" . }}-dmaap-dr-node-filebeat-configmap
efiacor4808baa2019-03-11 23:36:05 +0000188 - name: {{ include "common.fullname" . }}-data-filebeat
189 emptyDir: {}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100190 - name: {{ include "common.fullname" . }}-logs
191 emptyDir: {}
192 {{- if not .Values.persistence.enabled }}
mprzybyse1ea50d2020-01-31 10:09:02 +0000193 - name: {{ include "common.fullname" . }}-event-logs
efiacor4808baa2019-03-11 23:36:05 +0000194 emptyDir: {}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100195 - name: {{ include "common.fullname" . }}-data
efiacor7b9a0872019-08-28 21:20:22 +0000196 emptyDir: {}
efiacore62958b2019-09-27 16:54:36 +0100197 {{- if .Values.global.aafEnabled }}
mprzybyse1ea50d2020-01-31 10:09:02 +0000198 - name: {{ include "common.fullname" . }}-aaf-props
efiacore62958b2019-09-27 16:54:36 +0100199 emptyDir: {}
200 {{- end }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100201 {{- end }}
202{{- if .Values.persistence.enabled }}
efiacor4808baa2019-03-11 23:36:05 +0000203 volumeClaimTemplates:
204 - metadata:
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100205 name: {{ include "common.fullname" . }}-data
efiacor4808baa2019-03-11 23:36:05 +0000206 labels:
207 name: {{ include "common.fullname" . }}
208 spec:
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100209 accessModes:
210 - {{ .Values.persistence.accessMode }}
211 storageClassName: {{ include "common.storageClass" . }}
efiacor4808baa2019-03-11 23:36:05 +0000212 resources:
213 requests:
214 storage: {{ .Values.persistence.spoolSize }}
efiacor4808baa2019-03-11 23:36:05 +0000215 - metadata:
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100216 name: {{ include "common.fullname" . }}-event-logs
efiacor4808baa2019-03-11 23:36:05 +0000217 labels:
218 name: {{ include "common.fullname" . }}
219 spec:
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100220 accessModes:
221 - {{ .Values.persistence.accessMode }}
222 {{- if eq "True" (include "common.needPV" .) }}
223 storageClassName: "{{ include "common.fullname" . }}-data-event-logs"
224 {{- else }}
225 storageClassName: {{ include "common.storageClass" . }}
226 {{- end }}
efiacor4808baa2019-03-11 23:36:05 +0000227 resources:
228 requests:
229 storage: {{ .Values.persistence.eventLogSize }}
efiacore62958b2019-09-27 16:54:36 +0100230{{- if .Values.global.aafEnabled }}
231 - metadata:
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100232 name: {{ include "common.fullname" . }}-aaf-props
efiacore62958b2019-09-27 16:54:36 +0100233 labels:
234 name: {{ include "common.fullname" . }}
235 spec:
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100236 accessModes:
237 - {{ .Values.persistence.accessMode }}
238 {{- if eq "True" (include "common.needPV" .) }}
239 storageClassName: "{{ include "common.fullname" . }}-data-aaf-props"
240 {{- else }}
241 storageClassName: {{ include "common.storageClass" . }}
242 {{- end }}
efiacore62958b2019-09-27 16:54:36 +0100243 resources:
244 requests:
245 storage: {{ .Values.persistence.aafCredsSize }}
Sylvain Desbureaux60141122019-11-29 15:55:11 +0100246{{- end }}
efiacore62958b2019-09-27 16:54:36 +0100247{{- end }}