| # 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: log-elasticsearch |
| namespace: {{ .Values.nsPrefix }} |
| spec: |
| replicas: {{ .Values.elasticsearchReplicas }} |
| selector: |
| matchLabels: |
| app: elasticsearch |
| template: |
| metadata: |
| labels: |
| app: elasticsearch |
| 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}} |
| ports: |
| - containerPort: 9200 |
| name: http |
| protocol: TCP |
| - containerPort: 9300 |
| name: transport |
| protocol: TCP |
| readinessProbe: |
| tcpSocket: |
| port: 9300 |
| volumeMounts: |
| - 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/ |
| name: elasticsearch-logs |
| volumes: |
| - name: elasticsearch-data |
| persistentVolumeClaim: |
| claimName: elasticsearch-db |
| - name: elasticsearch-logs |
| hostPath: |
| path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/log/ |
| - name: elasticsearch-conf |
| configMap: |
| name: log-elasticsearch-configmap |
| items: |
| - key: elasticsearch.yml |
| path: elasticsearch.yml |
| --- |
| apiVersion: v1 |
| kind: ConfigMap |
| metadata: |
| name: log-elasticsearch-configmap |
| namespace: {{ .Values.nsPrefix }} |
| data: |
| {{ (.Files.Glob "resources/elasticsearch/conf/elasticsearch.yml").AsConfig | indent 2 }} |
| #{{ end }} |
| |