[DEPLOY] Improve deploy.sh
[oom.git] / kubernetes / strimzi / templates / strimzi-kafka.yaml
1 {{/*
2 # Copyright © 2022 Nordix Foundation
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 */}}
16 apiVersion: kafka.strimzi.io/v1beta2
17 kind: Kafka
18 metadata:
19   name: {{ include "common.fullname" . }}
20   namespace: {{ include "common.namespace" . }}
21   labels:
22     app: {{ include "common.name" . }}
23     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
24     release: {{ include "common.release" . }}
25     heritage: {{ .Release.Service }}
26 spec:
27   kafka:
28     version: {{ .Values.version }}
29     replicas: {{ .Values.replicaCount }}
30     listeners:
31       - name: plain
32         port: {{ .Values.kafkaInternalPort }}
33         type: internal
34         tls: false
35         authentication:
36           type: {{ .Values.saslMechanism }}
37       - name: tls
38         port: 9093
39         type: internal
40         tls: true
41         authentication:
42           type: tls
43       - name: external
44         port: 9094
45         type: nodeport
46         tls: true
47         authentication:
48           type: tls
49     authorization:
50       type: simple
51       superUsers:
52         - {{ include "common.release" . }}-{{ .Values.kafkaStrimziAdminUser }}
53     template:
54       pod:
55         securityContext:
56           runAsUser: 0
57           fsGroup: 0
58     config:
59       offsets.topic.replication.factor: {{ .Values.replicaCount }}
60       transaction.state.log.replication.factor: {{ .Values.replicaCount }}
61       transaction.state.log.min.isr: 2
62       log.message.format.version: "3.0"
63       inter.broker.protocol.version: "3.0"
64     storage:
65       type: jbod
66       class: {{ include "common.storageClass" (dict "dot" . "suffix" "kafka" "persistenceInfos" .Values.persistenceKafka) }}
67       volumes:
68       - id: 0
69         type: persistent-claim
70         size: {{ .Values.persistenceKafka.size }}
71         deleteClaim: true
72         class: {{ include "common.storageClass" (dict "dot" . "suffix" "kafka" "persistenceInfos" .Values.persistenceKafka) }}
73   zookeeper:
74     template:
75       pod:
76         securityContext:
77           runAsUser: 0
78           fsGroup: 0
79     replicas: {{ .Values.replicaCount }}
80     config:
81       ssl.hostnameVerification: false
82     storage:
83       type: persistent-claim
84       size: {{ .Values.persistenceZk.size }}
85       deleteClaim: true
86       class: {{ include "common.storageClass" (dict "dot" . "suffix" "zk" "persistenceInfos" .Values.persistenceZk) }}
87   entityOperator:
88     topicOperator: {}
89     userOperator: {}
90