Cloudscaler is a Kubernetes operator that scales cloud resources up or down using custom CRDs. It supports Kubernetes resources like deployments and cron jobs and aims to extend support to cloud resources like Compute Engine and Cloud SQL on GCP.
This project is inspired by kube-downscaler.
-
Install the Chart
helm install cloudscaler oci://ghcr.io/kubecloudscaler/kubecloudscaler/kubecloudscaler --namespace cloudscaler-system
-
Create a Scaler Custom Resource (CR)
# Example: Downscales all deployments (excluding kube-system) to 0 from 19:00 to 21:00 (Paris time) daily. apiVersion: kubecloudscaler/v1alpha1 kind: K8s metadata: name: k8s-sample spec: periods: - time: recurring: true days: - all startTime: "19:00" endTime: "21:00" timezone: "Europe/Paris" minReplicas: 0 maxReplicas: 10 type: "down"
-
Apply the Configuration
kubectl apply -f <scaler-CR-file.yaml>
Full documentation is available here.
Licensed under the Apache License, Version 2.0. See LICENSE for details.