集群内创建需要用到存储,此处举例使用腾讯云cfs共享存储
内存limits限制不需要加,否则会经常内存溢出导致es集群故障
apiVersion: apps/v1
kind: StatefulSet
metadata:name: es7-clusternamespace: elasticsearch
spec:serviceName: es-clusterreplicas: 3selector:matchLabels:app: es-clustertemplate:metadata:labels:app: es-clusterspec:containers:- name: es-clusterimage: elasticsearch:7.16.2resources:limits:cpu: 2requests:cpu: 2ports:- containerPort: 9200name: restprotocol: TCP- containerPort: 9300name: inter-nodeprotocol: TCPvolumeMounts:- name: datamountPath: /usr/share/elasticsearch/dataenv:- name: cluster.namevalue: k8s-logs- name: node.namevalueFrom:fieldRef:fieldPath: metadata.name- name: discovery.zen.minimum_master_nodesvalue: "2"- name: discovery.seed_hostsvalue: "es7-cluster-0.es-cluster,es7-cluster-1.es-cluster,es7-cluster-2.es-cluster"- name: cluster.initial_master_nodesvalue: "es7-cluster-0,es7-cluster-1,es7-cluster-2"- name: ES_JAVA_OPTSvalue: "-Xms4g -Xmx4g"initContainers:- name: fix-permissionsimage: busyboxcommand: ["sh", "-c", "chown -R 1000:1000 /usr/share/elasticsearch/data"]securityContext:privileged: truevolumeMounts:- name: datamountPath: /usr/share/elasticsearch/data- name: increase-vm-max-mapimage: busyboxcommand: ["sysctl", "-w", "vm.max_map_count=262144"]securityContext:privileged: true- name: increase-fd-ulimitimage: busyboxcommand: ["sh", "-c", "ulimit -n 65536"]volumeClaimTemplates:- metadata:name: dataspec:accessModes: [ "ReadWriteOnce" ]storageClassName: "cfs"resources:requests:storage: 100Gi
---
apiVersion: v1
kind: Service
metadata:name: es-clusternamespace: elasticsearch
spec:selector:app: es-clustertype: NodePortports:- port: 9200targetPort: 9200