From bfba889d2dd2cfc83c27fd99d3be89df6789a172 Mon Sep 17 00:00:00 2001 From: Masterchen09 <13187726+Masterchen09@users.noreply.github.com> Date: Sun, 26 May 2024 15:20:07 +0200 Subject: [PATCH] feat: add monitoring configuration to acryl-datahub-actions subchart --- charts/datahub/Chart.yaml | 4 +-- .../acryl-datahub-actions/Chart.yaml | 2 +- .../subcharts/acryl-datahub-actions/README.md | 1 + .../templates/deployment.yaml | 9 ++++++ .../templates/service.yaml | 6 ++++ .../templates/servicemonitor.yaml | 28 +++++++++++++++++++ .../acryl-datahub-actions/values.yaml | 7 +++++ 7 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 charts/datahub/subcharts/acryl-datahub-actions/templates/servicemonitor.yaml diff --git a/charts/datahub/Chart.yaml b/charts/datahub/Chart.yaml index f2edb2a78..ffb7ddfa7 100644 --- a/charts/datahub/Chart.yaml +++ b/charts/datahub/Chart.yaml @@ -4,7 +4,7 @@ description: A Helm chart for DataHub type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 0.4.32 +version: 0.4.33 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. appVersion: 0.14.1 @@ -30,7 +30,7 @@ dependencies: repository: file://./subcharts/datahub-ingestion-cron condition: datahub-ingestion-cron.enabled - name: acryl-datahub-actions - version: 0.2.148 + version: 0.2.149 repository: file://./subcharts/acryl-datahub-actions condition: acryl-datahub-actions.enabled maintainers: diff --git a/charts/datahub/subcharts/acryl-datahub-actions/Chart.yaml b/charts/datahub/subcharts/acryl-datahub-actions/Chart.yaml index 5b2c926b2..dffeee4fb 100644 --- a/charts/datahub/subcharts/acryl-datahub-actions/Chart.yaml +++ b/charts/datahub/subcharts/acryl-datahub-actions/Chart.yaml @@ -12,7 +12,7 @@ description: A Helm chart for Kubernetes type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 0.2.148 +version: 0.2.149 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. appVersion: 0.1.1 diff --git a/charts/datahub/subcharts/acryl-datahub-actions/README.md b/charts/datahub/subcharts/acryl-datahub-actions/README.md index 65c1aa94d..abfe923f9 100644 --- a/charts/datahub/subcharts/acryl-datahub-actions/README.md +++ b/charts/datahub/subcharts/acryl-datahub-actions/README.md @@ -36,6 +36,7 @@ Current chart version is `0.0.3` | serviceAccount.annotations | object | `{}` | | | serviceAccount.create | bool | `false` | | | serviceAccount.name | string | `nil` | | +| serviceMonitor.create | bool | `false` | If set true and `global.datahub.monitoring.enablePrometheus` is set `true` it will create a ServiceMonitor resource | | tolerations | list | `[]` | | | global.kafka.bootstrap.server | string | `nil` | | | global.kafka.schemaregistry.url | string | `nil` | | diff --git a/charts/datahub/subcharts/acryl-datahub-actions/templates/deployment.yaml b/charts/datahub/subcharts/acryl-datahub-actions/templates/deployment.yaml index 631d32b2a..f86f57ddf 100644 --- a/charts/datahub/subcharts/acryl-datahub-actions/templates/deployment.yaml +++ b/charts/datahub/subcharts/acryl-datahub-actions/templates/deployment.yaml @@ -70,6 +70,11 @@ spec: - name: http containerPort: 9093 protocol: TCP + {{- if or .Values.global.datahub.monitoring.enablePrometheus }} + - name: {{ .Values.global.datahub.monitoring.portName }} + containerPort: 8000 + protocol: TCP + {{- end }} {{- if .Values.image.command }} command: {{ .Values.image.command | toRawJson }} {{- end }} @@ -151,6 +156,10 @@ spec: name: {{ .Values.global.datahub.metadata_service_authentication.systemClientSecret.secretRef }} key: {{ .Values.global.datahub.metadata_service_authentication.systemClientSecret.secretKey }} {{- end }} + {{- if or .Values.global.datahub.monitoring.enablePrometheus }} + - name: DATAHUB_ACTIONS_MONITORING_ENABLED + value: "true" + {{- end }} {{- if .Values.extraEnvs }} {{ toYaml .Values.extraEnvs | nindent 12 }} {{- end }} diff --git a/charts/datahub/subcharts/acryl-datahub-actions/templates/service.yaml b/charts/datahub/subcharts/acryl-datahub-actions/templates/service.yaml index 1a1f3b072..7d53bc3da 100644 --- a/charts/datahub/subcharts/acryl-datahub-actions/templates/service.yaml +++ b/charts/datahub/subcharts/acryl-datahub-actions/templates/service.yaml @@ -15,5 +15,11 @@ spec: targetPort: http protocol: TCP name: http + {{- if .Values.global.datahub.monitoring.enablePrometheus }} + - name: {{ .Values.global.datahub.monitoring.portName }} + port: 8000 + targetPort: {{ .Values.global.datahub.monitoring.portName }} + protocol: TCP + {{- end }} selector: {{- include "acryl-datahub-actions.selectorLabels" . | nindent 4 }} diff --git a/charts/datahub/subcharts/acryl-datahub-actions/templates/servicemonitor.yaml b/charts/datahub/subcharts/acryl-datahub-actions/templates/servicemonitor.yaml new file mode 100644 index 000000000..1e9cc31af --- /dev/null +++ b/charts/datahub/subcharts/acryl-datahub-actions/templates/servicemonitor.yaml @@ -0,0 +1,28 @@ +{{- if and .Values.serviceMonitor.create .Values.global.datahub.monitoring.enablePrometheus -}} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ include "acryl-datahub-actions.fullname" . }} + labels: + {{- include "acryl-datahub-actions.labels" . | nindent 4 }} + {{- range $key, $val := .Values.serviceMonitor.extraLabels }} + {{ $key }}: {{ $val | quote }} + {{- end }} + {{- with .Values.serviceMonitor.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + endpoints: + - port: {{ .Values.global.datahub.monitoring.portName }} + relabelings: + - separator: / + sourceLabels: + - namespace + - pod + targetLabel: instance + selector: + matchLabels: + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: acryl-datahub-actions +{{- end -}} \ No newline at end of file diff --git a/charts/datahub/subcharts/acryl-datahub-actions/values.yaml b/charts/datahub/subcharts/acryl-datahub-actions/values.yaml index 80cdeb3b0..28c2fd6a3 100644 --- a/charts/datahub/subcharts/acryl-datahub-actions/values.yaml +++ b/charts/datahub/subcharts/acryl-datahub-actions/values.yaml @@ -27,6 +27,10 @@ serviceAccount: # If not set and create is true, a name is generated using the fullname template name: +serviceMonitor: + create: false + extraLabels: {} + podAnnotations: {} podSecurityContext: {} @@ -98,6 +102,9 @@ global: datahub: gms: port: "8080" + monitoring: + enablePrometheus: true + portName: "jmx" metadata_service_authentication: enabled: true systemClientId: "__datahub_system"