Skip to content

kubecloudscaler/kubecloudscaler

Repository files navigation

Release Status Documentation Status Apache 2.0 License GoLang

Cloudscaler

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.

Getting Started

Installation via Helm

  1. Install the Chart

    helm install cloudscaler oci://ghcr.io/kubecloudscaler/kubecloudscaler/kubecloudscaler --namespace cloudscaler-system
  2. 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"
  3. Apply the Configuration

    kubectl apply -f <scaler-CR-file.yaml>

Documentation

Full documentation is available here.

License

Licensed under the Apache License, Version 2.0. See LICENSE for details.

Packages

 
 
 

Contributors 3

  •  
  •  
  •  

Languages