Hi everyone! I'm currently managing a Kubernetes cluster that serves multiple users and environments. We typically scale down our non-essential jobs (like TEST/QA) after work hours, specifically from 08:00 to 19:00, using Cluster Autoscaler and cronjobs. However, sometimes our team members or testers need to quickly activate certain areas or applications, and many of them aren't very tech-savvy.
What I'm looking for is a user-friendly web page where users could do the following:
- Check the current status of specific apps (whether they are ON or OFF)
- Have a button to "Turn ON" or "Turn OFF" an application, effectively scaling it from 0 to 1.
I thought about creating something similar to Kube-green or nightshift but with a more intuitive interface. Before diving into building it with Flask or Node.js and Kubernetes client tools, I wanted to know:
- Are there any open-source tools already available that fit this description?
- Has anyone else tackled a similar project and can share insights?
5 Answers
It sounds like you're trying to solve multiple issues at once, and you might have a tough time finding a pre-built solution that meets all your needs without some customization. The Kubernetes Web UI has a lot of features you could use, but you'll need to implement an authentication strategy so that non-technical team members can only edit their specific applications.
Consider using NiceGUI along with the Python Kubernetes module. It provides a good starting framework, and if you're familiar with Python, it's pretty straightforward to work with.
Argo CD can pretty much handle what you're looking for if configured properly. It's user-friendly and can help with scaling applications.
You might want to get your team comfortable with YAML files. Give them access to a shared Git repository, so they can edit the necessary fields (like replicas) through a web interface. Then, a CI/CD tool like Argo CD or Flux CD can sync those changes to your cluster.
Using a chat interface might also be a good idea! Consider setting up a bot in Google Chat or Slack, where users can just type commands like '@scalebot enable area-1 12h' to control the applications.
Related Questions
Remove Duplicate Items From List
EAN Validator
EAN Generator
Cloudflare Cache Detector
HTTP Status Code Check
Online PDF Editor