Merge "[DMAAP] DMaaP ServiceMesh compatibility"
[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         configuration:
50           bootstrap:
51             nodePort: {{ .Values.global.nodePortPrefixExt }}91
52           brokers:
53             - broker: 0
54               nodePort: {{ .Values.global.nodePortPrefixExt }}92
55             - broker: 1
56               nodePort: {{ .Values.global.nodePortPrefixExt }}93
57     authorization:
58       type: simple
59       superUsers:
60         - {{ .Values.kafkaStrimziAdminUser }}
61     template:
62       pod:
63         securityContext:
64           runAsUser: 0
65           fsGroup: 0
66     config:
67       default.replication.factor: {{ .Values.replicaCount }}
68       min.insync.replicas: {{ .Values.replicaCount }}
69       offsets.topic.replication.factor: {{ .Values.replicaCount }}
70       transaction.state.log.replication.factor: {{ .Values.replicaCount }}
71       transaction.state.log.min.isr: {{ .Values.replicaCount }}
72       log.message.format.version: "3.0"
73       inter.broker.protocol.version: "3.0"
74     storage:
75       type: jbod
76       volumes:
77       - id: 0
78         type: persistent-claim
79         size: {{ .Values.persistenceKafka.size }}
80         deleteClaim: true
81         class: {{ include "common.storageClass" (dict "dot" . "suffix" "kafka" "persistenceInfos" .Values.persistenceKafka) }}
82   zookeeper:
83     template:
84       pod:
85         securityContext:
86           runAsUser: 0
87           fsGroup: 0
88     replicas: {{ .Values.replicaCount }}
89     config:
90       ssl.hostnameVerification: false
91       ssl.quorum.hostnameVerification: false
92       {{- if (include "common.onServiceMesh" .) }}
93       sslQuorum: false
94       {{- end }}
95     storage:
96       type: persistent-claim
97       size: {{ .Values.persistenceZk.size }}
98       deleteClaim: true
99       class: {{ include "common.storageClass" (dict "dot" . "suffix" "zk" "persistenceInfos" .Values.persistenceZk) }}
100   entityOperator:
101     topicOperator: {}
102     userOperator: {}
103