feat: add py-kube-downscaler to addons module

This commit is contained in:
Stefan Reimer 2024-11-13 18:19:14 +00:00
parent 3bc23504d2
commit b6a54468f4
4 changed files with 53 additions and 8 deletions

View File

@ -2,7 +2,7 @@ apiVersion: v2
name: kubezero-addons name: kubezero-addons
description: KubeZero umbrella chart for various optional cluster addons description: KubeZero umbrella chart for various optional cluster addons
type: application type: application
version: 0.8.10 version: 0.8.11
appVersion: v1.30 appVersion: v1.30
home: https://kubezero.com home: https://kubezero.com
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
@ -15,6 +15,7 @@ keywords:
- sealed-secrets - sealed-secrets
- external-dns - external-dns
- aws-node-termination-handler - aws-node-termination-handler
- py-kube-downscaler
maintainers: maintainers:
- name: Stefan Reimer - name: Stefan Reimer
email: stefan@zero-downtime.net email: stefan@zero-downtime.net
@ -44,4 +45,8 @@ dependencies:
version: 1.5.0 version: 1.5.0
repository: https://twin.github.io/helm-charts repository: https://twin.github.io/helm-charts
condition: aws-eks-asg-rolling-update-handler.enabled condition: aws-eks-asg-rolling-update-handler.enabled
- name: py-kube-downscaler
version: 0.2.11
repository: https://caas-team.github.io/helm-charts/
condition: py-kube-downscaler.enabled
kubeVersion: ">= 1.26.0" kubeVersion: ">= 1.26.0"

View File

@ -1,6 +1,6 @@
# kubezero-addons # kubezero-addons
![Version: 0.8.10](https://img.shields.io/badge/Version-0.8.10-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.30](https://img.shields.io/badge/AppVersion-v1.30-informational?style=flat-square) ![Version: 0.8.11](https://img.shields.io/badge/Version-0.8.11-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.30](https://img.shields.io/badge/AppVersion-v1.30-informational?style=flat-square)
KubeZero umbrella chart for various optional cluster addons KubeZero umbrella chart for various optional cluster addons
@ -19,6 +19,7 @@ Kubernetes: `>= 1.26.0`
| Repository | Name | Version | | Repository | Name | Version |
|------------|------|---------| |------------|------|---------|
| https://bitnami-labs.github.io/sealed-secrets | sealed-secrets | 2.16.2 | | https://bitnami-labs.github.io/sealed-secrets | sealed-secrets | 2.16.2 |
| https://caas-team.github.io/helm-charts/ | py-kube-downscaler | 0.2.11 |
| https://kubernetes-sigs.github.io/external-dns/ | external-dns | 1.15.0 | | https://kubernetes-sigs.github.io/external-dns/ | external-dns | 1.15.0 |
| https://kubernetes.github.io/autoscaler | cluster-autoscaler | 9.43.2 | | https://kubernetes.github.io/autoscaler | cluster-autoscaler | 9.43.2 |
| https://nvidia.github.io/k8s-device-plugin | nvidia-device-plugin | 0.17.0 | | https://nvidia.github.io/k8s-device-plugin | nvidia-device-plugin | 0.17.0 |
@ -156,7 +157,10 @@ Device plugin for [AWS Neuron](https://aws.amazon.com/machine-learning/neuron/)
| nvidia-device-plugin.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].values[7] | string | `"g5.48xlarge"` | | | nvidia-device-plugin.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].values[7] | string | `"g5.48xlarge"` | |
| nvidia-device-plugin.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].values[8] | string | `"g4dn.xlarge"` | | | nvidia-device-plugin.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].values[8] | string | `"g4dn.xlarge"` | |
| nvidia-device-plugin.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].values[9] | string | `"g4dn.2xlarge"` | | | nvidia-device-plugin.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].values[9] | string | `"g4dn.2xlarge"` | |
| nvidia-device-plugin.cdi.nvidiaHookPath | string | `"/usr/bin"` | |
| nvidia-device-plugin.deviceDiscoveryStrategy | string | `"nvml"` | |
| nvidia-device-plugin.enabled | bool | `false` | | | nvidia-device-plugin.enabled | bool | `false` | |
| nvidia-device-plugin.runtimeClassName | string | `"nvidia"` | |
| nvidia-device-plugin.tolerations[0].effect | string | `"NoSchedule"` | | | nvidia-device-plugin.tolerations[0].effect | string | `"NoSchedule"` | |
| nvidia-device-plugin.tolerations[0].key | string | `"nvidia.com/gpu"` | | | nvidia-device-plugin.tolerations[0].key | string | `"nvidia.com/gpu"` | |
| nvidia-device-plugin.tolerations[0].operator | string | `"Exists"` | | | nvidia-device-plugin.tolerations[0].operator | string | `"Exists"` | |

View File

@ -276,3 +276,33 @@ external-dns:
#- istio-gateway #- istio-gateway
provider: inmemory provider: inmemory
py-kube-downscaler:
enabled: false
tolerations:
- key: node-role.kubernetes.io/control-plane
effect: NoSchedule
nodeSelector:
node-role.kubernetes.io/control-plane: ""
resources:
limits:
cpu: null
memory: 512Mi
requests:
cpu: 10m
memory: 64Mi
# By default no NOT scale down KubeZero modules
excludedNamespaces:
- kube-system
- operators
- monitoring
- logging
- telemetry
- istio-system
- istio-ingress
- cert-manager
- argocd

View File

@ -109,11 +109,6 @@ fuseDevicePlugin:
{{- toYaml . | nindent 2 }} {{- toYaml . | nindent 2 }}
{{- end }} {{- end }}
{{- with .Values.addons.awsNeuron }}
awsNeuron:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- with index .Values "addons" "nvidia-device-plugin" }} {{- with index .Values "addons" "nvidia-device-plugin" }}
nvidia-device-plugin: nvidia-device-plugin:
{{- toYaml . | nindent 2 }} {{- toYaml . | nindent 2 }}
@ -130,8 +125,13 @@ sealed-secrets:
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- if .Values.global.aws.region }} {{- with index .Values "addons" "py-kube-downscaler" }}
py-kube-downscaler:
{{- toYaml . | nindent 2 }}
{{- end }}
# AWS only # AWS only
{{- if eq .Values.global.platform "aws" }}
aws-node-termination-handler: aws-node-termination-handler:
enabled: {{ default "true" (index .Values "addons" "aws-node-termination-handler" "enabled") }} enabled: {{ default "true" (index .Values "addons" "aws-node-termination-handler" "enabled") }}
@ -181,6 +181,12 @@ aws-eks-asg-rolling-update-handler:
value: "/var/run/secrets/sts.amazonaws.com/serviceaccount/token" value: "/var/run/secrets/sts.amazonaws.com/serviceaccount/token"
- name: AWS_STS_REGIONAL_ENDPOINTS - name: AWS_STS_REGIONAL_ENDPOINTS
value: "regional" value: "regional"
{{- with .Values.addons.awsNeuron }}
awsNeuron:
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end }} {{- end }}
{{- end }} {{- end }}