AKS Capacity Advisor extended with webhook support10 August 2026
A milestone for the V2 Capacity Advisor: real Azure Monitor alerts now flow through a webhook into AKS, get historical context from Table Storage, and come out the other side as LLM-generated, operator-friendly capacity recommendations.
Kubernetes tip 5: Handy scripts I use in AKS28 July 2026
Five handy kubectl one-liners for AKS: pulling build numbers from pod annotations, listing container images in a namespace, and checking CPU/memory requests and limits — plus how to turn any of them into a reusable script.
AKS Capacity advisor27 July 2026
The origin story for the Capacity Advisor: born from real throttling alerts, first shipped as a live ACA demo, now extended to evaluate node fit and cluster headroom on AKS too.
Turning holiday time into a live AI demo!22 July 2026
Building a live Capacity Advisor demo over the holidays: an agent that collects Azure Container Apps metrics and asks a Cloudflare Llama model whether the configured resources are actually sufficient, with a real-time SignalR log stream.
Kubernetes tip 4: Update a Secret from files20 July 2026
A quick Kubernetes tip: updating a file-based TLS Secret cleanly with kubectl's --dry-run=client -o yaml piped into apply, instead of deleting and recreating it by hand.
Kubernetes tip 3: Pinning workloads to specific nodes14 July 2026
Pinning Kubernetes workloads to a specific node pool or VM size using a labeled node and nodeSelector — a small detail that helps with placement, isolation, and cost control.
A Short Break from Studying, a Long List of Ideas5 July 2026
After a seventh Microsoft certification in a row, taking a short break to turn a backlog of practical Kubernetes, debugging, and Linux tips into posts over the coming weeks — with a unit-testing series planned after that.
Kubernetes tip 2: Connectivity troubleshooting19 June 2026
Six ways to troubleshoot pod-to-pod connectivity in Kubernetes when the usual tools are missing: curl, nc, wget, a bash /dev/tcp port check, a raw HTTP request via bash redirection, and a PowerShell/.NET fallback for Windows containers.
Kubernetes tip 1: Specify max pods for the user node pool (AKS)16 June 2026
AKS's default max-pods-per-node (30 for user node pools) is set at node-pool creation time and can't be changed later — why bumping it to 150 up front makes sense on a subnet with plenty of IP headroom.
AZ-400 project: Yesterday I implemented canary deployment2 May 2026
A 60-second canary deployment demo: traffic split at the ingress controller between blue and green environments, plus a sticky-session example, all served over a real HTTPS production URL.
AZ-400 Practice - week 3: Complete Blue/Green + Canary CI/CD on AKS2 May 2026
Week 3 of an AZ-400 side project: a full Terraform + AKS + Traefik pipeline covering infrastructure, blue/green + canary deployment, and teardown — with real execution times for each stage, down to seconds for a blue/green traffic switch.
Building a Professional, Production-Ready Demo Platform with zero Idle Cost27 April 2026
A permanent, always-HTTPS demo domain that costs almost nothing when idle: a Cloudflare Worker + KV serves a static placeholder page, then instantly re-routes to a freshly provisioned AKS backend the moment a new ephemeral demo starts.
YES! Blue-Green deployment working26 April 2026
The first working blue-green deployment on AKS for AZ-400 practice: three pipelines split across infrastructure provisioning, deployment, and Traefik IngressRoute-based promotion between two Git-branch environments.
Another update about my AZ-400 practice project!25 April 2026
Adding a detect-language endpoint to the sentiment API, backed by AI-assisted unit tests (Aider + Qwen) that also run on main, a feature-branch flow set up for blue-green then canary, and a Flask route-ordering gotcha (routes must be defined before the blocking app.run() call).
Quick update on my AZ-400 side project11 April 2026
From sandbox success to a full CI/CD pipeline in a day: Terraform for AKS, Spot nodepools, a clean LLM-adapter pattern, Traefik on ARM64, ConfigMap-driven prompts, and a cross-subscription, bootstrap-plus-main-stage pipeline — all on €45 of remaining credits.
Just deployed a self-hosted sentiment analysis service on AKS using Ollama!10 April 2026
The first working milestone: a self-hosted sentiment-analysis service running in the Whizlabs AKS sandbox — Terraform + PowerShell automation, a multi-container Ollama/LLM-adapter/Flask architecture, and ConfigMap-driven prompts with proper health probes.
Just started a new side project as part of my AZ-400 preparation:5 April 2026
Kicking off a self-hosted LLM sentiment-analysis platform on AKS: a Flask API, an LLM adapter layer, Ollama (phi3:mini) in-cluster, Terraform for IaC, and Traefik ingress via Helm — the plan before any of it exists yet.
If you have http and https ingresses with the same hostname -> Don't use F5 OSS nginx ingress controller!24 February 2026
Update #2 of an AKS ingress migration saga: rolling back from F5's OSS NGINX Ingress after its strict host-collision rules broke same-hostname HTTP+HTTPS routing, with Traefik lined up as the next (hopefully final) attempt.
Do you have custom redirect rules or TCP ports in AKS? -> Don't use AG with AGIC!19 February 2026
Why AGIC (and even the newer AGC) is a bad fit for anything beyond basic HTTP/HTTPS in AKS: it silently wipes any manually-added custom redirect rules, TCP listeners, or non-standard configs during reconciliation, even with an AzureIngressProhibitedTargets CRD in place.
I got this working locally without AKS in like 20 minutes.26 December 2025
Twenty hours to take a SignalR setup that worked locally in 20 minutes and get it running in an AKS cluster behind an OIDC identity provider — CORS, a 401 on the websocket handshake, and long-polling working while raw websockets still didn't.
Chatting with AI to get SignalR implementation working...23 December 2025
A real back-and-forth with an AI chat while designing a SignalR notification path from an internal microservice to a React frontend — and how a direct-push shortcut got walked back to the more secure 'portal backend as SignalR gateway' pattern the plan already had.