From 2b0e245f72b96bcdf6c3f8523ce762a625dd89ef Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Thu, 24 Oct 2024 04:42:28 +0200 Subject: [PATCH 01/10] Create job quota for DataChain jobs --- .../studio/templates/jobquota-datachain-worker.yaml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 charts/studio/templates/jobquota-datachain-worker.yaml diff --git a/charts/studio/templates/jobquota-datachain-worker.yaml b/charts/studio/templates/jobquota-datachain-worker.yaml new file mode 100644 index 00000000..ab711284 --- /dev/null +++ b/charts/studio/templates/jobquota-datachain-worker.yaml @@ -0,0 +1,11 @@ +{{- with (.Values.studioDatachainWorker).jobQuota -}} +apiVersion: v1 +kind: ResourceQuota +metadata: + name: studio-datachain-worker-job-quota + labels: + {{- include "studio-datachain-worker.labels" . | nindent 4 }} +spec: + hard: + count/jobs.batch: {{ . }} +{{- end }} From 141bb23f0da125b2e638908551fb160371f2e04d Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Thu, 24 Oct 2024 04:44:05 +0200 Subject: [PATCH 02/10] Update values.yaml --- charts/studio/values.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/charts/studio/values.yaml b/charts/studio/values.yaml index 7a3c8b9a..00fc00cf 100644 --- a/charts/studio/values.yaml +++ b/charts/studio/values.yaml @@ -684,6 +684,9 @@ studioDatachainWorker: # -- DataChain worker log level logLevel: "info" + # -- DataChain worker job quota + jobQuota: 20 + # -- DataChain worker resources configuration resources: # -- DataChain worker requests configuration From 594374386ad3a1cbddc6470566c70e7c7ccdd573 Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Wed, 6 Nov 2024 19:57:53 +0100 Subject: [PATCH 03/10] Update values.yaml --- charts/studio/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/studio/values.yaml b/charts/studio/values.yaml index 00fc00cf..08f7bd8e 100644 --- a/charts/studio/values.yaml +++ b/charts/studio/values.yaml @@ -685,7 +685,7 @@ studioDatachainWorker: logLevel: "info" # -- DataChain worker job quota - jobQuota: 20 + jobQuota: 10 # -- DataChain worker resources configuration resources: From 57b308c50d168933d28be74c32d9b92c5e2af382 Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Thu, 14 Nov 2024 22:48:45 +0100 Subject: [PATCH 04/10] Update Chart.yaml --- charts/studio/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/studio/Chart.yaml b/charts/studio/Chart.yaml index 94d062aa..e4d0ee3c 100644 --- a/charts/studio/Chart.yaml +++ b/charts/studio/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: studio description: A Helm chart for Kubernetes type: application -version: 0.16.49 +version: 0.16.50 appVersion: "v2.146.1" maintainers: - name: iterative From a4640f5c1728a90c129e8b1224ab3b16f51f62cf Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Thu, 14 Nov 2024 22:49:08 +0100 Subject: [PATCH 05/10] Update README.md --- charts/studio/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/studio/README.md b/charts/studio/README.md index 4642cafa..cb03d024 100644 --- a/charts/studio/README.md +++ b/charts/studio/README.md @@ -1,6 +1,6 @@ # studio -![Version: 0.16.49](https://img.shields.io/badge/Version-0.16.49-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v2.146.1](https://img.shields.io/badge/AppVersion-v2.146.1-informational?style=flat-square) +![Version: 0.16.50](https://img.shields.io/badge/Version-0.16.50-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v2.146.1](https://img.shields.io/badge/AppVersion-v2.146.1-informational?style=flat-square) A Helm chart for Kubernetes From 9051efe50a7f25637bf798f6625f2f65be73a4d9 Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Fri, 15 Nov 2024 13:48:40 +0100 Subject: [PATCH 06/10] Update jobquota-datachain-worker.yaml --- charts/studio/templates/jobquota-datachain-worker.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/studio/templates/jobquota-datachain-worker.yaml b/charts/studio/templates/jobquota-datachain-worker.yaml index ab711284..af3a1312 100644 --- a/charts/studio/templates/jobquota-datachain-worker.yaml +++ b/charts/studio/templates/jobquota-datachain-worker.yaml @@ -1,4 +1,4 @@ -{{- with (.Values.studioDatachainWorker).jobQuota -}} +{{- if (.Values.studioDatachainWorker).jobQuota -}} apiVersion: v1 kind: ResourceQuota metadata: @@ -7,5 +7,5 @@ metadata: {{- include "studio-datachain-worker.labels" . | nindent 4 }} spec: hard: - count/jobs.batch: {{ . }} + count/jobs.batch: {{ .Values.studioDatachainWorker.jobQuota }} {{- end }} From 99123c462be32db68e085539f35ad057634a8824 Mon Sep 17 00:00:00 2001 From: 0x2b3bfa0 <0x2b3bfa0@users.noreply.github.com> Date: Wed, 27 Nov 2024 22:48:10 +0000 Subject: [PATCH 07/10] Helm-Docs update --- charts/studio/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/charts/studio/README.md b/charts/studio/README.md index af9b2e1b..f1306bb4 100644 --- a/charts/studio/README.md +++ b/charts/studio/README.md @@ -139,7 +139,7 @@ A Helm chart for Kubernetes | studioBlobvault.image | object | `{"repository":"nginx","tag":"1.27.0-alpine"}` | Image to use for the blobvault service | | studioBlobvault.image.repository | string | `"nginx"` | Image repository | | studioBlobvault.image.tag | string | `"1.27.0-alpine"` | Image tag | -| studioDatachainWorker | object | `{"affinity":{},"autoscaling":{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":5,"minReplicas":1,"targetCPUUtilizationPercentage":80,"template":[]},"envFromSecret":"","envVars":{},"ephemeralStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker","storageClass":""},"size":"20Gi","type":"ephemeral"},"image":{"pullPolicy":"IfNotPresent","repository":"docker.iterative.ai/studio-datachain-worker"},"localStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker-local","storageClass":""},"size":"50Gi","type":"ephemeral"},"logLevel":"info","nodeSelector":{},"podAnnotations":{},"podSecurityContext":{},"replicaCount":1,"resources":{"limits":{"ephemeral-storage":"20Gi","memory":"16Gi"},"requests":{"cpu":"1000m","ephemeral-storage":"10Gi","memory":"3Gi"}},"securityContext":{},"service":{"port":80,"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":false,"name":""},"strategy":{"rollingUpdate":{"maxSurge":"25%","maxUnavailable":0}},"terminationGracePeriodSeconds":180,"tolerations":[]}` | Studio DataChain Worker settings group | +| studioDatachainWorker | object | `{"affinity":{},"autoscaling":{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":5,"minReplicas":1,"targetCPUUtilizationPercentage":80,"template":[]},"envFromSecret":"","envVars":{},"ephemeralStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker","storageClass":""},"size":"20Gi","type":"ephemeral"},"image":{"pullPolicy":"IfNotPresent","repository":"docker.iterative.ai/studio-datachain-worker"},"jobQuota":10,"localStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker-local","storageClass":""},"size":"50Gi","type":"ephemeral"},"logLevel":"info","nodeSelector":{},"podAnnotations":{},"podSecurityContext":{},"replicaCount":1,"resources":{"limits":{"ephemeral-storage":"20Gi","memory":"16Gi"},"requests":{"cpu":"1000m","ephemeral-storage":"10Gi","memory":"3Gi"}},"securityContext":{},"service":{"port":80,"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":false,"name":""},"strategy":{"rollingUpdate":{"maxSurge":"25%","maxUnavailable":0}},"terminationGracePeriodSeconds":180,"tolerations":[]}` | Studio DataChain Worker settings group | | studioDatachainWorker.affinity | object | `{}` | DataChain worker pod affinity configuration | | studioDatachainWorker.autoscaling | object | `{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":5,"minReplicas":1,"targetCPUUtilizationPercentage":80,"template":[]}` | DataChain worker autoscaling configuration | | studioDatachainWorker.autoscaling.annotations | object | `{}` | Worker autoscaling annotation | @@ -160,6 +160,7 @@ A Helm chart for Kubernetes | studioDatachainWorker.image | object | `{"pullPolicy":"IfNotPresent","repository":"docker.iterative.ai/studio-datachain-worker"}` | DataChain worker image settings | | studioDatachainWorker.image.pullPolicy | string | `"IfNotPresent"` | DataChain worker image pull policy | | studioDatachainWorker.image.repository | string | `"docker.iterative.ai/studio-datachain-worker"` | DataChain worker image repository | +| studioDatachainWorker.jobQuota | int | `10` | DataChain worker job quota | | studioDatachainWorker.localStorage | object | `{"persistentVolumeClaim":{"claimName":"datachain-worker-local","storageClass":""},"size":"50Gi","type":"ephemeral"}` | Local storage configuration (used for storing DataChain virtual environments) | | studioDatachainWorker.localStorage.persistentVolumeClaim | object | `{"claimName":"datachain-worker-local","storageClass":""}` | Persistent Volume Claim configuration for local storage | | studioDatachainWorker.localStorage.persistentVolumeClaim.claimName | string | `"datachain-worker-local"` | Persistent Volume Claim name, to mount externally managed PVC (`localStorage.type` has to be set to `pvc`) | From 2b292a40abda2984b1b098f4c9adddf91caf1442 Mon Sep 17 00:00:00 2001 From: Helio Machado <0x2b3bfa0+git@googlemail.com> Date: Thu, 28 Nov 2024 00:19:41 +0100 Subject: [PATCH 08/10] Update Chart.yaml --- charts/studio/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/studio/Chart.yaml b/charts/studio/Chart.yaml index 3fe02927..c721c76a 100644 --- a/charts/studio/Chart.yaml +++ b/charts/studio/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: studio description: A Helm chart for Kubernetes type: application -version: 0.16.56 +version: 0.16.58 appVersion: "v2.148.3" maintainers: - name: iterative From 720233191314d7f12a528d2a6bfa5aaed02b6a7b Mon Sep 17 00:00:00 2001 From: 0x2b3bfa0 <0x2b3bfa0@users.noreply.github.com> Date: Wed, 27 Nov 2024 23:19:59 +0000 Subject: [PATCH 09/10] Helm-Docs update --- charts/studio/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/studio/README.md b/charts/studio/README.md index 1f9c414b..86fb5fdc 100644 --- a/charts/studio/README.md +++ b/charts/studio/README.md @@ -1,6 +1,6 @@ # studio -![Version: 0.16.56](https://img.shields.io/badge/Version-0.16.56-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v2.148.3](https://img.shields.io/badge/AppVersion-v2.148.3-informational?style=flat-square) +![Version: 0.16.58](https://img.shields.io/badge/Version-0.16.58-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v2.148.3](https://img.shields.io/badge/AppVersion-v2.148.3-informational?style=flat-square) A Helm chart for Kubernetes From bcd01b87141dec4dd5700b14b1e0e4122adabd6b Mon Sep 17 00:00:00 2001 From: 0x2b3bfa0 <0x2b3bfa0@users.noreply.github.com> Date: Wed, 27 Nov 2024 23:35:58 +0000 Subject: [PATCH 10/10] Helm-Docs update --- charts/studio/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/studio/README.md b/charts/studio/README.md index 86fb5fdc..3e8d43da 100644 --- a/charts/studio/README.md +++ b/charts/studio/README.md @@ -139,7 +139,7 @@ A Helm chart for Kubernetes | studioBlobvault.image | object | `{"repository":"nginx","tag":"1.27.0-alpine"}` | Image to use for the blobvault service | | studioBlobvault.image.repository | string | `"nginx"` | Image repository | | studioBlobvault.image.tag | string | `"1.27.0-alpine"` | Image tag | -| studioDatachainWorker | object | `{"affinity":{},"autoscaling":{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":5,"minReplicas":1,"targetCPUUtilizationPercentage":80,"template":[]},"envFromSecret":"","envVars":{},"ephemeralStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker","storageClass":""},"size":"20Gi","type":"ephemeral"},"image":{"pullPolicy":"IfNotPresent","repository":"docker.iterative.ai/studio-datachain-worker"},"jobQuota":10,"localStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker-local","storageClass":""},"size":"50Gi","type":"ephemeral"},"logLevel":"info","nodeSelector":{},"podAnnotations":{},"podSecurityContext":{},"replicaCount":1,"resources":{"limits":{"ephemeral-storage":"20Gi","memory":"16Gi"},"requests":{"cpu":"1000m","ephemeral-storage":"10Gi","memory":"3Gi"}},"securityContext":{},"service":{"port":80,"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":false,"name":""},"strategy":{"rollingUpdate":{"maxSurge":"25%","maxUnavailable":0}},"terminationGracePeriodSeconds":180,"tolerations":[]}` | Studio DataChain Worker settings group | +| studioDatachainWorker | object | `{"affinity":{},"autoscaling":{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":5,"minReplicas":1,"targetCPUUtilizationPercentage":80,"template":[]},"envFromSecret":"","envVars":{},"ephemeralStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker","storageClass":""},"size":"20Gi","type":"ephemeral"},"image":{"pullPolicy":"IfNotPresent","repository":"docker.iterative.ai/studio-datachain-worker"},"jobQuota":10,"localStorage":{"persistentVolumeClaim":{"claimName":"datachain-worker-local","storageClass":""},"size":"50Gi","type":"ephemeral"},"logLevel":"info","nodeSelector":{},"podAnnotations":{},"podSecurityContext":{},"replicaCount":1,"resources":{"limits":{"ephemeral-storage":"20Gi","memory":"16Gi"},"requests":{"cpu":"1000m","ephemeral-storage":"10Gi","memory":"3Gi"}},"securityContext":{},"serviceAccount":{"annotations":{},"create":false,"name":""},"strategy":{"rollingUpdate":{"maxSurge":"25%","maxUnavailable":0}},"terminationGracePeriodSeconds":180,"tolerations":[]}` | Studio DataChain Worker settings group | | studioDatachainWorker.affinity | object | `{}` | DataChain worker pod affinity configuration | | studioDatachainWorker.autoscaling | object | `{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":5,"minReplicas":1,"targetCPUUtilizationPercentage":80,"template":[]}` | DataChain worker autoscaling configuration | | studioDatachainWorker.autoscaling.annotations | object | `{}` | Worker autoscaling annotation |