diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index df08f9b..fa41c07 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -38,6 +38,10 @@ jobs: run: helm repo add bitnami https://charts.bitnami.com/bitnami - name: Add elastic repo run: helm repo add elastic https://helm.elastic.co + - name: Add prometheus repo + run: helm repo add prometheus https://prometheus-community.github.io/helm-charts + - name: Add grafana repo + run: helm repo add grafana https://grafana.github.io/helm-charts - name: Run chart-testing (list-changed) id: list-changed run: | diff --git a/charts/clearml-serving/Chart.lock b/charts/clearml-serving/Chart.lock new file mode 100644 index 0000000..f5a7f54 --- /dev/null +++ b/charts/clearml-serving/Chart.lock @@ -0,0 +1,12 @@ +dependencies: +- name: kafka + repository: https://charts.bitnami.com/bitnami + version: 21.4.0 +- name: prometheus + repository: https://prometheus-community.github.io/helm-charts + version: 19.7.2 +- name: grafana + repository: https://grafana.github.io/helm-charts + version: 6.52.3 +digest: sha256:b28d01875a50b24230ba164d14671225b71d79172192a97e345661e4832f484b +generated: "2023-03-16T09:10:35.77395+01:00" diff --git a/charts/clearml-serving/Chart.yaml b/charts/clearml-serving/Chart.yaml index 7c9cc04..d93b0e0 100644 --- a/charts/clearml-serving/Chart.yaml +++ b/charts/clearml-serving/Chart.yaml @@ -2,9 +2,14 @@ apiVersion: v2 name: clearml-serving description: ClearML Serving Helm Chart type: application -version: 0.7.0 +version: "1.0.0" appVersion: "1.2.0" -kubeVersion: ">= 1.19.0-0 < 1.26.0-0" +kubeVersion: ">= 1.21.0-0 < 1.27.0-0" +home: https://clear.ml +icon: https://raw.githubusercontent.com/allegroai/clearml/master/docs/clearml-logo.svg +sources: + - https://github.com/allegroai/clearml-helm-charts + - https://github.com/allegroai/clearml maintainers: - name: valeriano-manassero url: https://github.com/valeriano-manassero @@ -13,3 +18,20 @@ keywords: - "machine learning" - mlops - "model serving" +dependencies: + - name: kafka + version: "21.4.0" + repository: "https://charts.bitnami.com/bitnami" + condition: kafka.enabled + - name: prometheus + version: "19.7.2" + repository: "https://prometheus-community.github.io/helm-charts" + condition: prometheus.enabled + - name: grafana + version: "6.52.3" + repository: "https://grafana.github.io/helm-charts" + condition: grafana.enabled +annotations: + artifacthub.io/changes: | + - kind: changed + description: refactoring diff --git a/charts/clearml-serving/README.md b/charts/clearml-serving/README.md index 761ebed..6e66046 100644 --- a/charts/clearml-serving/README.md +++ b/charts/clearml-serving/README.md @@ -1,31 +1,71 @@ -# clearml-serving +# ClearML Kubernetes Serving -![Version: 0.7.0](https://img.shields.io/badge/Version-0.7.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.2.0](https://img.shields.io/badge/AppVersion-1.2.0-informational?style=flat-square) +![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.2.0](https://img.shields.io/badge/AppVersion-1.2.0-informational?style=flat-square) ClearML Serving Helm Chart +**Homepage:** + ## Maintainers | Name | Email | Url | | ---- | ------ | --- | | valeriano-manassero | | | +## Introduction + +The **clearml-serving** is the Kubernetes serving for for [ClearML](https://github.com/allegroai/clearml-serving). +It allows you to serve mopdels on a Kubernetes cluster. + +# Upgrading Chart + +## Upgrades/ Values upgrades + +Updating to latest version of this chart can be done in two steps: + +``` +helm repo update +helm upgrade clearml-serving allegroai/clearml-serving +``` + +Changing values on existing installation can be done with: + +``` +helm upgrade clearml-serving allegroai/clearml-serving --version -f custom_values.yaml +``` + +## Source Code + +* +* + ## Requirements -Kubernetes: `>= 1.19.0-0 < 1.26.0-0` +Kubernetes: `>= 1.21.0-0 < 1.27.0-0` + +| Repository | Name | Version | +|------------|------|---------| +| https://charts.bitnami.com/bitnami | kafka | 21.4.0 | +| https://grafana.github.io/helm-charts | grafana | 6.52.3 | +| https://prometheus-community.github.io/helm-charts | prometheus | 19.7.2 | ## Values | Key | Type | Default | Description | |-----|------|---------|-------------| -| alertmanager | object | `{"affinity":{},"image":{"repository":"prom/alertmanager","tag":"v0.23.0"},"nodeSelector":{},"resources":{},"tolerations":[]}` | Alertmanager generic configigurations | | clearml | object | `{"apiAccessKey":"ClearML API Access Key","apiHost":"http://clearml-server-apiserver:8008","apiSecretKey":"ClearML API Secret Key","defaultBaseServeUrl":"http://127.0.0.1:8080/serve","filesHost":"http://clearml-server-fileserver:8081","servingTaskId":"ClearML Serving Task ID","webHost":"http://clearml-server-webserver:80"}` | ClearMl generic configurations | -| clearml_serving_inference | object | `{"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-inference","tag":"1.2.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving inference configurations | +| clearml_serving_inference | object | `{"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-inference","tag":"1.2.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving inference configurations | | clearml_serving_inference.affinity | object | `{}` | Affinity configuration | | clearml_serving_inference.autoscaling | object | `{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50}` | Autoscaling configuration | | clearml_serving_inference.extraPythonPackages | list | `[]` | Extra Python Packages to be installed in running pods | | clearml_serving_inference.image | object | `{"repository":"allegroai/clearml-serving-inference","tag":"1.2.0"}` | Container Image | -| clearml_serving_inference.ingress | object | `{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","path":"/","tlsSecretName":""}` | Ingress exposing configurations | +| clearml_serving_inference.ingress | object | `{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""}` | Ingress exposing configurations | +| clearml_serving_inference.ingress.annotations | object | `{}` | Ingress annotations | +| clearml_serving_inference.ingress.enabled | bool | `false` | Enable/Disable ingress | +| clearml_serving_inference.ingress.hostName | string | `"serving.clearml.127-0-0-1.nip.io"` | Ingress hostname domain | +| clearml_serving_inference.ingress.ingressClassName | string | `""` | ClassName (must be defined if no default ingressClassName is available) | +| clearml_serving_inference.ingress.path | string | `"/"` | Ingress root path url | +| clearml_serving_inference.ingress.tlsSecretName | string | `""` | Reference to secret containing TLS certificate. If set, it enables HTTPS on ingress rule. | | clearml_serving_inference.nodeSelector | object | `{}` | Node Selector configuration | | clearml_serving_inference.resources | object | `{}` | Pod resources definition | | clearml_serving_inference.tolerations | list | `[]` | Tolerations configuration | @@ -36,20 +76,22 @@ Kubernetes: `>= 1.19.0-0 < 1.26.0-0` | clearml_serving_statistics.nodeSelector | object | `{}` | Node Selector configuration | | clearml_serving_statistics.resources | object | `{}` | Pod resources definition | | clearml_serving_statistics.tolerations | list | `[]` | Tolerations configuration | -| clearml_serving_triton | object | `{"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"enabled":true,"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-triton","tag":"1.2.0-22.07"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving-grpc.clearml.127-0-0-1.nip.io","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving Triton configurations | +| clearml_serving_triton | object | `{"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"enabled":true,"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-triton","tag":"1.2.0-22.07"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving-grpc.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving Triton configurations | | clearml_serving_triton.affinity | object | `{}` | Affinity configuration | | clearml_serving_triton.autoscaling | object | `{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50}` | Autoscaling configuration | | clearml_serving_triton.enabled | bool | `true` | Triton pod creation enable/disable | | clearml_serving_triton.extraPythonPackages | list | `[]` | Extra Python Packages to be installed in running pods | | clearml_serving_triton.image | object | `{"repository":"allegroai/clearml-serving-triton","tag":"1.2.0-22.07"}` | Container Image | -| clearml_serving_triton.ingress | object | `{"annotations":{},"enabled":false,"hostName":"serving-grpc.clearml.127-0-0-1.nip.io","path":"/","tlsSecretName":""}` | Ingress exposing configurations | +| clearml_serving_triton.ingress | object | `{"annotations":{},"enabled":false,"hostName":"serving-grpc.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""}` | Ingress exposing configurations | +| clearml_serving_triton.ingress.annotations | object | `{}` | Ingress annotations | +| clearml_serving_triton.ingress.enabled | bool | `false` | Enable/Disable ingress | +| clearml_serving_triton.ingress.hostName | string | `"serving-grpc.clearml.127-0-0-1.nip.io"` | Ingress hostname domain | +| clearml_serving_triton.ingress.ingressClassName | string | `""` | ClassName (must be defined if no default ingressClassName is available) | +| clearml_serving_triton.ingress.path | string | `"/"` | Ingress root path url | +| clearml_serving_triton.ingress.tlsSecretName | string | `""` | Reference to secret containing TLS certificate. If set, it enables HTTPS on ingress rule. | | clearml_serving_triton.nodeSelector | object | `{}` | Node Selector configuration | | clearml_serving_triton.resources | object | `{}` | Pod resources definition | | clearml_serving_triton.tolerations | list | `[]` | Tolerations configuration | -| grafana | object | `{"affinity":{},"image":{"repository":"grafana/grafana","tag":"8.4.4-ubuntu"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving-grafana.clearml.127-0-0-1.nip.io","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | Grafana generic configigurations | -| kafka | object | `{"affinity":{},"image":{"repository":"bitnami/kafka","tag":"3.1.0"},"nodeSelector":{},"resources":{},"tolerations":[]}` | Kafka generic configigurations | -| prometheus | object | `{"affinity":{},"image":{"repository":"prom/prometheus","tag":"v2.34.0"},"nodeSelector":{},"resources":{},"tolerations":[]}` | Prometheus generic configigurations | -| zookeeper | object | `{"affinity":{},"image":{"repository":"bitnami/zookeeper","tag":"3.7.0"},"nodeSelector":{},"resources":{},"tolerations":[]}` | Zookeeper generic configigurations | - ----------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0) +| grafana | object | `{"adminPassword":"clearml","adminUser":"admin","datasources":{"datasources.yaml":{"apiVersion":1,"datasources":[{"access":"proxy","isDefault":true,"name":"Prometheus","type":"prometheus","url":"http://{{ .Release.Name }}-prometheus-server"}]}},"enabled":true}` | Configuration from https://github.com/grafana/helm-charts/blob/main/charts/grafana/values.yaml | +| kafka | object | `{"enabled":true}` | Configuration from https://github.com/bitnami/charts/blob/main/bitnami/kafka/values.yaml | +| prometheus | object | `{"enabled":true,"extraScrapeConfigs":"- job_name: \"{{ .Release.Name }}-stats\"\n static_configs:\n - targets:\n - \"{{ .Release.Name }}-statistics:9999\"\n","kube-state-metrics":{"enabled":false},"prometheus-node-exporter":{"enabled":false},"prometheus-pushgateway":{"enabled":false},"serverFiles":{"prometheus.yml":{"scrape_configs":[{"job_name":"prometheus","static_configs":[{"targets":["localhost:9090"]}]}]}}}` | Configuration from https://github.com/prometheus-community/helm-charts/blob/main/charts/prometheus/values.yaml | diff --git a/charts/clearml-serving/README.md.gotmpl b/charts/clearml-serving/README.md.gotmpl new file mode 100644 index 0000000..8791fa0 --- /dev/null +++ b/charts/clearml-serving/README.md.gotmpl @@ -0,0 +1,38 @@ +# ClearML Kubernetes Serving +{{ template "chart.deprecationWarning" . }} + +{{ template "chart.badgesSection" . }} + +{{ template "chart.description" . }} + +{{ template "chart.homepageLine" . }} + +{{ template "chart.maintainersSection" . }} + +## Introduction + +The **clearml-serving** is the Kubernetes serving for for [ClearML](https://github.com/allegroai/clearml-serving). +It allows you to serve mopdels on a Kubernetes cluster. + +# Upgrading Chart + +## Upgrades/ Values upgrades + +Updating to latest version of this chart can be done in two steps: + +``` +helm repo update +helm upgrade clearml-serving allegroai/clearml-serving +``` + +Changing values on existing installation can be done with: + +``` +helm upgrade clearml-serving allegroai/clearml-serving --version -f custom_values.yaml +``` + +{{ template "chart.sourcesSection" . }} + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesSection" . }} diff --git a/charts/clearml-serving/charts/grafana-6.52.3.tgz b/charts/clearml-serving/charts/grafana-6.52.3.tgz new file mode 100644 index 0000000..7bae8e1 Binary files /dev/null and b/charts/clearml-serving/charts/grafana-6.52.3.tgz differ diff --git a/charts/clearml-serving/charts/kafka-21.4.0.tgz b/charts/clearml-serving/charts/kafka-21.4.0.tgz new file mode 100644 index 0000000..0af58fc Binary files /dev/null and b/charts/clearml-serving/charts/kafka-21.4.0.tgz differ diff --git a/charts/clearml-serving/charts/prometheus-19.7.2.tgz b/charts/clearml-serving/charts/prometheus-19.7.2.tgz new file mode 100644 index 0000000..0c70c69 Binary files /dev/null and b/charts/clearml-serving/charts/prometheus-19.7.2.tgz differ diff --git a/charts/clearml-serving/templates/_helpers.tpl b/charts/clearml-serving/templates/_helpers.tpl index 62af4d0..d299aca 100644 --- a/charts/clearml-serving/templates/_helpers.tpl +++ b/charts/clearml-serving/templates/_helpers.tpl @@ -1,7 +1,7 @@ {{/* Expand the name of the chart. */}} -{{- define "clearml-serving.name" -}} +{{- define "clearmlServing.name" -}} {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} {{- end }} @@ -10,7 +10,7 @@ Create a default fully qualified app name. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). If release name contains chart name it will be used as a full name. */}} -{{- define "clearml-serving.fullname" -}} +{{- define "clearmlServing.fullname" -}} {{- if .Values.fullnameOverride }} {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} {{- else }} @@ -26,16 +26,16 @@ If release name contains chart name it will be used as a full name. {{/* Create chart name and version as used by the chart label. */}} -{{- define "clearml-serving.chart" -}} +{{- define "clearmlServing.chart" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} {{- end }} {{/* Common labels */}} -{{- define "clearml-serving.labels" -}} -helm.sh/chart: {{ include "clearml-serving.chart" . }} -{{ include "clearml-serving.selectorLabels" . }} +{{- define "clearmlServing.labels" -}} +helm.sh/chart: {{ include "clearmlServing.chart" . }} +{{ include "clearmlServing.selectorLabels" . }} {{- if .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} {{- end }} @@ -45,17 +45,17 @@ app.kubernetes.io/managed-by: {{ .Release.Service }} {{/* Selector labels */}} -{{- define "clearml-serving.selectorLabels" -}} -app.kubernetes.io/name: {{ include "clearml-serving.name" . }} +{{- define "clearmlServing.selectorLabels" -}} +app.kubernetes.io/name: {{ include "clearmlServing.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{/* Create the name of the service account to use */}} -{{- define "clearml-serving.serviceAccountName" -}} +{{- define "clearmlServing.serviceAccountName" -}} {{- if .Values.serviceAccount.create }} -{{- default (include "clearml-serving.fullname" .) .Values.serviceAccount.name }} +{{- default (include "clearmlServing.fullname" .) .Values.serviceAccount.name }} {{- else }} {{- default "default" .Values.serviceAccount.name }} {{- end }} diff --git a/charts/clearml-serving/templates/alertmanager-deployment.yaml b/charts/clearml-serving/templates/alertmanager-deployment.yaml deleted file mode 100644 index c5c822a..0000000 --- a/charts/clearml-serving/templates/alertmanager-deployment.yaml +++ /dev/null @@ -1,27 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - annotations: {} - labels: - clearml.serving.service: alertmanager - name: alertmanager -spec: - replicas: 1 - selector: - matchLabels: - clearml.serving.service: alertmanager - strategy: {} - template: - metadata: - annotations: {} - labels: - clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: alertmanager - spec: - containers: - - image: "{{ .Values.alertmanager.image.repository }}:{{ .Values.alertmanager.image.tag }}" - name: clearml-serving-alertmanager - ports: - - containerPort: 9093 - resources: {} - restartPolicy: Always diff --git a/charts/clearml-serving/templates/alertmanager-service.yaml b/charts/clearml-serving/templates/alertmanager-service.yaml deleted file mode 100644 index dddf32c..0000000 --- a/charts/clearml-serving/templates/alertmanager-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - annotations: {} - labels: - clearml.serving.service: alertmanager - name: clearml-serving-alertmanager -spec: - ports: - - name: "9093" - port: 9093 - targetPort: 9093 - selector: - clearml.serving.service: alertmanager diff --git a/charts/clearml-serving/templates/clearml-serving-backend-networkpolicy.yaml b/charts/clearml-serving/templates/clearml-serving-backend-networkpolicy.yaml index 66cd75d..5b0c611 100644 --- a/charts/clearml-serving/templates/clearml-serving-backend-networkpolicy.yaml +++ b/charts/clearml-serving/templates/clearml-serving-backend-networkpolicy.yaml @@ -1,7 +1,7 @@ apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: - name: clearml-serving-backend + name: {{ include "clearmlServing.fullname" . }}-backend spec: ingress: - from: diff --git a/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml b/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml index 4a93c57..233e78e 100644 --- a/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml +++ b/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml @@ -3,20 +3,20 @@ kind: Deployment metadata: annotations: {} labels: - clearml.serving.service: clearml-serving-inference - name: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference + name: {{ include "clearmlServing.fullname" . }}-inference spec: replicas: 1 selector: matchLabels: - clearml.serving.service: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference strategy: {} template: metadata: annotations: {} labels: clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference spec: containers: - env: @@ -31,14 +31,14 @@ spec: - name: CLEARML_WEB_HOST value: "{{ .Values.clearml.webHost }}" - name: CLEARML_DEFAULT_KAFKA_SERVE_URL - value: clearml-serving-kafka:9092 + value: {{ include "clearmlServing.fullname" . }}-kafka:9092 - name: CLEARML_SERVING_POLL_FREQ value: "1.0" - name: CLEARML_DEFAULT_BASE_SERVE_URL value: "{{ .Values.clearml.defaultBaseServeUrl }}" - name: CLEARML_DEFAULT_TRITON_GRPC_ADDR {{- if .Values.clearml_serving_triton.enabled }} - value: "clearml-serving-triton:8001" + value: "{{ include "clearmlServing.fullname" . }}-triton:8001" {{- else }} value: "" {{- end }} @@ -55,7 +55,7 @@ spec: value: '{{ join " " .Values.clearml_serving_inference.extraPythonPackages }}' {{- end }} image: "{{ .Values.clearml_serving_inference.image.repository }}:{{ .Values.clearml_serving_inference.image.tag }}" - name: clearml-serving-inference + name: {{ include "clearmlServing.fullname" . }}-inference ports: - containerPort: 8080 resources: {} diff --git a/charts/clearml-serving/templates/clearml-serving-inference-hpa.yaml b/charts/clearml-serving/templates/clearml-serving-inference-hpa.yaml index c4832d4..e877426 100644 --- a/charts/clearml-serving/templates/clearml-serving-inference-hpa.yaml +++ b/charts/clearml-serving/templates/clearml-serving-inference-hpa.yaml @@ -2,16 +2,16 @@ apiVersion: {{ include "common.capabilities.hpa.apiVersion" ( dict "context" $ ) }} kind: HorizontalPodAutoscaler metadata: - name: clearml-serving-inference-hpa + name: {{ include "clearmlServing.fullname" . }}-inference-hpa namespace: {{ .Release.Namespace | quote }} annotations: {} labels: - clearml.serving.service: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference spec: scaleTargetRef: apiVersion: "apps/v1" kind: Deployment - name: clearml-serving-inference + name: {{ include "clearmlServing.fullname" . }}-inference minReplicas: {{ .Values.clearml_serving_inference.autoscaling.minReplicas }} maxReplicas: {{ .Values.clearml_serving_inference.autoscaling.maxReplicas }} metrics: diff --git a/charts/clearml-serving/templates/clearml-serving-inference-ingress.yaml b/charts/clearml-serving/templates/clearml-serving-inference-ingress.yaml index 829f833..2c27211 100644 --- a/charts/clearml-serving/templates/clearml-serving-inference-ingress.yaml +++ b/charts/clearml-serving/templates/clearml-serving-inference-ingress.yaml @@ -8,9 +8,9 @@ apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: - name: clearml-serving-inference + name: {{ include "clearmlServing.fullname" . }}-inference labels: - clearml.serving.service: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference annotations: {{- toYaml .Values.clearml_serving_inference.ingress.annotations | nindent 4 }} spec: @@ -29,12 +29,12 @@ spec: pathType: Prefix backend: service: - name: clearml-serving-inference + name: {{ include "clearmlServing.fullname" . }}-inference port: number: 8080 {{ else }} backend: - serviceName: clearml-serving-inference + servicename: {{ include "clearmlServing.fullname" . }}-inference servicePort: 8080 {{ end }} {{- end }} diff --git a/charts/clearml-serving/templates/clearml-serving-inference-service.yaml b/charts/clearml-serving/templates/clearml-serving-inference-service.yaml index 2084422..5acd8b0 100644 --- a/charts/clearml-serving/templates/clearml-serving-inference-service.yaml +++ b/charts/clearml-serving/templates/clearml-serving-inference-service.yaml @@ -3,12 +3,12 @@ kind: Service metadata: annotations: {} labels: - clearml.serving.service: clearml-serving-inference - name: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference + name: {{ include "clearmlServing.fullname" . }}-inference spec: ports: - name: "8080" port: 8080 targetPort: 8080 selector: - clearml.serving.service: clearml-serving-inference + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-inference diff --git a/charts/clearml-serving/templates/clearml-serving-statistics-deployment.yaml b/charts/clearml-serving/templates/clearml-serving-statistics-deployment.yaml index ac31018..0a47d31 100644 --- a/charts/clearml-serving/templates/clearml-serving-statistics-deployment.yaml +++ b/charts/clearml-serving/templates/clearml-serving-statistics-deployment.yaml @@ -3,20 +3,20 @@ kind: Deployment metadata: annotations: {} labels: - clearml.serving.service: clearml-serving-statistics - name: clearml-serving-statistics + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-statistics + name: {{ include "clearmlServing.fullname" . }}-statistics spec: replicas: 1 selector: matchLabels: - clearml.serving.service: clearml-serving-statistics + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-statistics strategy: {} template: metadata: annotations: {} labels: clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: clearml-serving-statistics + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-statistics spec: containers: - env: @@ -31,7 +31,7 @@ spec: - name: CLEARML_WEB_HOST value: "{{ .Values.clearml.webHost }}" - name: CLEARML_DEFAULT_KAFKA_SERVE_URL - value: clearml-serving-kafka:9092 + value: {{ include "clearmlServing.fullname" . }}-kafka:9092 - name: CLEARML_SERVING_POLL_FREQ value: "1.0" - name: CLEARML_SERVING_TASK_ID @@ -41,7 +41,7 @@ spec: value: '{{ join " " .Values.clearml_serving_statistics.extraPythonPackages }}' {{- end }} image: "{{ .Values.clearml_serving_statistics.image.repository }}:{{ .Values.clearml_serving_statistics.image.tag }}" - name: clearml-serving-statistics + name: {{ include "clearmlServing.fullname" . }}-statistics ports: - containerPort: 9999 resources: {} diff --git a/charts/clearml-serving/templates/clearml-serving-statistics-service.yaml b/charts/clearml-serving/templates/clearml-serving-statistics-service.yaml index 5496038..9cff911 100644 --- a/charts/clearml-serving/templates/clearml-serving-statistics-service.yaml +++ b/charts/clearml-serving/templates/clearml-serving-statistics-service.yaml @@ -3,12 +3,12 @@ kind: Service metadata: annotations: {} labels: - clearml.serving.service: clearml-serving-statistics - name: clearml-serving-statistics + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-statistics + name: {{ include "clearmlServing.fullname" . }}-statistics spec: ports: - name: "9999" port: 9999 targetPort: 9999 selector: - clearml.serving.service: clearml-serving-statistics + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-statistics diff --git a/charts/clearml-serving/templates/clearml-serving-triton-deployment.yaml b/charts/clearml-serving/templates/clearml-serving-triton-deployment.yaml index 516b5c5..8012e57 100644 --- a/charts/clearml-serving/templates/clearml-serving-triton-deployment.yaml +++ b/charts/clearml-serving/templates/clearml-serving-triton-deployment.yaml @@ -4,20 +4,20 @@ kind: Deployment metadata: annotations: {} labels: - clearml.serving.service: clearml-serving-triton - name: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton + name: {{ include "clearmlServing.fullname" . }}-triton spec: replicas: 1 selector: matchLabels: - clearml.serving.service: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton strategy: {} template: metadata: annotations: {} labels: clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton spec: containers: - env: @@ -42,7 +42,7 @@ spec: value: '{{ join " " .Values.clearml_serving_triton.extraPythonPackages }}' {{- end }} image: "{{ .Values.clearml_serving_triton.image.repository }}:{{ .Values.clearml_serving_triton.image.tag }}" - name: clearml-serving-triton + name: {{ include "clearmlServing.fullname" . }}-triton ports: - containerPort: 8001 resources: {} diff --git a/charts/clearml-serving/templates/clearml-serving-triton-hpa.yaml b/charts/clearml-serving/templates/clearml-serving-triton-hpa.yaml index 773fc0f..eecf8fa 100644 --- a/charts/clearml-serving/templates/clearml-serving-triton-hpa.yaml +++ b/charts/clearml-serving/templates/clearml-serving-triton-hpa.yaml @@ -2,16 +2,16 @@ apiVersion: {{ include "common.capabilities.hpa.apiVersion" ( dict "context" $ ) }} kind: HorizontalPodAutoscaler metadata: - name: clearml-serving-triton-hpa + name: {{ include "clearmlServing.fullname" . }}-triton-hpa namespace: {{ .Release.Namespace | quote }} annotations: {} labels: - clearml.serving.service: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton spec: scaleTargetRef: apiVersion: "apps/v1" kind: Deployment - name: clearml-serving-triton + name: {{ include "clearmlServing.fullname" . }}-triton minReplicas: {{ .Values.clearml_serving_triton.autoscaling.minReplicas }} maxReplicas: {{ .Values.clearml_serving_triton.autoscaling.maxReplicas }} metrics: diff --git a/charts/clearml-serving/templates/clearml-serving-triton-ingress.yaml b/charts/clearml-serving/templates/clearml-serving-triton-ingress.yaml index d1f401a..675b367 100644 --- a/charts/clearml-serving/templates/clearml-serving-triton-ingress.yaml +++ b/charts/clearml-serving/templates/clearml-serving-triton-ingress.yaml @@ -9,9 +9,9 @@ apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: - name: clearml-serving-triton + name: {{ include "clearmlServing.fullname" . }}-triton labels: - clearml.serving.service: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton annotations: {{- toYaml .Values.clearml_serving_triton.ingress.annotations | nindent 4 }} spec: @@ -30,12 +30,12 @@ spec: pathType: Prefix backend: service: - name: clearml-serving-triton + name: {{ include "clearmlServing.fullname" . }}-triton port: number: 8001 {{ else }} backend: - serviceName: clearml-serving-triton + servicename: {{ include "clearmlServing.fullname" . }}-triton servicePort: 8001 {{ end }} {{- end }} diff --git a/charts/clearml-serving/templates/clearml-serving-triton-service.yaml b/charts/clearml-serving/templates/clearml-serving-triton-service.yaml index 3adc0b6..56f0484 100644 --- a/charts/clearml-serving/templates/clearml-serving-triton-service.yaml +++ b/charts/clearml-serving/templates/clearml-serving-triton-service.yaml @@ -4,13 +4,13 @@ kind: Service metadata: annotations: {} labels: - clearml.serving.service: clearml-serving-triton - name: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton + name: {{ include "clearmlServing.fullname" . }}-triton spec: ports: - name: "8001" port: 8001 targetPort: 8001 selector: - clearml.serving.service: clearml-serving-triton + clearml.serving.service: {{ include "clearmlServing.fullname" . }}-triton {{ end }} diff --git a/charts/clearml-serving/templates/grafana-config-secret.yaml b/charts/clearml-serving/templates/grafana-config-secret.yaml deleted file mode 100644 index 5704088..0000000 --- a/charts/clearml-serving/templates/grafana-config-secret.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Secret -metadata: - name: grafana-config -stringData: - datasource.yaml: |- - apiVersion: 1 - - datasources: - - name: Prometheus - type: prometheus - # Access mode - proxy (server in the UI) or direct (browser in the UI). - access: proxy - url: http://clearml-serving-prometheus:9090 diff --git a/charts/clearml-serving/templates/grafana-deployment.yaml b/charts/clearml-serving/templates/grafana-deployment.yaml deleted file mode 100644 index 5ebf824..0000000 --- a/charts/clearml-serving/templates/grafana-deployment.yaml +++ /dev/null @@ -1,35 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - annotations: {} - labels: - clearml.serving.service: grafana - name: grafana -spec: - replicas: 1 - selector: - matchLabels: - clearml.serving.service: grafana - strategy: - type: Recreate - template: - metadata: - annotations: {} - labels: - clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: grafana - spec: - containers: - - image: "{{ .Values.grafana.image.repository }}:{{ .Values.grafana.image.tag }}" - name: clearml-serving-grafana - ports: - - containerPort: 3000 - resources: {} - volumeMounts: - - mountPath: /etc/grafana/provisioning/datasources/ - name: grafana-conf - restartPolicy: Always - volumes: - - name: grafana-conf - secret: - secretName: grafana-config diff --git a/charts/clearml-serving/templates/grafana-ingress.yaml b/charts/clearml-serving/templates/grafana-ingress.yaml deleted file mode 100644 index 3ab386b..0000000 --- a/charts/clearml-serving/templates/grafana-ingress.yaml +++ /dev/null @@ -1,40 +0,0 @@ -{{- if .Values.grafana.ingress.enabled -}} -{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} -apiVersion: networking.k8s.io/v1 -{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} -apiVersion: networking.k8s.io/v1beta1 -{{- else -}} -apiVersion: extensions/v1beta1 -{{- end }} -kind: Ingress -metadata: - name: clearml-serving-grafana - labels: - clearml.serving.service: clearml-serving-grafana - annotations: - {{- toYaml .Values.grafana.ingress.annotations | nindent 4 }} -spec: - {{- if .Values.grafana.ingress.tlsSecretName }} - tls: - - hosts: - - {{ .Values.grafana.ingress.hostName }} - secretName: {{ .Values.grafana.ingress.tlsSecretName }} - {{- end }} - rules: - - host: {{ .Values.grafana.ingress.hostName }} - http: - paths: - - path: {{ .Values.grafana.ingress.path }} - {{ if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion }} - pathType: Prefix - backend: - service: - name: clearml-serving-grafana - port: - number: 3000 - {{ else }} - backend: - serviceName: clearml-serving-grafana - servicePort: 3000 - {{ end }} -{{- end }} diff --git a/charts/clearml-serving/templates/grafana-service.yaml b/charts/clearml-serving/templates/grafana-service.yaml deleted file mode 100644 index 5abfb40..0000000 --- a/charts/clearml-serving/templates/grafana-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - annotations: {} - labels: - clearml.serving.service: grafana - name: clearml-serving-grafana -spec: - ports: - - name: "3000" - port: 3000 - targetPort: 3000 - selector: - clearml.serving.service: grafana diff --git a/charts/clearml-serving/templates/kafka-deployment.yaml b/charts/clearml-serving/templates/kafka-deployment.yaml deleted file mode 100644 index 1c91574..0000000 --- a/charts/clearml-serving/templates/kafka-deployment.yaml +++ /dev/null @@ -1,40 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - annotations: {} - labels: - clearml.serving.service: kafka - name: kafka -spec: - replicas: 1 - selector: - matchLabels: - clearml.serving.service: kafka - strategy: {} - template: - metadata: - annotations: {} - labels: - clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: kafka - spec: - containers: - - env: - - name: ALLOW_PLAINTEXT_LISTENER - value: "yes" - - name: KAFKA_BROKER_ID - value: "1" - - name: KAFKA_CFG_ADVERTISED_LISTENERS - value: PLAINTEXT://clearml-serving-kafka:9092 - - name: KAFKA_CFG_LISTENERS - value: PLAINTEXT://0.0.0.0:9092 - - name: KAFKA_CFG_ZOOKEEPER_CONNECT - value: clearml-serving-zookeeper:2181 - - name: KAFKA_CREATE_TOPICS - value: '"topic_test:1:1"' - image: "{{ .Values.kafka.image.repository }}:{{ .Values.kafka.image.tag }}" - name: clearml-serving-kafka - ports: - - containerPort: 9092 - resources: {} - restartPolicy: Always diff --git a/charts/clearml-serving/templates/kafka-service.yaml b/charts/clearml-serving/templates/kafka-service.yaml deleted file mode 100644 index e112321..0000000 --- a/charts/clearml-serving/templates/kafka-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - annotations: {} - labels: - clearml.serving.service: kafka - name: clearml-serving-kafka -spec: - ports: - - name: "9092" - port: 9092 - targetPort: 9092 - selector: - clearml.serving.service: kafka diff --git a/charts/clearml-serving/templates/prometheus-config-secret.yaml b/charts/clearml-serving/templates/prometheus-config-secret.yaml deleted file mode 100644 index 3a36528..0000000 --- a/charts/clearml-serving/templates/prometheus-config-secret.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: v1 -kind: Secret -metadata: - name: prometheus-config -stringData: - prometheus.yml: |- - global: - scrape_interval: "15s" # By default, scrape targets every 15 seconds. - evaluation_interval: 15s # By default, scrape targets every 15 seconds. - external_labels: - monitor: 'clearml-serving' - - scrape_configs: - # The job name is added as a label `job=` to any timeseries scraped from this config. - - job_name: 'prometheus' - - scrape_interval: 5s - - static_configs: - - targets: ['localhost:9090'] - - # The job name is added as a label `job=` to any timeseries scraped from this config. - - job_name: 'clearml-inference-stats' - - scrape_interval: 5s - - static_configs: - - targets: ['clearml-serving-statistics:9999'] \ No newline at end of file diff --git a/charts/clearml-serving/templates/prometheus-deployment.yaml b/charts/clearml-serving/templates/prometheus-deployment.yaml deleted file mode 100644 index cb52ece..0000000 --- a/charts/clearml-serving/templates/prometheus-deployment.yaml +++ /dev/null @@ -1,42 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - annotations: {} - labels: - clearml.serving.service: prometheus - name: prometheus -spec: - replicas: 1 - selector: - matchLabels: - clearml.serving.service: prometheus - strategy: - type: Recreate - template: - metadata: - annotations: {} - labels: - clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: prometheus - spec: - containers: - - args: - - --config.file=/mnt/prometheus.yml - - --storage.tsdb.path=/prometheus - - --web.console.libraries=/etc/prometheus/console_libraries - - --web.console.templates=/etc/prometheus/consoles - - --storage.tsdb.retention.time=200h - - --web.enable-lifecycle - image: "{{ .Values.prometheus.image.repository }}:{{ .Values.prometheus.image.tag }}" - name: clearml-serving-prometheus - ports: - - containerPort: 9090 - resources: {} - volumeMounts: - - mountPath: /mnt - name: prometheus-conf - restartPolicy: Always - volumes: - - name: prometheus-conf - secret: - secretName: prometheus-config diff --git a/charts/clearml-serving/templates/prometheus-service.yaml b/charts/clearml-serving/templates/prometheus-service.yaml deleted file mode 100644 index 5ac1f3a..0000000 --- a/charts/clearml-serving/templates/prometheus-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - annotations: {} - labels: - clearml.serving.service: prometheus - name: clearml-serving-prometheus -spec: - ports: - - name: "9090" - port: 9090 - targetPort: 9090 - selector: - clearml.serving.service: prometheus diff --git a/charts/clearml-serving/templates/zookeeper-deployment.yaml b/charts/clearml-serving/templates/zookeeper-deployment.yaml deleted file mode 100644 index f3df88d..0000000 --- a/charts/clearml-serving/templates/zookeeper-deployment.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - annotations: {} - labels: - clearml.serving.service: zookeeper - name: zookeeper -spec: - replicas: 1 - selector: - matchLabels: - clearml.serving.service: zookeeper - strategy: {} - template: - metadata: - annotations: {} - labels: - clearml.serving.network/clearml-serving-backend: "true" - clearml.serving.service: zookeeper - spec: - containers: - - env: - - name: ALLOW_ANONYMOUS_LOGIN - value: "yes" - image: "{{ .Values.zookeeper.image.repository }}:{{ .Values.zookeeper.image.tag }}" - name: clearml-serving-zookeeper - ports: - - containerPort: 2181 - resources: {} - restartPolicy: Always diff --git a/charts/clearml-serving/templates/zookeeper-service.yaml b/charts/clearml-serving/templates/zookeeper-service.yaml deleted file mode 100644 index e24f0cb..0000000 --- a/charts/clearml-serving/templates/zookeeper-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - annotations: {} - labels: - clearml.serving.service: zookeeper - name: clearml-serving-zookeeper -spec: - ports: - - name: "2181" - port: 2181 - targetPort: 2181 - selector: - clearml.serving.service: zookeeper diff --git a/charts/clearml-serving/values.yaml b/charts/clearml-serving/values.yaml index 55d5698..451b827 100644 --- a/charts/clearml-serving/values.yaml +++ b/charts/clearml-serving/values.yaml @@ -8,62 +8,6 @@ clearml: defaultBaseServeUrl: http://127.0.0.1:8080/serve servingTaskId: "ClearML Serving Task ID" -# -- Zookeeper generic configigurations -zookeeper: - image: - repository: "bitnami/zookeeper" - tag: "3.7.0" - nodeSelector: {} - tolerations: [] - affinity: {} - resources: {} - -# -- Kafka generic configigurations -kafka: - image: - repository: "bitnami/kafka" - tag: "3.1.0" - nodeSelector: {} - tolerations: [] - affinity: {} - resources: {} - -# -- Prometheus generic configigurations -prometheus: - image: - repository: "prom/prometheus" - tag: "v2.34.0" - nodeSelector: {} - tolerations: [] - affinity: {} - resources: {} - -# -- Grafana generic configigurations -grafana: - image: - repository: "grafana/grafana" - tag: "8.4.4-ubuntu" - nodeSelector: {} - tolerations: [] - affinity: {} - resources: {} - ingress: - enabled: false - hostName: "serving-grafana.clearml.127-0-0-1.nip.io" - tlsSecretName: "" - annotations: {} - path: "/" - -# -- Alertmanager generic configigurations -alertmanager: - image: - repository: "prom/alertmanager" - tag: "v0.23.0" - nodeSelector: {} - tolerations: [] - affinity: {} - resources: {} - # -- ClearML serving statistics configurations clearml_serving_statistics: # -- Container Image @@ -110,10 +54,17 @@ clearml_serving_inference: targetMemory: 50 # -- Ingress exposing configurations ingress: + # -- Enable/Disable ingress enabled: false + # -- ClassName (must be defined if no default ingressClassName is available) + ingressClassName: "" + # -- Ingress hostname domain hostName: "serving.clearml.127-0-0-1.nip.io" + # -- Reference to secret containing TLS certificate. If set, it enables HTTPS on ingress rule. tlsSecretName: "" + # -- Ingress annotations annotations: {} + # -- Ingress root path url path: "/" # -- ClearML serving Triton configurations @@ -145,20 +96,56 @@ clearml_serving_triton: targetMemory: 50 # -- Ingress exposing configurations ingress: + # -- Enable/Disable ingress enabled: false + # -- ClassName (must be defined if no default ingressClassName is available) + ingressClassName: "" + # -- Ingress hostname domain hostName: "serving-grpc.clearml.127-0-0-1.nip.io" + # -- Reference to secret containing TLS certificate. If set, it enables HTTPS on ingress rule. tlsSecretName: "" + # -- Ingress annotations annotations: {} - # # Example for AWS ALB - # kubernetes.io/ingress.class: alb - # alb.ingress.kubernetes.io/backend-protocol: HTTP - # alb.ingress.kubernetes.io/backend-protocol-version: GRPC - # alb.ingress.kubernetes.io/certificate-arn: - # alb.ingress.kubernetes.io/ssl-redirect: '443' - # alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}]' - # alb.ingress.kubernetes.io/target-type: ip - # - # # Example for NNGINX ingress controller - # nginx.ingress.kubernetes.io/ssl-redirect: "true" - # nginx.ingress.kubernetes.io/backend-protocol: "GRPC" + # -- Ingress root path url path: "/" + +# -- Configuration from https://github.com/bitnami/charts/blob/main/bitnami/kafka/values.yaml +kafka: + enabled: true + +# -- Configuration from https://github.com/prometheus-community/helm-charts/blob/main/charts/prometheus/values.yaml +prometheus: + enabled: true + kube-state-metrics: + enabled: false + prometheus-node-exporter: + enabled: false + prometheus-pushgateway: + enabled: false + serverFiles: + prometheus.yml: + scrape_configs: + - job_name: prometheus + static_configs: + - targets: + - localhost:9090 + extraScrapeConfigs: | + - job_name: "{{ .Release.Name }}-stats" + static_configs: + - targets: + - "{{ .Release.Name }}-statistics:9999" + +# -- Configuration from https://github.com/grafana/helm-charts/blob/main/charts/grafana/values.yaml +grafana: + enabled: true + adminUser: admin + adminPassword: clearml + datasources: + datasources.yaml: + apiVersion: 1 + datasources: + - name: Prometheus + type: prometheus + url: "http://{{ .Release.Name }}-prometheus-server" + access: proxy + isDefault: true