From c194bce22cf6eae521bdd79d12ee04d9b1cd3e50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thor=20Anker=20Kvisg=C3=A5rd=20Lange?= Date: Tue, 24 Sep 2019 15:19:27 +0200 Subject: [PATCH] [incubator/kafka] Updated labeling (#17392) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Changed labelling to aling with current best practice and avoid configuration job pods being targeted by services. Signed-off-by: Thor Anker Kvisgård Lange * Bumping one minor version since re-labeling might cause issues with running deployments. Signed-off-by: Thor Anker Kvisgård Lange --- incubator/kafka/Chart.yaml | 2 +- incubator/kafka/templates/_helpers.tpl | 46 ++++++++++++++++++- .../kafka/templates/configmap-config.yaml | 5 +- incubator/kafka/templates/configmap-jmx.yaml | 5 +- .../templates/deployment-kafka-exporter.yaml | 8 +--- incubator/kafka/templates/job-config.yaml | 8 +--- .../kafka/templates/podisruptionbudget.yaml | 8 +--- .../templates/service-brokers-external.yaml | 8 +--- .../kafka/templates/service-brokers.yaml | 16 ++----- .../kafka/templates/service-headless.yaml | 8 +--- .../kafka/templates/servicemonitors.yaml | 8 ++-- incubator/kafka/templates/statefulset.yaml | 11 ++--- 12 files changed, 69 insertions(+), 64 deletions(-) diff --git a/incubator/kafka/Chart.yaml b/incubator/kafka/Chart.yaml index ca678f501637..d253df24e4f5 100755 --- a/incubator/kafka/Chart.yaml +++ b/incubator/kafka/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v1 description: Apache Kafka is publish-subscribe messaging rethought as a distributed commit log. name: kafka -version: 0.17.1 +version: 0.18.0 appVersion: 5.0.1 keywords: - kafka diff --git a/incubator/kafka/templates/_helpers.tpl b/incubator/kafka/templates/_helpers.tpl index 7d67a7f0cbc9..0db4e62853c7 100644 --- a/incubator/kafka/templates/_helpers.tpl +++ b/incubator/kafka/templates/_helpers.tpl @@ -65,4 +65,48 @@ Create chart name and version as used by the chart label. */}} {{- define "kafka.chart" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} \ No newline at end of file +{{- end -}} + +{{/* +Create unified labels for kafka components +*/}} + +{{- define "kafka.common.matchLabels" -}} +app.kubernetes.io/name: {{ include "kafka.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end -}} + +{{- define "kafka.common.metaLabels" -}} +helm.sh/chart: {{ include "kafka.chart" . }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{- define "kafka.broker.matchLabels" -}} +app.kubernetes.io/component: kafka-broker +{{ include "kafka.common.matchLabels" . }} +{{- end -}} + +{{- define "kafka.broker.labels" -}} +{{ include "kafka.common.metaLabels" . }} +{{ include "kafka.broker.matchLabels" . }} +{{- end -}} + +{{- define "kafka.config.matchLabels" -}} +app.kubernetes.io/component: kafka-config +{{ include "kafka.common.matchLabels" . }} +{{- end -}} + +{{- define "kafka.config.labels" -}} +{{ include "kafka.common.metaLabels" . }} +{{ include "kafka.config.matchLabels" . }} +{{- end -}} + +{{- define "kafka.monitor.matchLabels" -}} +app.kubernetes.io/component: kafka-monitor +{{ include "kafka.common.matchLabels" . }} +{{- end -}} + +{{- define "kafka.monitor.labels" -}} +{{ include "kafka.common.metaLabels" . }} +{{ include "kafka.monitor.matchLabels" . }} +{{- end -}} diff --git a/incubator/kafka/templates/configmap-config.yaml b/incubator/kafka/templates/configmap-config.yaml index 9af770235c09..020c8b555905 100644 --- a/incubator/kafka/templates/configmap-config.yaml +++ b/incubator/kafka/templates/configmap-config.yaml @@ -4,10 +4,7 @@ apiVersion: v1 kind: ConfigMap metadata: labels: - app: {{ template "kafka.fullname" . }} - chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" - heritage: "{{ .Release.Service }}" - release: "{{ .Release.Name }}" + {{- include "kafka.config.labels" . | nindent 4 }} name: {{ template "kafka.fullname" . }}-config data: runtimeConfig.sh: | diff --git a/incubator/kafka/templates/configmap-jmx.yaml b/incubator/kafka/templates/configmap-jmx.yaml index 24a25c71b737..9eae92106ab0 100644 --- a/incubator/kafka/templates/configmap-jmx.yaml +++ b/incubator/kafka/templates/configmap-jmx.yaml @@ -4,10 +4,7 @@ kind: ConfigMap metadata: name: {{ include "kafka.fullname" . }}-metrics labels: - app: {{ include "kafka.name" . }} - chart: {{ .Chart.Name }}-{{ .Chart.Version }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} + {{- include "kafka.monitor.labels" . | nindent 4 }} data: jmx-kafka-prometheus.yml: |+ {{- if .Values.jmx.configMap.overrideConfig }} diff --git a/incubator/kafka/templates/deployment-kafka-exporter.yaml b/incubator/kafka/templates/deployment-kafka-exporter.yaml index 709ea0c743e6..aa9284a383da 100644 --- a/incubator/kafka/templates/deployment-kafka-exporter.yaml +++ b/incubator/kafka/templates/deployment-kafka-exporter.yaml @@ -4,16 +4,12 @@ kind: Deployment metadata: name: {{ template "kafka.fullname" . }}-exporter labels: - app: "{{ template "kafka.name" . }}" - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} - chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" + {{- include "kafka.monitor.labels" . | nindent 4 }} spec: replicas: 1 selector: matchLabels: - app: {{ template "kafka.name" . }}-exporter - release: {{ .Release.Name }} + {{- include "kafka.monitor.matchLabels" . | nindent 6 }} template: metadata: annotations: diff --git a/incubator/kafka/templates/job-config.yaml b/incubator/kafka/templates/job-config.yaml index 54bf4f73be58..13576b3fef07 100644 --- a/incubator/kafka/templates/job-config.yaml +++ b/incubator/kafka/templates/job-config.yaml @@ -5,17 +5,13 @@ kind: Job metadata: name: "{{ template "kafka.fullname" . }}-config-{{ $scriptHash }}" labels: - app: {{ template "kafka.fullname" . }} - chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" - heritage: "{{ .Release.Service }}" - release: "{{ .Release.Name }}" + {{- include "kafka.config.labels" . | nindent 4 }} spec: backoffLimit: {{ .Values.configJob.backoffLimit }} template: metadata: labels: - app: {{ template "kafka.fullname" . }} - release: "{{ .Release.Name }}" + {{- include "kafka.config.matchLabels" . | nindent 8 }} spec: restartPolicy: OnFailure volumes: diff --git a/incubator/kafka/templates/podisruptionbudget.yaml b/incubator/kafka/templates/podisruptionbudget.yaml index d09fbf91cd33..7e1c03f9fae4 100644 --- a/incubator/kafka/templates/podisruptionbudget.yaml +++ b/incubator/kafka/templates/podisruptionbudget.yaml @@ -4,15 +4,11 @@ kind: PodDisruptionBudget metadata: name: {{ include "kafka.fullname" . }} labels: - app: {{ template "kafka.name" . }} - chart: {{ template "kafka.chart" . }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} + {{- include "kafka.broker.labels" . | nindent 4 }} spec: selector: matchLabels: - app: {{ template "kafka.name" . }} - release: {{ .Release.Name }} + {{- include "kafka.broker.matchLabels" . | nindent 6 }} {{ toYaml .Values.podDisruptionBudget | indent 2 }} {{- end }} diff --git a/incubator/kafka/templates/service-brokers-external.yaml b/incubator/kafka/templates/service-brokers-external.yaml index 8d06c7c1b1ea..a0f17d0a23d3 100644 --- a/incubator/kafka/templates/service-brokers-external.yaml +++ b/incubator/kafka/templates/service-brokers-external.yaml @@ -36,10 +36,7 @@ metadata: {{- end }} name: {{ $root.Release.Name }}-{{ $i }}-external labels: - app: {{ include "kafka.name" $root }} - chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version }} - release: {{ $root.Release.Name }} - heritage: {{ $root.Release.Service }} + {{- include "kafka.broker.labels" $root | nindent 4 }} pod: {{ $responsiblePod | quote }} spec: type: {{ $root.Values.external.type }} @@ -65,8 +62,7 @@ spec: loadBalancerIP: {{ index $root.Values.external.loadBalancerIP $i }} {{- end }} selector: - app: {{ include "kafka.name" $root }} - release: {{ $root.Release.Name }} + {{- include "kafka.broker.matchLabels" $root | nindent 6 }} statefulset.kubernetes.io/pod-name: {{ $responsiblePod | quote }} {{- end }} {{- end }} diff --git a/incubator/kafka/templates/service-brokers.yaml b/incubator/kafka/templates/service-brokers.yaml index 6748b45ebd01..744843e1b719 100644 --- a/incubator/kafka/templates/service-brokers.yaml +++ b/incubator/kafka/templates/service-brokers.yaml @@ -3,10 +3,7 @@ kind: Service metadata: name: {{ include "kafka.fullname" . }} labels: - app: {{ include "kafka.name" . }} - chart: {{ .Chart.Name }}-{{ .Chart.Version }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} + {{- include "kafka.broker.labels" . | nindent 4 }} spec: ports: - name: broker @@ -19,8 +16,7 @@ spec: targetPort: prometheus {{- end }} selector: - app: {{ include "kafka.name" . }} - release: {{ .Release.Name }} + {{- include "kafka.broker.matchLabels" . | nindent 4 }} --- {{- if and .Values.prometheus.kafka.enabled .Values.prometheus.operator.enabled }} apiVersion: v1 @@ -28,10 +24,7 @@ kind: Service metadata: name: {{ include "kafka.fullname" . }}-exporter labels: - app: {{ include "kafka.name" . }}-exporter - chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} + {{- include "kafka.monitor.labels" . | nindent 4 }} spec: ports: - name: kafka-exporter @@ -39,6 +32,5 @@ spec: port: {{ .Values.prometheus.kafka.port }} targetPort: {{ .Values.prometheus.kafka.port }} selector: - app: {{ include "kafka.name" . }}-exporter - release: {{ .Release.Name }} + {{- include "kafka.monitor.matchLabels" . | nindent 4 }} {{- end }} diff --git a/incubator/kafka/templates/service-headless.yaml b/incubator/kafka/templates/service-headless.yaml index 483f5b005888..2fa7cf7763a0 100644 --- a/incubator/kafka/templates/service-headless.yaml +++ b/incubator/kafka/templates/service-headless.yaml @@ -3,10 +3,7 @@ kind: Service metadata: name: {{ include "kafka.fullname" . }}-headless labels: - app: {{ include "kafka.name" . }} - chart: {{ .Chart.Name }}-{{ .Chart.Version }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} + {{- include "kafka.broker.labels" . | nindent 4 }} annotations: service.alpha.kubernetes.io/tolerate-unready-endpoints: "true" {{- if .Values.headless.annotations }} @@ -21,5 +18,4 @@ spec: {{- end }} clusterIP: None selector: - app: {{ include "kafka.name" . }} - release: {{ .Release.Name }} + {{- include "kafka.broker.matchLabels" . | nindent 4 }} diff --git a/incubator/kafka/templates/servicemonitors.yaml b/incubator/kafka/templates/servicemonitors.yaml index 43d172cf0b92..2f8c366fb6f4 100644 --- a/incubator/kafka/templates/servicemonitors.yaml +++ b/incubator/kafka/templates/servicemonitors.yaml @@ -5,12 +5,12 @@ metadata: name: {{ include "kafka.fullname" . }} namespace: {{ .Values.prometheus.operator.serviceMonitor.namespace }} labels: + {{- include "kafka.monitor.labels" . | nindent 4 }} {{ toYaml .Values.prometheus.operator.serviceMonitor.selector | indent 4 }} spec: selector: matchLabels: - app: {{ include "kafka.name" . }} - release: {{ .Release.Name }} + {{- include "kafka.broker.matchLabels" . | nindent 6 }} endpoints: - port: jmx-exporter interval: {{ .Values.prometheus.jmx.interval }} @@ -29,12 +29,12 @@ metadata: name: {{ include "kafka.fullname" . }}-exporter namespace: {{ .Values.prometheus.operator.serviceMonitor.namespace }} labels: + {{- include "kafka.monitor.labels" . | nindent 4 }} {{ toYaml .Values.prometheus.operator.serviceMonitor.selector | indent 4 }} spec: selector: matchLabels: - app: {{ include "kafka.name" . }}-exporter - release: {{ .Release.Name }} + {{- include "kafka.monitor.matchLabels" . | nindent 6 }} endpoints: - port: kafka-exporter interval: {{ .Values.prometheus.kafka.interval }} diff --git a/incubator/kafka/templates/statefulset.yaml b/incubator/kafka/templates/statefulset.yaml index 9e658b0a1d53..2c60b0b5a2ae 100644 --- a/incubator/kafka/templates/statefulset.yaml +++ b/incubator/kafka/templates/statefulset.yaml @@ -4,15 +4,11 @@ kind: StatefulSet metadata: name: {{ include "kafka.fullname" . }} labels: - app: {{ include "kafka.name" . }} - chart: {{ .Chart.Name }}-{{ .Chart.Version }} - release: {{ .Release.Name }} - heritage: {{ .Release.Service }} + {{- include "kafka.broker.labels" . | nindent 4 }} spec: selector: matchLabels: - app: {{ include "kafka.name" . }} - release: {{ .Release.Name }} + {{- include "kafka.broker.matchLabels" . | nindent 6 }} serviceName: {{ include "kafka.fullname" . }}-headless podManagementPolicy: {{ .Values.podManagementPolicy }} updateStrategy: @@ -31,8 +27,7 @@ spec: {{- end }} {{- end }} labels: - app: {{ include "kafka.name" . }} - release: {{ .Release.Name }} + {{- include "kafka.broker.labels" . | nindent 8 }} {{- if .Values.podLabels }} ## Custom pod labels {{ toYaml .Values.podLabels | indent 8 }}