/hubble-ui

Observability & Troubleshooting for Kubernetes Services

Primary LanguageTypeScriptApache License 2.0Apache-2.0

Hubble UI

Hubble UI is open source user interface for Cilium Hubble.

Installation

Hubble UI is installed as part of hubble, please see Hubble Getting Started Guide for details.

Why Hubble UI?

Troubleshooting microservices application connectivity is a challenging task. Simply looking at "kubectl get pods" does not indicate dependencies between each service or external APIs or databases.

Hubble UI enables zero-effort automatic discovery of the service dependency graph for Kubernetes Clusters at L3/L4 and even L7, allowing user-friendly visualization and filtering of those dataflows as a Service Map.

See Hubble Getting Started Guide for details.

Service Map

Development

Backend

If you want to point frontend to backend deployed into minikube, then just do next port forward: kubectl port-forward -n kube-system deployment/hubble-ui 8081.

Otherwise, if you want to change something in Go backend there are additional steps:

  1. Go to backend directory cd ./backend, execute ./ctl.sh run, wait build and server running
  2. In another terminal go to server directory with envoy config cd ./server and execute envoy -c ./envoy.yaml (envoy must be installed)
  3. In another terminal do port forward to hubble-relay kubectl port-forward -n kube-system deployment/hubble-relay 50051:4245

To build the docker image run:

  1. make hubble-ui-backend

Frontend

  1. Install deps npm install
  2. Start development server npm run watch
  3. Open http://localhost:8080

To build the docker image run:

  1. make hubble-ui

Community

Learn more about Cilium Community

Perform a release

Push a tag into GitHub and ping a maintainer of the project to accept the GitHub action run which will push the images built into the official repositories.

License

Hubble UI is Apache License, Version 2.0