|
@@ -0,0 +1,80 @@
|
|
|
+apiVersion: apps/v1
|
|
|
+kind: StatefulSet
|
|
|
+metadata:
|
|
|
+ name: es-cluster
|
|
|
+ namespace: logging
|
|
|
+spec:
|
|
|
+ serviceName: elasticsearch
|
|
|
+ replicas: 3
|
|
|
+ selector:
|
|
|
+ matchLabels:
|
|
|
+ app: elasticsearch
|
|
|
+ template:
|
|
|
+ metadata:
|
|
|
+ labels:
|
|
|
+ app: elasticsearch
|
|
|
+ spec:
|
|
|
+ volumes:
|
|
|
+ - name: data
|
|
|
+ emptyDir: {}
|
|
|
+ containers:
|
|
|
+ - name: elasticsearch
|
|
|
+ image: 10.120.116.178/public-service/elasticsearch-oss:6.4.3
|
|
|
+ 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.zen.ping.unicast.hosts
|
|
|
+ value: "es-cluster-0.elasticsearch,es-cluster-1.elasticsearch,es-cluster-2.elasticsearch"
|
|
|
+ - name: discovery.zen.minimum_master_nodes
|
|
|
+ value: "2"
|
|
|
+ - name: ES_JAVA_OPTS
|
|
|
+ value: "-Xms512m -Xmx512m"
|
|
|
+ initContainers:
|
|
|
+ - name: fix-permissions
|
|
|
+ image: 10.120.116.178/public-service/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: 10.120.116.178/public-service/busybox
|
|
|
+ command: ["sysctl", "-w", "vm.max_map_count=262144"]
|
|
|
+ securityContext:
|
|
|
+ privileged: true
|
|
|
+ - name: increase-fd-ulimit
|
|
|
+ image: 10.120.116.178/public-service/busybox
|
|
|
+ command: ["sh", "-c", "ulimit -n 65536"]
|
|
|
+ securityContext:
|
|
|
+ privileged: true
|
|
|
+# volumeClaimTemplates:
|
|
|
+# # - metadata:
|
|
|
+# # name: data
|
|
|
+# # labels:
|
|
|
+# # app: elasticsearch
|
|
|
+# # spec:
|
|
|
+# # accessModes: [ "ReadWriteOnce" ]
|
|
|
+# # storageClassName: do-block-storage
|
|
|
+# # resources:
|
|
|
+# # requests:
|
|
|
+# # storage: 100Gi
|