Wondering what to do in your holiday time? I used part of mine to build something I've wanted to ship for a while: a new Advisor Agent demo on my website.
I currently monitor workloads in AKS for throttling and memory usage. When a pod is being throttled heavily or memory usage gets too high, I have to manually decide what the new CPU and memory values should be, and then check whether the resized pod still fits in the current cluster. In the worst case, I need to add an extra node.
That's exactly the kind of problem this demo is meant to help with. It currently runs an assessment against an Azure Container Apps deployment, but I plan to extend it to AKS later. That will make it possible to see whether a deployment still fits on the current nodes, whether resources should be increased, or whether a new node is needed.
Autoscaling is usually the better way to handle this kind of thing, but not every workload can scale cleanly or automatically. Some environments still need capacity checks, especially when you're dealing with fixed limits, node pressure, or workloads that don't respond well to rapid scaling.
When you press the assessment button, the agent collects the current metrics and sends them to a Cloudflare Llama model for guidance on whether the configured resources are sufficient.
The demo includes:
- Starting a simulation from the browser.
- Real-time progress and event logging.
- Starting a real-time advisory assessment based on live collected metrics.
- A SignalR-powered log stream.
Under the hood, it's built as two separate Azure Container Apps applications (advisor and simulator) and deployed automatically via GitHub workflow.
You can check it out here: capacity-advisor-demo.koorevaar.com
Still iterating on it, but I prefer having a real working demo online instead of just describing the idea.