+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#{{ if not .Values.disableLogElasticsearch }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
app: elasticsearch
- name: elasticsearch
- namespace: {{ .Values.nsPrefix }}-log
+ name: log-elasticsearch
+ namespace: {{ .Values.nsPrefix }}
spec:
+ replicas: {{ .Values.elasticsearchReplicas }}
selector:
matchLabels:
app: elasticsearch
metadata:
labels:
app: elasticsearch
- name: elasticsearch
- annotations:
- pod.beta.kubernetes.io/init-containers: '[
- {
- "command": ["sysctl", "-w", "vm.max_map_count=262144"],
- "env": [
- {
- "name": "NAMESPACE",
- "valueFrom": {
- "fieldRef": {
- "apiVersion": "v1",
- "fieldPath": "metadata.namespace"
- }
- }
- }
- ],
- "securityContext": {
- "privileged": true
- },
- "image": "{{ .Values.image.es_bb }}",
- "imagePullPolicy": "{{ .Values.pullPolicy }}",
- "name": "init-sysctl"
- }
- ]'
+ name: log-elasticsearch
spec:
+ initContainers:
+ - command:
+ - /bin/sh
+ - -c
+ - |
+ sysctl -w vm.max_map_count=262144
+ mkdir -p /logroot/elasticsearch/logs
+ mkdir -p /logroot/elasticsearch/data
+ chmod -R 777 /logroot/elasticsearch
+ chown -R root:root /logroot
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ securityContext:
+ privileged: true
+ image: {{ .Values.image.es_bb }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: init-sysctl
+ volumeMounts:
+ - name: elasticsearch-logs
+ mountPath: /logroot/
containers:
- name: elasticsearch
image: {{ .Values.image.elasticsearch}}
protocol: TCP
readinessProbe:
tcpSocket:
- port: 9200
+ port: 9300
volumeMounts:
- - mountPath: /usr/share/elasticsearch/conf/
+ - mountPath: /usr/share/elasticsearch/config/elasticsearch.yml
name: elasticsearch-conf
+ subPath: elasticsearch.yml
- mountPath: /usr/share/elasticsearch/data/
name: elasticsearch-data
- mountPath: /usr/share/elasticsearch/logs/
claimName: elasticsearch-db
- name: elasticsearch-logs
hostPath:
- path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/elasticsearch/logs
+ path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/log/
- name: elasticsearch-conf
configMap:
- name: elasticsearch-configmap
+ name: log-elasticsearch-configmap
items:
- key: elasticsearch.yml
path: elasticsearch.yml
apiVersion: v1
kind: ConfigMap
metadata:
- name: elasticsearch-configmap
- namespace: {{ .Values.nsPrefix }}-log
+ name: log-elasticsearch-configmap
+ namespace: {{ .Values.nsPrefix }}
data:
-{{ (.Files.Glob "resources/elasticsearch/conf/elasticsearch.yml").AsConfig | indent 2 }}
\ No newline at end of file
+{{ (.Files.Glob "resources/elasticsearch/conf/elasticsearch.yml").AsConfig | indent 2 }}
+#{{ end }}
+