Why I Finally Stopped Fighting Kubernetes UIs (and Why You Should Care)
Admin User
Author
Last year, I was debugging a pod crash in production at 11 PM and found myself switching between the Kubernetes Dashboard and kubectl because the Dashboard couldn't show me the full picture across our two clusters. I remember thinking: "This tool was fine when we had one cluster and three microservices. Now we have neither the luxury nor the simplicity for that anymore." That night, I realized the Dashboard wasn't the problem—it was a relic of a simpler time in my Kubernetes journey.
Then I heard the Dashboard was being archived. My first reaction? Relief. But not because the Dashboard was bad. It's because we've fundamentally changed how we operate Kubernetes, and we needed a tool that acknowledged that reality.
The Dashboard Era Is Over (And That's Actually Good)
The Kubernetes Dashboard did what it needed to do: it made Kubernetes less terrifying for people coming from traditional ops backgrounds. It was the gentle introduction we needed in 2015. But I'm writing this from 2024, working in an environment where multi-cluster is standard, GitOps is how we deploy things, and observability means more than just clicking around a UI.
Headlamp isn't just "Dashboard 2.0 with nicer colors." It's built on the premise that Kubernetes teams have evolved. We don't run one cluster anymore. We don't think about resources in isolation. We think about applications, their relationships, their Git sources of truth, and how they behave across environments.
What Actually Matters: The Multi-Cluster Jump
Here's what genuinely changed my perspective: multi-cluster visibility from a single interface. In my day job, we're managing development, staging, and production across AWS and on-premise clusters. With the Dashboard, I'd need to maintain separate instances or context-switch constantly in kubectl. With Headlamp, I can see all of them at once.
This isn't a nice-to-have for us anymore—it's a necessity. Every team I know with more than one cluster has built some custom dashboard or settled on a command-line workflow that frankly feels outdated. Headlamp solving this problem natively is the real win here.
Projects: Thinking in Applications, Not Resources
The "Projects" feature is where I see the philosophical shift most clearly. Instead of navigating resource lists (pods here, services there, configmaps elsewhere), you group related Kubernetes objects around an application. It's semantic instead of structural.
I've been building custom dashboards that do exactly this for clients, and having it built into the tool means less custom code for me to maintain. Namespaces, labels, and RBAC don't change—Headlamp just adds a layer that helps you think in application-shaped chunks rather than Kubernetes-shaped ones.
Plugins: Where Things Get Interesting
The plugin system is what genuinely excites me. I've spent countless hours building internal tooling that bridges Kubernetes with our GitOps (Flux), logging, and CI/CD systems. Having standardized extension points means I can build that logic once and have it live where the operators already are—in the UI they're looking at.
The Flux plugin example is perfect. Instead of having operators flip between "what's in Git" and "what's running," they see both in one place. That reduces cognitive load dramatically.
# Example: You could imagine a plugin that brings your deployment pipeline into Headlamp
apiVersion: headlamp.dev/v1
kind: Plugin
metadata:
name: deployment-pipeline
spec:
resources:
- kind: Deployment
actions:
- name: "View Pipeline"
actionHandler: "openPipeline"
- name: "Trigger Rollback"
actionHandler: "triggerRollback"
My Take: What I'd Do Differently
I'm cautiously optimistic about Headlamp, but I have questions. The flexibility of deployment (in-cluster, desktop, both) is great, but I'm wondering about the operational overhead. In-cluster Headlamp means another service to manage, RBAC to configure, and monitoring to set up. The desktop option feels more like a personal tool.
I'd also want to see more about how it handles RBAC enforcement at the UI layer. Fine-grained permissions matter, and I've seen too many dashboards that show resources users can't actually interact with, which creates confusion.
What's Next
I'm planning to trial Headlamp with our team next quarter. The multi-cluster piece alone justifies the migration effort. My question for you: if you've already moved to Headlamp or something similar, what was your biggest surprise—good or bad? What workflows did you expect to break but didn't?
Source: This post was inspired by "From Kubernetes Dashboard to Headlamp: Understanding the Transition" by Kubernetes Blog. Read the original article