181 lines
4.0 KiB
YAML
181 lines
4.0 KiB
YAML
---
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: elastic-qa-0
|
|
spec:
|
|
storageClassName: local-elastic
|
|
capacity:
|
|
storage: 30Gi
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
local:
|
|
path: /data/elastic-qa/es_data
|
|
nodeAffinity:
|
|
required:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values:
|
|
- bfs-k8snode-10-2-0-9.hetzner.base.beaconfireinc.com
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: elastic-qa-1
|
|
spec:
|
|
storageClassName: local-elastic
|
|
capacity:
|
|
storage: 30Gi
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
local:
|
|
path: /data/elastic-qa/es_data
|
|
nodeAffinity:
|
|
required:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values:
|
|
- bfs-k8snode-10-2-0-10.hetzner.base.beaconfireinc.com
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: elastic-qa-2
|
|
spec:
|
|
storageClassName: local-elastic
|
|
capacity:
|
|
storage: 30Gi
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
local:
|
|
path: /data/elastic-qa/es_data
|
|
nodeAffinity:
|
|
required:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values:
|
|
- bfs-k8snode-10-2-0-11.hetzner.base.beaconfireinc.com
|
|
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: elastic
|
|
spec:
|
|
serviceName: elastic
|
|
replicas: 3
|
|
selector:
|
|
matchLabels:
|
|
app: elastic
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: elastic
|
|
spec:
|
|
securityContext:
|
|
fsGroup: 100
|
|
nodeSelector:
|
|
app.kubernetes.io/name: es-qa
|
|
initContainers:
|
|
- name: init
|
|
image: busybox
|
|
imagePullPolicy: IfNotPresent
|
|
command: ["/bin/sh", "-c", "sysctl -w vm.max_map_count=262144;chown -R 1000:1000 /usr/share/elasticsearch/data"]
|
|
securityContext:
|
|
privileged: true
|
|
volumeMounts:
|
|
- name: elastic-qa
|
|
mountPath: /usr/share/elasticsearch/data
|
|
containers:
|
|
- name: elasticsearch
|
|
image: docker.elastic.co/elasticsearch/elasticsearch:8.8.0
|
|
imagePullPolicy: IfNotPresent
|
|
ports:
|
|
- containerPort: 9200
|
|
name: restful
|
|
- containerPort: 9300
|
|
name: transport
|
|
env:
|
|
- name: cluster.name
|
|
value: bfs-elastic-qa-1
|
|
- name: network.host
|
|
value: 0.0.0.0
|
|
- name: node.name
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.name
|
|
- name: discovery.seed_hosts
|
|
value: "elastic-0.elastic,elastic-1.elastic,elastic-2.elastic"
|
|
- name: cluster.initial_master_nodes
|
|
value: "elastic-0,elastic-1,elastic-2"
|
|
- name: xpack.security.enabled
|
|
value: "false"
|
|
- name: xpack.monitoring.collection.enabled
|
|
value: "false"
|
|
- name: ES_JAVA_OPTS
|
|
value: "-Xms256m -Xmx256m"
|
|
- name: ELASTIC_PASSWORD
|
|
value: "changeme"
|
|
resources:
|
|
limits:
|
|
cpu: 2
|
|
memory: 4Gi
|
|
requests:
|
|
cpu: 100m
|
|
memory: 128Mi
|
|
volumeMounts:
|
|
- name: elastic-qa
|
|
mountPath: /usr/share/elasticsearch/data
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: elastic-qa
|
|
spec:
|
|
accessModes: ['ReadWriteOnce']
|
|
storageClassName: "local-elastic"
|
|
resources:
|
|
requests:
|
|
storage: 30Gi
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: elastic-internel
|
|
labels:
|
|
app: elastic
|
|
spec:
|
|
ports:
|
|
- name: restful
|
|
port: 9200
|
|
targetPort: 9200
|
|
# nodePort: 30029
|
|
type: NodePort
|
|
selector:
|
|
app: elastic
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: elastic
|
|
labels:
|
|
app: elastic
|
|
spec:
|
|
ports:
|
|
- name: restful
|
|
port: 9200
|
|
- name: transport
|
|
port: 9300
|
|
clusterIP: None
|
|
selector:
|
|
app: elastic
|
|
|