133 lines
4.3 KiB
YAML
133 lines
4.3 KiB
YAML
{{- if .Values.kafka.create }}
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
labels:
|
|
{{- include "deepfence-console.labels" . | nindent 4 }}
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
spec:
|
|
serviceName: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
replicas: {{ .Values.kafka.replicaCount }}
|
|
selector:
|
|
matchLabels:
|
|
{{- include "deepfence-console.selectorLabels" . | nindent 6 }}
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
template:
|
|
metadata:
|
|
{{- with .Values.kafka.podAnnotations }}
|
|
annotations:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
labels:
|
|
{{- include "deepfence-console.selectorLabels" . | nindent 8 }}
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
spec:
|
|
serviceAccountName: {{ include "deepfence-console.serviceAccountName" . }}
|
|
securityContext:
|
|
{{- toYaml .Values.kafka.podSecurityContext | nindent 8 }}
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: name
|
|
operator: In
|
|
values:
|
|
- kafka-broker
|
|
topologyKey: kubernetes.io/hostname
|
|
initContainers:
|
|
- name: init
|
|
image: busybox
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
privileged: true
|
|
command: ["/bin/chmod","-R","777", "/data"]
|
|
volumeMounts:
|
|
- name: "kafka-broker"
|
|
mountPath: /data
|
|
containers:
|
|
- name: kafka
|
|
image: "{{ .Values.global.imageRepoPrefix }}/{{ .Values.kafka.image.repository }}:{{ default .Values.global.imageTag .Values.kafka.image.tag }}"
|
|
imagePullPolicy: {{ .Values.kafka.image.pullPolicy }}
|
|
ports:
|
|
- containerPort: 9092
|
|
- containerPort: 9093
|
|
env:
|
|
- name: POD_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.name
|
|
- name: NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
- name: REPLICAS
|
|
value: "{{ .Values.kafka.replicaCount }}"
|
|
- name: SERVICE
|
|
value: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
- name: KAFKA_LOG_DIRS
|
|
value: /data/kafka
|
|
envFrom:
|
|
- configMapRef:
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker-config
|
|
livenessProbe:
|
|
tcpSocket:
|
|
port: 9092
|
|
initialDelaySeconds: 120
|
|
periodSeconds: 30
|
|
# readinessProbe:
|
|
# tcpSocket:
|
|
# port: 9092
|
|
# initialDelaySeconds: 120
|
|
# periodSeconds: 30
|
|
resources:
|
|
{{- toYaml .Values.kafka.resources | nindent 12 }}
|
|
volumeMounts:
|
|
- name: "kafka-broker"
|
|
mountPath: /data
|
|
{{- with .Values.kafka.nodeSelector }}
|
|
nodeSelector:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
{{- with .Values.kafka.tolerations }}
|
|
tolerations:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: "kafka-broker"
|
|
spec:
|
|
accessModes:
|
|
- "ReadWriteOnce"
|
|
resources:
|
|
requests:
|
|
storage: "{{ .Values.kafka.volumeSize }}"
|
|
storageClassName: {{ default .Values.global.storageClass .Values.kafka.storageClass }}
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
labels:
|
|
{{- include "deepfence-console.labels" . | nindent 4 }}
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
spec:
|
|
type: ClusterIP
|
|
clusterIP: None
|
|
selector:
|
|
{{- include "deepfence-console.selectorLabels" . | nindent 6 }}
|
|
name: {{ include "deepfence-console.fullname" . }}-kafka-broker
|
|
ports:
|
|
- name: '9092'
|
|
port: 9092
|
|
protocol: TCP
|
|
targetPort: 9092
|
|
- name: '9093'
|
|
port: 9093
|
|
protocol: TCP
|
|
targetPort: 9093
|
|
{{- end }} |