blob: 06e1b6b57d6a498d1e1bc9c00588d9c8d896b54f [file] [log] [blame]
BorislavG5f3b6192018-03-25 18:12:38 +03001# Copyright © 2017 Amdocs, Bell Canada
Mukul7de56c82018-09-04 08:03:27 +00002# Modifications Copyright © 2018 AT&T
BorislavG5f3b6192018-03-25 18:12:38 +03003#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16apiVersion: extensions/v1beta1
17kind: Deployment
18metadata:
19 name: {{ include "common.fullname" . }}
20 namespace: {{ include "common.namespace" . }}
21 labels:
22 app: {{ include "common.name" . }}
23 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
24 release: {{ .Release.Name }}
25 heritage: {{ .Release.Service }}
26spec:
27 replicas: {{ .Values.replicaCount }}
28 template:
29 metadata:
30 labels:
31 app: {{ include "common.name" . }}
32 release: {{ .Release.Name }}
33 spec:
34 initContainers:
35 - command:
36 - /bin/sh
37 - -c
38 - |
39 sysctl -w vm.max_map_count=262144
40 mkdir -p /logroot/elasticsearch/logs
41 mkdir -p /logroot/elasticsearch/data
42 chmod -R 777 /logroot/elasticsearch
43 chown -R root:root /logroot
44 env:
45 - name: NAMESPACE
46 valueFrom:
47 fieldRef:
48 apiVersion: v1
49 fieldPath: metadata.namespace
50 securityContext:
51 privileged: true
52 image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.busyboxImage }}
53 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
54 name: init-sysctl
55 volumeMounts:
56 - name: {{ include "common.fullname" . }}-logs
57 mountPath: /logroot/
58 containers:
59 - name: {{ include "common.name" . }}
60 image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
61 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
62 ports:
63 - containerPort: {{ .Values.service.internalPort }}
64 name: {{ .Values.service.name }}
BorislavG2cf26842018-04-08 17:50:07 +030065 - containerPort: {{ .Values.service.internalPort2 }}
66 name: {{ .Values.service.name2 }}
BorislavG5f3b6192018-03-25 18:12:38 +030067# disable liveness probe when breakpoints set in debugger
68 # so K8s doesn't restart unresponsive container
69 {{- if eq .Values.liveness.enabled true }}
70 livenessProbe:
71 tcpSocket:
72 port: {{ .Values.service.internalPort }}
73 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
74 periodSeconds: {{ .Values.liveness.periodSeconds }}
75 {{ end -}}
76 readinessProbe:
77 tcpSocket:
BorislavG2cf26842018-04-08 17:50:07 +030078 port: {{ .Values.service.internalPort2 }}
BorislavG5f3b6192018-03-25 18:12:38 +030079 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
80 periodSeconds: {{ .Values.readiness.periodSeconds }}
81 env:
82 volumeMounts:
83 - mountPath: /etc/localtime
84 name: localtime
85 readOnly: true
86 - mountPath: /usr/share/elasticsearch/config/elasticsearch.yml
87 name: {{ include "common.fullname" . }}-config
88 subPath: elasticsearch.yml
89 - mountPath: /usr/share/elasticsearch/data/
90 name: {{ include "common.fullname" . }}-data
91 resources:
92{{ toYaml .Values.resources | indent 12 }}
93 {{- if .Values.nodeSelector }}
94 nodeSelector:
95{{ toYaml .Values.nodeSelector | indent 10 }}
96 {{- end -}}
97 {{- if .Values.affinity }}
98 affinity:
99{{ toYaml .Values.affinity | indent 10 }}
100 {{- end }}
101 volumes:
102 - name: localtime
103 hostPath:
104 path: /etc/localtime
105 - name: {{ include "common.fullname" . }}-config
106 configMap:
107 name: {{ include "common.fullname" . }}-configmap
108 items:
109 - key: elasticsearch.yml
110 path: elasticsearch.yml
111 - name: {{ include "common.fullname" . }}-data
112 persistentVolumeClaim:
113 claimName: {{ include "common.fullname" . }}
114 - name: {{ include "common.fullname" . }}-logs
115 hostPath:
BorislavG56857c42018-05-03 14:29:51 +0000116 path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPathLogs }}
BorislavG5f3b6192018-03-25 18:12:38 +0300117 imagePullSecrets:
118 - name: "{{ include "common.namespace" . }}-docker-registry-key"