TL;DR

Radar là Kubernetes dashboard mới của Skyhook (YC W23), vừa mở mã nguồn dưới Apache 2.0. Một binary Go duy nhất ~30MB, đã nhúng sẵn React frontend qua go:embed — không Electron, không agent, không CRD, không tài khoản cloud, chạy được cả trong môi trường airgapped.

Cài 15 giây, mở sẵn dashboard trong browser, dùng kubeconfig hiện tại của bạn. Topology DAG có cấu trúc, timeline event real-time, Helm + GitOps (Argo CD & FluxCD), traffic flow qua Hubble/Caretta, image filesystem viewer, và một MCP server beta cho AI assistants. Update truyền qua SharedInformers → Watch API → SSE — không polling, độ trễ tính bằng millisecond.

Radar Home dashboard với topology, Helm, timeline, traffic

What's new

Skyhook có một tool nội bộ để debug cluster của chính họ. Khách hàng cứ hỏi xin, nên team carve-out và open-source nó. Đó là github.com/skyhook-io/radar — hiện 1.3k sao, 97 release, version mới nhất v1.5.4.

Cài bằng một dòng:

curl -fsSL skyhook.io/get-radar.sh | bash && kubectl radar

Hoặc Homebrew:

brew install skyhook-io/tap/radar && kubectl radar

Mặc định nó listen ở port 9280, tự mở browser. Với team muốn share, có Helm chart deploy in-cluster, RBAC scoped theo SelfSubjectAccessReview.

Why it matters

Không gian Kubernetes dashboard đang khá tệ:

  • Lens bị Mirantis mua 2020, đóng mã nguồn một phần từ tháng 1/2024, bắt buộc đăng nhập, performance đi xuống — user trên forum mô tả "clunky and slow" ngay cả trên máy 32 cores 128GB RAM.
  • k9s thì nhanh nhưng terminal-only, không có topology, learning curve cao.
  • Kubernetes Dashboard chính thức đã archive. Headlamp kế thừa nhưng thiếu event timeline, Helm management, traffic visualization, GitOps thì xem như afterthought.
  • Weave Scope chết theo Weaveworks năm 2024.
  • Komodor / Cast AI tính phí per-node và bắt sync metadata lên cloud — không khả thi cho ngành tài chính, y tế, quốc phòng.

Radar lấp đúng khoảng trống đó: nhanh như k9s, có UI như Lens, không cloud login như Weave Scope đã từng — nhưng không bị bỏ rơi.

Technical facts

Radar Topology View — structured DAG layout của resources Kubernetes

Vài con số đáng nhớ:

PropertyGiá trị
Binary size~30 MB (Go + React embedded via go:embed)
Install → live dashboard15 giây (HN creator tự time)
Default port9280
BackendGo 1.26+, client-go, chi router, gorilla/websocket, Helm Go SDK, SQLite
FrontendReact 19, TypeScript, Vite, Tailwind v4, shadcn/ui, @xyflow/react + ELK.js, Monaco, xterm.js
Real-timeSharedInformers + Watch API + SSE Broadcaster
Topology layoutStructured DAG (ELK.js), không phải force-directed physics
Timeline defaultIn-memory, history-limit 10,000 events; optional SQLite
Cluster Audit31 checks (security / reliability / efficiency, theo NSA/CISA + CIS)
Pod terminalWebSocket, cùng protocol với kubectl exec
LicenseApache 2.0, free forever

Cách real-time hoạt động: khi start, Radar gọi một LIST per resource type để build cache, sau đó switch sang Watch API. API server push delta (add/update/delete) qua kết nối persistent. Informer callback fire → update in-memory cache → SSE Broadcaster đẩy về tất cả browser đang connect. Pod crash, UI render trong vài chục ms — không refresh tay, không polling. Tải API server cũng nhẹ vì watch stream rẻ hơn nhiều so với list liên tục.

Memory được tối ưu bằng cách strip managedFields và metadata nặng khác trước khi cache. Với CRD và resource động, dynamic informer auto-discover API group lúc startup — Argo Rollouts, Istio VirtualService, custom CRD đều hiện ra mà không cần plugin.

Comparison

ToolStatusHạn chế chính so với Radar
LensMirantis, đóng mã 1/2024Bắt login, chậm, có paid tier
k9sActive, terminal-onlyKhông có topology, learning curve cao
HeadlampActive (CNCF)Thiếu timeline, Helm, traffic; GitOps qua JS plugin
Weave ScopeChết 2024Project bỏ hoang
Komodor / Cast AICommercialPer-node pricing, bắt cloud sync

Khác biệt lớn nhất: Radar gói topology DAG có cấu trúc + timeline + Helm + GitOps + traffic + image filesystem viewer + 31-check audit + MCP server cho AI — tất cả trong một binary 30MB chạy local.

Use cases

Radar Traffic View — animated flow giữa các service qua Hubble hoặc Caretta

  • Ngành regulated (finance, healthcare, defense): airgapped-ready, không telemetry, không gửi metadata cluster ra ngoài — đáp ứng compliance kiểu mặc định.
  • Debug incident lúc 2h sáng: resource có vấn đề tự light up vàng/đỏ trên topology; SSE đảm bảo bạn thấy state hiện tại, không phải state lúc bấm refresh.
  • Onboard team mới hoặc cluster lạ: graph trực quan dễ hơn nhớ :po :deploy :svc trong k9s.
  • AI-assisted ops: MCP server (beta) feed cho Claude / Cursor / Copilot dữ liệu pre-processed, token-optimized — topology graph, health assessment, deduplicated event, filtered log — thay vì YAML thô đốt context.
  • Helm + GitOps shop: inspect / upgrade / rollback Helm release từ UI; Argo CD Application và Flux Kustomization / HelmRelease hiện sync status, có nút reconcile.
  • Debug image: browse filesystem container image (Docker Hub, Quay, GHCR, GCR, ECR, ACR) ngay trong Pod view — không cần pull image về máy hay kubectl exec.

Limitations & pricing

Bản OSS có một số trần rõ ràng:

  • Single cluster context tại một thời điểm — switch context được, nhưng không có aggregated multi-cluster view.
  • Timeline mặc định in-memory, cap 10,000 event. Bật --timeline-storage sqlite sẽ persist qua restart, nhưng không có retention nhiều tuần hay time-travel query.
  • GitOps topology edge chỉ render khi controller (Flux/Argo) và workload nó manage cùng nằm trong một cluster.
  • MCP server còn ở trạng thái beta.

Pricing: Apache 2.0, free forever. Đội nào cần multi-cluster aggregated, SSO, retention dài hạn thì có Radar Cloud (sản phẩm trả phí riêng, build trên cùng OSS core).

What's next

Radar khởi sinh từ tool internal của Skyhook, được công bố tháng 1/2026. Tính tới thời điểm viết bài, repo có 1.3k sao, 19 contributor, 97 release — nhịp ship dày đặc (v1.5.4 mới đẩy ra cách đây vài giờ). Roadmap chính thức chưa publish, nhưng MCP server đang dần ra khỏi beta, các integration CRD / GitOps / cost insight (qua OpenCost) tiếp tục được mở rộng.

Nếu bạn đang quay lưng với Lens, hoặc đã quá quen kubectl describe mà vẫn muốn một góc nhìn graphical sạch sẽ, đây là một trong những lựa chọn local-first hiếm hoi còn sống.

Nguồn: github.com/skyhook-io/radar, skyhook.io/blog, Show HN.