deploy-tmp.yaml 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. ---
  2. apiVersion: v1
  3. kind: Service
  4. metadata:
  5. name: elasticsearch-svc
  6. namespace: qa
  7. labels:
  8. app: elasticsearch-svc
  9. spec:
  10. ports:
  11. - port: 80
  12. name: client
  13. targetPort: 9200
  14. type: NodePort
  15. selector:
  16. app: elasticsearch
  17. ---
  18. apiVersion: apps/v1
  19. kind: StatefulSet
  20. metadata:
  21. name: elasticsearch
  22. namespace: qa
  23. spec:
  24. serviceName: elasticsearch
  25. replicas: 3
  26. selector:
  27. matchLabels:
  28. app: elasticsearch
  29. template:
  30. metadata:
  31. labels:
  32. app: elasticsearch
  33. spec:
  34. terminationGracePeriodSeconds: 180
  35. initContainers:
  36. - name: init
  37. image: hub.evbj.easou.com/dev/busybox
  38. command: ["/bin/sh", "-c"]
  39. args:
  40. - chmod 777 -R /data;
  41. sysctl -w vm.max_map_count=262144;
  42. ulimit -n 65536
  43. imagePullPolicy: Always
  44. volumeMounts:
  45. - name: volume
  46. mountPath: /data
  47. securityContext:
  48. privileged: true
  49. containers:
  50. - name: elasticsearch
  51. image: docker.elastic.co/elasticsearch/elasticsearch:7.6.2
  52. resources:
  53. limits:
  54. cpu: 1000m
  55. requests:
  56. cpu: 100m
  57. ports:
  58. - containerPort: 9200
  59. name: rest
  60. protocol: TCP
  61. - containerPort: 9300
  62. name: inter-node
  63. protocol: TCP
  64. volumeMounts:
  65. - name: volume
  66. mountPath: /data/elasticsearch
  67. env:
  68. - name: cluster.name
  69. value: k8s-es-logs
  70. - name: node.name
  71. valueFrom:
  72. fieldRef:
  73. fieldPath: metadata.name
  74. - name: cluster.initial_master_nodes
  75. value: "elasticsearch-0,elasticsearch-1,elasticsearch-2"
  76. - name: discovery.zen.minimum_master_nodes
  77. value: "2"
  78. - name: discovery.seed_hosts
  79. value: "elasticsearch"
  80. - name: ES_JAVA_OPTS
  81. value: "-Xms2048m -Xmx2048m"
  82. - name: network.host
  83. value: "0.0.0.0"
  84. volumeClaimTemplates:
  85. - metadata:
  86. name: volume
  87. spec:
  88. accessModes: [ "ReadWriteOnce" ]
  89. storageClassName: rbd
  90. resources:
  91. requests:
  92. storage: 100Gi
  93. ---
  94. apiVersion: v1
  95. kind: Service
  96. metadata:
  97. name: elasticsearch-svc
  98. namespace: qa
  99. labels:
  100. app: elasticsearch-svc
  101. spec:
  102. selector:
  103. app: elasticsearch-svc
  104. clusterIP: None
  105. ports:
  106. - port: 9200
  107. name: rest
  108. - port: 9300
  109. name: inter-node
  110. ---
  111. apiVersion: extensions/v1beta1
  112. kind: Ingress
  113. metadata:
  114. name: kibana-ingress
  115. namespace: qa
  116. annotations:
  117. kubernetes.io/ingress.class: nginx
  118. spec:
  119. rules:
  120. - host: qa-elasticsearch.ieasou.cn
  121. http:
  122. paths:
  123. - path: /
  124. backend:
  125. serviceName: elasticsearch-svc
  126. servicePort: 80