Git Product home page Git Product logo

kidle's Introduction

kidle

snapshot

Kidle is a kubernetes idling feature to automatically idle or wakeup workloads.

Main features:

  • idle and wakeup Deployments, StatefulSets and CronJobs
  • idle and wakeup at specified time
  • shutdown after some idle time
  • automatic wakeup on call
  • fancy UI

Demo

asciicast

Demo commands:

# let's create a deployment
kubectl create deploy --image=stefanprodan/podinfo podinfo

# create an IdlingResource for that deployment
bat 01-manual-idlingresource.yaml
kubectl apply -f 01-manual-idlingresource.yaml

# display kidle status
kubectl get idlingresources

# idle manually the deployment then watch the result
kubectl edit ir/podinfo
kubectl get ir,deploy

# use kidlectl to idle or wakeup more easily
kidlectl wakeup podinfo
kubectl get ir,deploy
 

Deployment

You can deploy kidle using the deploy target. It expects a cluster-admin role and creates a kidle-system namespace. You can select the release you want by setting the TAG= as an environment variable.

$ TAG=main make deploy
$ kubectl get deploy -n kidle-system
NAME                       READY   UP-TO-DATE   AVAILABLE   AGE
kidle-controller-manager   1/1     1            1           13d

To uninstall:

make undeploy

If you want to see the kubernetes manifests before applying:

make deploy-view

Documentation

Here is a user guide.

Docker

The operator builds are published to docker.

Following tags are maintained:

  • vx.y.z: Images that are build from the tagged versions within Github. Always unique.
  • vx.y: Represents latest .z revision.
  • vx: Represents latest .y.z revision.
docker pull kidledev/kidle-operator:<tag>

Contact

You can find me on the kidle-dev slack

kidle's People

Contributors

orphaner avatar animeshz avatar thusal06 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.