Skip to content

Commit 9a6a312

Browse files
Added: Support for poll frequency and metric frequency (#362)
1 parent b44b4e1 commit 9a6a312

File tree

6 files changed

+23
-11
lines changed

6 files changed

+23
-11
lines changed

charts/clearml-serving/Chart.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apiVersion: v2
22
name: clearml-serving
33
description: ClearML Serving Helm Chart
44
type: application
5-
version: "1.5.11"
5+
version: "1.6.0"
66
appVersion: "1.3.0"
77
kubeVersion: ">= 1.21.0-0"
88
home: https://clear.ml
@@ -33,5 +33,5 @@ dependencies:
3333
condition: grafana.enabled
3434
annotations:
3535
artifacthub.io/changes: |
36-
- kind: changed
37-
description: "Dropped kubernetes max compatible version"
36+
- kind: added
37+
description: "Support for poll frequency and metric frequency"

charts/clearml-serving/README.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# ClearML Kubernetes Serving
22

3-
![Version: 1.5.11](https://img.shields.io/badge/Version-1.5.11-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.3.0](https://img.shields.io/badge/AppVersion-1.3.0-informational?style=flat-square)
3+
![Version: 1.6.0](https://img.shields.io/badge/Version-1.6.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.3.0](https://img.shields.io/badge/AppVersion-1.3.0-informational?style=flat-square)
44

55
ClearML Serving Helm Chart
66

@@ -62,7 +62,7 @@ Kubernetes: `>= 1.21.0-0`
6262
| Key | Type | Default | Description |
6363
|-----|------|---------|-------------|
6464
| 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","kafkaServeUrl":"","servingTaskId":"ClearML Serving Task ID","webHost":"http://clearml-server-webserver:80"}` | ClearMl generic configurations |
65-
| clearml_serving_inference | object | `{"additionalConfigs":{},"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"existingAdditionalConfigsConfigMap":"","existingAdditionalConfigsSecret":"","extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-inference","tag":"1.3.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving inference configurations |
65+
| clearml_serving_inference | object | `{"additionalConfigs":{},"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"existingAdditionalConfigsConfigMap":"","existingAdditionalConfigsSecret":"","extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-inference","tag":"1.3.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"pollFrequencyMinutes":"1.0","resources":{},"tolerations":[]}` | ClearML serving inference configurations |
6666
| clearml_serving_inference.additionalConfigs | object | `{}` | files declared in this parameter will be mounted on internal folder /opt/clearml/config and read by pod (examples in values.yaml) if not overridden by existingAdditionalConfigsSecret |
6767
| clearml_serving_inference.affinity | object | `{}` | Affinity configuration |
6868
| clearml_serving_inference.autoscaling | object | `{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50}` | Autoscaling configuration |
@@ -79,9 +79,10 @@ Kubernetes: `>= 1.21.0-0`
7979
| clearml_serving_inference.ingress.path | string | `"/"` | Ingress root path url |
8080
| clearml_serving_inference.ingress.tlsSecretName | string | `""` | Reference to secret containing TLS certificate. If set, it enables HTTPS on ingress rule. |
8181
| clearml_serving_inference.nodeSelector | object | `{}` | Node Selector configuration |
82+
| clearml_serving_inference.pollFrequencyMinutes | string | `"1.0"` | Default polling frequency for finding new models |
8283
| clearml_serving_inference.resources | object | `{}` | Pod resources definition |
8384
| clearml_serving_inference.tolerations | list | `[]` | Tolerations configuration |
84-
| clearml_serving_statistics | object | `{"additionalConfigs":{},"affinity":{},"enabled":true,"existingAdditionalConfigsConfigMap":"","existingAdditionalConfigsSecret":"","extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-statistics","tag":"1.3.0"},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving statistics configurations |
85+
| clearml_serving_statistics | object | `{"additionalConfigs":{},"affinity":{},"enabled":true,"existingAdditionalConfigsConfigMap":"","existingAdditionalConfigsSecret":"","extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-statistics","tag":"1.3.0"},"nodeSelector":{},"pollFrequencyMinutes":"1.0","resources":{},"tolerations":[]}` | ClearML serving statistics configurations |
8586
| clearml_serving_statistics.additionalConfigs | object | `{}` | files declared in this parameter will be mounted on internal folder /opt/clearml/config and read by pod (examples in values.yaml) if not overridden by existingAdditionalConfigsSecret |
8687
| clearml_serving_statistics.affinity | object | `{}` | Affinity configuration |
8788
| clearml_serving_statistics.enabled | bool | `true` | Enable ClearML Serving Statistics |
@@ -90,9 +91,10 @@ Kubernetes: `>= 1.21.0-0`
9091
| clearml_serving_statistics.extraPythonPackages | list | `[]` | Extra Python Packages to be installed in running pods |
9192
| clearml_serving_statistics.image | object | `{"repository":"allegroai/clearml-serving-statistics","tag":"1.3.0"}` | Container Image |
9293
| clearml_serving_statistics.nodeSelector | object | `{}` | Node Selector configuration |
94+
| clearml_serving_statistics.pollFrequencyMinutes | string | `"1.0"` | Default polling frequency for finding new models |
9395
| clearml_serving_statistics.resources | object | `{}` | Pod resources definition |
9496
| clearml_serving_statistics.tolerations | list | `[]` | Tolerations configuration |
95-
| clearml_serving_triton | object | `{"additionalConfigs":{},"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"enabled":true,"existingAdditionalConfigsConfigMap":"","existingAdditionalConfigsSecret":"","extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-triton","tag":"1.3.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving-grpc.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving Triton configurations |
97+
| clearml_serving_triton | object | `{"additionalConfigs":{},"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"enabled":true,"existingAdditionalConfigsConfigMap":"","existingAdditionalConfigsSecret":"","extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-triton","tag":"1.3.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving-grpc.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"metricFrequencyMinutes":"1.0","nodeSelector":{},"pollFrequencyMinutes":"1.0","resources":{},"tolerations":[]}` | ClearML serving Triton configurations |
9698
| clearml_serving_triton.additionalConfigs | object | `{}` | files declared in this parameter will be mounted on internal folder /opt/clearml/config and read by pod (examples in values.yaml) if not overridden by existingAdditionalConfigsSecret |
9799
| clearml_serving_triton.affinity | object | `{}` | Affinity configuration |
98100
| clearml_serving_triton.autoscaling | object | `{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50}` | Autoscaling configuration |
@@ -109,7 +111,9 @@ Kubernetes: `>= 1.21.0-0`
109111
| clearml_serving_triton.ingress.ingressClassName | string | `""` | ClassName (must be defined if no default ingressClassName is available) |
110112
| clearml_serving_triton.ingress.path | string | `"/"` | Ingress root path url |
111113
| clearml_serving_triton.ingress.tlsSecretName | string | `""` | Reference to secret containing TLS certificate. If set, it enables HTTPS on ingress rule. |
114+
| clearml_serving_triton.metricFrequencyMinutes | string | `"1.0"` | Triton metric reporting update frequency in minutes |
112115
| clearml_serving_triton.nodeSelector | object | `{}` | Node Selector configuration |
116+
| clearml_serving_triton.pollFrequencyMinutes | string | `"1.0"` | Triton model update frequency in minutes |
113117
| clearml_serving_triton.resources | object | `{}` | Pod resources definition |
114118
| clearml_serving_triton.tolerations | list | `[]` | Tolerations configuration |
115119
| 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 |

charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ spec:
6565
{{- end }}
6666
{{- end }}
6767
- name: CLEARML_SERVING_POLL_FREQ
68-
value: "1.0"
68+
value: "{{ .Values.clearml_serving_inference.pollFrequencyMinutes }}"
6969
- name: CLEARML_DEFAULT_BASE_SERVE_URL
7070
value: "{{ .Values.clearml.defaultBaseServeUrl }}"
7171
- name: CLEARML_DEFAULT_TRITON_GRPC_ADDR

charts/clearml-serving/templates/clearml-serving-statistics-deployment.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ spec:
6464
value: {{ include "clearmlServing.fullname" . }}-kafka:9092
6565
{{- end }}
6666
- name: CLEARML_SERVING_POLL_FREQ
67-
value: "1.0"
67+
value: "{{ .Values.clearml_serving_statistics.pollFrequencyMinutes }}"
6868
- name: CLEARML_SERVING_TASK_ID
6969
value: "{{ .Values.clearml.servingTaskId }}"
7070
{{- if .Values.clearml_serving_statistics.extraPythonPackages }}

charts/clearml-serving/templates/clearml-serving-triton-deployment.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ spec:
6767
- name: CLEARML_SERVING_TASK_ID
6868
value: "{{ .Values.clearml.servingTaskId }}"
6969
- name: CLEARML_TRITON_POLL_FREQ
70-
value: "1.0"
70+
value: "{{ .Values.clearml_serving_triton.pollFrequencyMinutes }}"
7171
- name: CLEARML_TRITON_METRIC_FREQ
72-
value: "1.0"
72+
value: "{{ .Values.clearml_serving_triton.metricFrequencyMinutes }}"
7373
{{- if .Values.clearml_serving_triton.extraPythonPackages }}
7474
- name: CLEARML_EXTRA_PYTHON_PACKAGES
7575
value: '{{ join " " .Values.clearml_serving_triton.extraPythonPackages }}'

charts/clearml-serving/values.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,8 @@ clearml_serving_statistics:
5353
additionalConfigs: {}
5454
# additionalFile.conf: |
5555
# <filecontent>
56+
# -- Default polling frequency for finding new models
57+
pollFrequencyMinutes: "1.0"
5658

5759
# -- ClearML serving inference configurations
5860
clearml_serving_inference:
@@ -82,6 +84,8 @@ clearml_serving_inference:
8284
additionalConfigs: {}
8385
# additionalFile.conf: |
8486
# <filecontent>
87+
# -- Default polling frequency for finding new models
88+
pollFrequencyMinutes: "1.0"
8589
# -- Autoscaling configuration
8690
autoscaling:
8791
enabled: false
@@ -137,6 +141,10 @@ clearml_serving_triton:
137141
additionalConfigs: {}
138142
# additionalFile.conf: |
139143
# <filecontent>
144+
# -- Triton model update frequency in minutes
145+
pollFrequencyMinutes: "1.0"
146+
# -- Triton metric reporting update frequency in minutes
147+
metricFrequencyMinutes: "1.0"
140148
# -- Autoscaling configuration
141149
autoscaling:
142150
enabled: false

0 commit comments

Comments
 (0)