snellius

Read-only UI for kgateway

See the whole picture.

Snellius shows whether each kgateway install is healthy, why a route is or isn't attached, and what every Gateway manages. It installs with one Helm chart and only reads your cluster.

The Snellius health overview for a kgateway install, with problems ranked by severity

How it works

Four observations, one answer

Like its namesake's triangulation, Snellius takes readings from several points and works out where things stand. It reads the cluster through the Kubernetes API and never changes it.

  • Resource status

    The conditions kgateway writes on Gateways, routes and policies.

  • Computed attachment

    What Gateway API rules say should attach, checked against that status.

  • Controller metrics

    Config the proxies rejected, and what the controller built for each Gateway.

  • Proxy and pod signals

    Readiness, restarts, Warning Events and proxy stats.

One picture

A health state per install

Problems ranked by severity, each with a stable finding code, the evidence behind it and how to fix it.

Health overview

Know what's wrong first

Each install gets one health state. Problems are ranked by severity, and each carries a stable finding code, its evidence and how to fix it.

Read the guide
The Snellius health overview listing problems by severity, each with a KGWUI finding code

Attachment

See why a route isn't attached

Snellius works out which listeners should accept a route, and how delegation resolves. It shows that next to the controller's status, and says when the two disagree.

Read the guide
A route parent card: Accepted is False, and the computed outcome explains that no listener allows this route

Explorer

Every Gateway, listener and route

Browse Gateways, ListenerSets and routes. Check listeners, proxies, conditions and what the controller built, and filter routes by status and reason.

Read the guide
A Gateway page: its proxy, and three listeners whose attached route counts agree with the computed counts

Read-only by design

Only get, list and watch

The ClusterRole grants read verbs only. Snellius never changes your cluster.

Never reads Secrets

Secrets, ConfigMaps and the proxy and port-forward subresources stay out of its RBAC.

Private by default

There is no login yet. The chart creates a ClusterIP Service only, and you open the UI with a port-forward. Read the trust model.

Install

Running in two commands

Tested with kgateway 2.3, 2.4 and 2.5. You need Helm, kubectl and a cluster that runs kgateway.

Quick start
# Install the chart, then open http://localhost:8080
helm install ui oci://ghcr.io/duncandoyle/charts/snellius \
  -n snellius --create-namespacekubectl -n snellius port-forward svc/ui-snellius 8080:80