github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/kafka-cluster/templates/cluster.yaml (about) 1 apiVersion: apps.kubeblocks.io/v1alpha1 2 kind: Cluster 3 metadata: 4 name: {{ include "kblib.clusterName" . }} 5 labels: {{ include "kblib.clusterLabels" . | nindent 4 }} 6 annotations: 7 "kubeblocks.io/extra-env": '{"KB_KAFKA_ENABLE_SASL":"{{ $.Values.saslEnable }}","KB_KAFKA_BROKER_HEAP":"{{ $.Values.brokerHeap }}","KB_KAFKA_CONTROLLER_HEAP":"{{ $.Values.controllerHeap }}","KB_KAFKA_PUBLIC_ACCESS":"{{ $.Values.extra.publiclyAccessible }}"}' 8 spec: 9 clusterDefinitionRef: kafka # ref clusterdefinition.name 10 clusterVersionRef: {{ .Values.version }} 11 terminationPolicy: {{ .Values.extra.terminationPolicy }} 12 {{- include "kblib.affinity" . | indent 2 }} 13 componentSpecs: 14 {{- if eq "combined" $.Values.mode }} 15 - name: broker 16 componentDefRef: kafka-server 17 tls: {{ $.Values.tlsEnable }} 18 {{- if $.Values.tlsEnable }} 19 issuer: 20 name: KubeBlocks 21 {{- end }} 22 replicas: {{ $.Values.replicas }} 23 monitor: {{ $.Values.monitorEnable }} 24 serviceAccountName: {{ include "kblib.serviceAccountName" . }} 25 {{- include "kblib.componentResources" . | indent 6 }} 26 {{- include "kblib.componentServices" . | indent 6 }} 27 {{- if $.Values.storageEnable }} 28 volumeClaimTemplates: 29 - name: data 30 spec: 31 storageClassName: {{ $.Values.storageClassName }} 32 accessModes: 33 - ReadWriteOnce 34 resources: 35 requests: 36 storage: {{ print $.Values.storage "Gi" }} 37 - name: metadata 38 spec: 39 storageClassName: {{ $.Values.metaStorageClassName }} 40 accessModes: 41 - ReadWriteOnce 42 resources: 43 requests: 44 storage: {{ print $.Values.metaStorage "Gi" }} 45 {{- end }} 46 {{- else }} 47 - name: broker 48 componentDefRef: kafka-broker 49 tls: {{ $.Values.tlsEnable }} 50 {{- if $.Values.tlsEnable }} 51 issuer: 52 name: KubeBlocks 53 {{- end }} 54 replicas: {{ $.Values.brokerReplicas }} 55 monitor: {{ $.Values.monitorEnable }} 56 serviceAccountName: {{ include "kblib.serviceAccountName" . }} 57 {{- include "kblib.componentResources" . | indent 6 }} 58 {{- include "kblib.componentServices" . | indent 6 }} 59 {{- if $.Values.storageEnable }} 60 volumeClaimTemplates: 61 - name: data 62 spec: 63 storageClassName: {{ $.Values.storageClassName }} 64 accessModes: 65 - ReadWriteOnce 66 resources: 67 requests: 68 storage: {{ print $.Values.storage "Gi" }} 69 - name: metadata 70 spec: 71 storageClassName: {{ $.Values.metaStorageClassName }} 72 accessModes: 73 - ReadWriteOnce 74 resources: 75 requests: 76 storage: {{ print $.Values.metaStorage "Gi" }} 77 {{- end }} 78 - name: controller 79 componentDefRef: controller 80 tls: {{ $.Values.tlsEnable }} 81 {{- if $.Values.tlsEnable }} 82 issuer: 83 name: KubeBlocks 84 {{- end }} 85 replicas: {{ $.Values.controllerReplicas }} 86 monitor: {{ $.Values.monitorEnable }} 87 serviceAccountName: {{ include "kblib.serviceAccountName" . }} 88 {{- include "kblib.componentResources" . | indent 6 }} 89 {{- if $.Values.storageEnable }} 90 volumeClaimTemplates: 91 - name: metadata 92 spec: 93 storageClassName: {{ $.Values.metaStorageClassName }} 94 accessModes: 95 - ReadWriteOnce 96 resources: 97 requests: 98 storage: {{ print $.Values.metaStorage "Gi" }} 99 {{- end }} 100 {{- end }} 101 {{- if .Values.monitorEnable }} 102 - name: metrics-exp 103 componentDefRef: kafka-exporter 104 replicas: {{ $.Values.monitorReplicas }} 105 monitor: true 106 {{- include "kblib.componentResources" . | nindent 6 }} 107 {{- end }}