All Projects → benc-uk → Kubeview

benc-uk / Kubeview

Licence: mit
Kubernetes cluster visualiser and graphical explorer

Projects that are alternatives of or similar to Kubeview

Gitlab Ci Monitor
A simple dashboard for monitoring GitLab CI builds. Alpha version.
Stars: ✭ 152 (-54.63%)
Mutual labels:  monitoring, dashboard
Ktop
top for k8s
Stars: ✭ 178 (-46.87%)
Mutual labels:  monitoring, dashboard
Dashbuilder
Dashboard composition tooling based on the Uberfire framework
Stars: ✭ 163 (-51.34%)
Mutual labels:  monitoring, dashboard
Kubebox
⎈❏ Terminal and Web console for Kubernetes
Stars: ✭ 1,855 (+453.73%)
Mutual labels:  monitoring, dashboard
Kube Opex Analytics
🎨 Kubernetes Cost Allocation and Capacity Planning Analytics Tool. Hourly, daily, monthly reports - Prometheus exporter - Built-in & Grafana dashboard.
Stars: ✭ 232 (-30.75%)
Mutual labels:  monitoring, dashboard
Monitaure
🔔 A server uptime monitoring progressive web application - NO LONGER MAINTAINED
Stars: ✭ 135 (-59.7%)
Mutual labels:  monitoring, dashboard
Hastic Grafana App
Hastic data management server for labeling patterns and anomalies in Grafana
Stars: ✭ 166 (-50.45%)
Mutual labels:  monitoring, dashboard
Amon
Amon is a modern server monitoring platform.
Stars: ✭ 1,331 (+297.31%)
Mutual labels:  monitoring, dashboard
Grafana Dashboards
Grafana Dashboards
Stars: ✭ 228 (-31.94%)
Mutual labels:  monitoring, dashboard
Temboard
PostgreSQL Remote Control
Stars: ✭ 218 (-34.93%)
Mutual labels:  monitoring, dashboard
Grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Stars: ✭ 45,930 (+13610.45%)
Mutual labels:  monitoring, dashboard
Beam Dashboards
BEAM ❤️ Prometheus ❤️ Grafana
Stars: ✭ 244 (-27.16%)
Mutual labels:  monitoring, dashboard
Linux Dash
A beautiful web dashboard for Linux
Stars: ✭ 9,813 (+2829.25%)
Mutual labels:  monitoring, dashboard
Angular5 Iot Dashboard
Multipurpose dashboard admin for IoT softwares, remote control, user interface. Develop your client dashboards in Angular 5 with vast variety of components available.
Stars: ✭ 148 (-55.82%)
Mutual labels:  monitoring, dashboard
Postgresql Dashboard
A real-time monitoring screen based on Dashing and Sinatra
Stars: ✭ 96 (-71.34%)
Mutual labels:  monitoring, dashboard
Github Monitoring
Monitor your GitHub Repos with Docker & Prometheus
Stars: ✭ 163 (-51.34%)
Mutual labels:  monitoring, dashboard
Grafana Aws Cloudwatch Dashboards
☁️ 30+ Grafana dashboards for AWS CloudWatch metrics: EC2, Lambda, S3, ELB, EMR, EBS, SNS, SES, SQS, RDS, EFS, ElastiCache, Billing, API Gateway, VPN, Step Functions, Route 53, CodeBuild, ...
Stars: ✭ 1,210 (+261.19%)
Mutual labels:  monitoring, dashboard
Chronograf
Open source monitoring and visualization UI for the TICK stack
Stars: ✭ 1,245 (+271.64%)
Mutual labels:  monitoring, dashboard
Goaccess
GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser.
Stars: ✭ 14,096 (+4107.76%)
Mutual labels:  monitoring, dashboard
Smashing
The exceptionally handsome dashboard framework in Ruby and Coffeescript.
Stars: ✭ 2,765 (+725.37%)
Mutual labels:  monitoring, dashboard

KubeView

Kubernetes cluster visualiser and visual explorer

KubeView displays what is happening inside a Kubernetes cluster (or single namespace), it maps out the API objects and how they are interconnected. Data is fetched real-time from the Kubernetes API. The status of some objects (Pods, ReplicaSets, Deployments) is colour coded red/green to represent their status and health

The app auto refreshes and dynamically updates the view as new data comes in or when it changes.

Currently displays the following Kubernetes objects:

  • Deployments
  • ReplicaSets / StatefulSets / DaemonSets
  • Pods
  • Services
  • Ingresses
  • LoadBalancer IPs
  • PersistentVolumeClaims
  • Secrets
  • ConfigMaps

Status

Note. No secrets are exposed by the Kubeview API, values are redacted and replaced with __VALUE REDACTED__ before being sent.

Demo & Screenshots

Short video demo

Screenshots

demo demo2

Application Components

The app consists of two separate but connected elements, in the standard pattern of backend REST API and JS client frontend

  • Client SPA - Vue.js single page app. All visualisation, mapping & object connection logic is done client side
  • API Server - Scrapes Kubernetes API and presents it back out as a custom REST API. Also acts as HTTP serving host to the SPA. Written in Go

Repo Details

This projects follows the 'Standard Go Project Layout' directory structure and naming conventions as described here

  • /cmd/server - Source of the API server, written in Go. See the readme there for more details
  • /web/client - Source of the client app, written in Vue.js. See the readme in there for more details
  • /deployments/helm - Helm chart for simplifying deployment. See the readme in there for more details
  • /build - Build artifacts such as the Dockerfile

Docker Image

Builds of the Docker image are hosted publicly on GitHub Container Registry here: https://github.com/users/benc-uk/packages/container/package/kubeview

  • The latest tag is likely to be unstable
  • Versioned tags are build and pushed in sync with released versions of this repo, e.g. docker pull ghcr.io/benc-uk/kubeview:0.1.17

Helm Chart

Helm chart called 'kubeview' is provided in the charts directory to help deploy and install KubeView into your cluster. The chart is also available in packaged form, in the releases section

Use the supplied sample example-values.yaml file (copy it to a new name, e.g. myvalues.yaml) to configure how to deploy KubeView. The main choice is if you want to expose the service via an ingress ingress.enabled: true or a load-balancer service ingress.enabled: false

When using an Ingress additionally configure the DNS hostname and TLS certs if you want to use HTTPS

Cluster or Namespaced Deployment

the chart supports deployment in a single namespace, set limitNamespace: true. In this mode, KubeView will be limited to displaying only the namespace it is deployed into (via the helm --namespace flag), and the namespace picker will not be shown in the UI. The ServiceAccount/Role/Binding will be scoped to this namespace too, rather than cluster wide.

This is passed to the server via the NAMESPACE_SCOPE env variable

Usage

Deploy with the standard Helm install command:

cd charts
helm install kubeview ./kubeview -f myvalues.yaml

Project Meta

Known Issues

  • Filtering only applies to certain objects such as pods and controllers
  • On Firefox, the namespace picker doesn't show a drop down list, you have to start typing a name for the list to appear. This is Firefox behavior not a bug

Todo / Roadmap

  • Support some CRDs
  • Display Nodes
  • Filtering improvements (no refresh)
  • Settings with detail levels

Change Log

See releases

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].