--- apiVersion: v1 kind: Service metadata: name: elasticsearch-expose namespace: qa labels: app: elasticsearch-expose spec: ports: - port: 80 name: client targetPort: 9200 type: NodePort selector: app: elasticsearch --- apiVersion: apps/v1 kind: StatefulSet metadata: name: elasticsearch namespace: qa spec: serviceName: elasticsearch replicas: 3 selector: matchLabels: app: elasticsearch template: metadata: labels: app: elasticsearch spec: terminationGracePeriodSeconds: 180 initContainers: - name: init image: hub.evbj.easou.com/dev/busybox command: ["/bin/sh", "-c"] args: - chmod 777 -R /data; sysctl -w vm.max_map_count=262144; ulimit -n 65536 imagePullPolicy: Always volumeMounts: - name: volume mountPath: /data securityContext: privileged: true containers: - name: elasticsearch image: docker.elastic.co/elasticsearch/elasticsearch:7.6.2 resources: limits: cpu: 1000m requests: cpu: 100m ports: - containerPort: 9200 name: rest protocol: TCP - containerPort: 9300 name: inter-node protocol: TCP volumeMounts: - name: volume mountPath: /data/elasticsearch env: - name: cluster.name value: k8s-es-logs - name: node.name valueFrom: fieldRef: fieldPath: metadata.name - name: cluster.initial_master_nodes value: "elasticsearch-0,elasticsearch-1,elasticsearch-2" - name: discovery.zen.minimum_master_nodes value: "2" - name: discovery.seed_hosts value: "elasticsearch" - name: ES_JAVA_OPTS value: "-Xms2048m -Xmx2048m" - name: network.host value: "0.0.0.0" volumeClaimTemplates: - metadata: name: volume spec: accessModes: [ "ReadWriteOnce" ] storageClassName: rbd resources: requests: storage: 100Gi --- apiVersion: v1 kind: Service metadata: name: elasticsearch-svc namespace: qa labels: app: elasticsearch-svc spec: selector: app: elasticsearch clusterIP: None ports: - port: 9200 name: rest - port: 9300 name: inter-node --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: kibana-ingress namespace: qa annotations: kubernetes.io/ingress.class: nginx spec: rules: - host: qa-elasticsearch.ieasou.cn http: paths: - path: / backend: serviceName: elasticsearch-svc servicePort: 80