aboutsummaryrefslogtreecommitdiff
path: root/logging/elasticsearch-statefulset.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'logging/elasticsearch-statefulset.yaml')
-rw-r--r--logging/elasticsearch-statefulset.yaml77
1 files changed, 77 insertions, 0 deletions
diff --git a/logging/elasticsearch-statefulset.yaml b/logging/elasticsearch-statefulset.yaml
new file mode 100644
index 0000000..543b06a
--- /dev/null
+++ b/logging/elasticsearch-statefulset.yaml
@@ -0,0 +1,77 @@
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+ name: es-cluster
+ namespace: kube-logging
+spec:
+ serviceName: elasticsearch
+ replicas: 3
+ selector:
+ matchLabels:
+ app: elasticsearch
+ template:
+ metadata:
+ labels:
+ app: elasticsearch
+ spec:
+ containers:
+ - name: elasticsearch
+ image: docker.elastic.co/elasticsearch/elasticsearch:7.2.0
+ resources:
+ limits:
+ cpu: 1000m
+ requests:
+ cpu: 100m
+ ports:
+ - containerPort: 9200
+ name: rest
+ protocol: TCP
+ - containerPort: 9300
+ name: inter-node
+ protocol: TCP
+ volumeMounts:
+ - name: data
+ mountPath: /usr/share/elasticsearch/data
+ env:
+ - name: cluster.name
+ value: k8s-logs
+ - name: node.name
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.name
+ - name: discovery.seed_hosts
+ value: "es-cluster-0.elasticsearch,es-cluster-1.elasticsearch,es-cluster-2.elasticsearch"
+ - name: cluster.initial_master_nodes
+ value: "es-cluster-0,es-cluster-1,es-cluster-2"
+ - name: ES_JAVA_OPTS
+ value: "-Xms512m -Xmx512m"
+ initContainers:
+ - name: fix-permissions
+ image: busybox
+ command: ["sh", "-c", "chown -R 1000:1000 /usr/share/elasticsearch/data"]
+ securityContext:
+ privileged: true
+ volumeMounts:
+ - name: data
+ mountPath: /usr/share/elasticsearch/data
+ - name: increase-vm-max-map
+ image: busybox
+ command: ["sysctl", "-w", "vm.max_map_count=262144"]
+ securityContext:
+ privileged: true
+ - name: increase-fd-ulimit
+ image: busybox
+ command: ["sh", "-c", "ulimit -n 65536"]
+ securityContext:
+ privileged: true
+ volumeClaimTemplates:
+ - metadata:
+ name: data
+ labels:
+ app: elasticsearch
+ spec:
+ accessModes: [ "ReadWriteOnce" ]
+ storageClassName: local-path
+ resources:
+ requests:
+ storage: 10Gi