8000 GitHub - l2dy-sonarcloud/kite: πŸͺ A modern, lightweight Kubernetes dashboard
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

l2dy-sonarcloud/kite

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

38 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Kite - Modern Kubernetes Dashboard

Kite Logo

A modern, intuitive Kubernetes dashboard

Go Version React TypeScript License

Kite is a lightweight, modern Kubernetes dashboard that provides an intuitive interface for managing and monitoring your Kubernetes clusters. It offers real-time metrics, comprehensive resource management, multi-cluster support, and a beautiful user experience.


πŸ“Έ Screenshots

🏠 Dashboard Overview

Dashboard Overview Comprehensive cluster overview with real-time metrics and resource statistics

More screenshots

πŸš€ Resource Management

Deployment Detail Detailed deployment view with pod management and status monitoring

πŸ“Š Real-time Monitoring

Resource Monitoring Real-time CPU, memory, and network usage charts with historical data

πŸ” Global Search

Global Search Powerful search functionality across all Kubernetes resources

πŸ“‹ Live Logs

Pod Logs Real-time log streaming with filtering and search capabilities

πŸ’» Web Terminal

Web Terminal Execute commands directly in pods through the browser interface

πŸ” OAuth Authentication

OAuth Login Secure authentication with GitHub and custom OAuth providers


✨ Features

🎯 Modern User Experience

  • πŸŒ“ Multi-Theme Support - Dark/light/color themes with system preference detection
  • πŸ” Advanced Search - Global search with across all resources
  • 🏘️ Multi-Cluster Management - Seamlessly switch between multiple Kubernetes clusters

🏘️ Multi-Cluster Management

  • πŸ”„ Seamless Cluster Switching - Switch between multiple Kubernetes clusters with a single click
  • πŸ“Š Per-Cluster Monitoring - Independent Prometheus configuration for each cluster
  • βš™οΈ Kubeconfig Integration - Automatic discovery of clusters from your kubeconfig file

πŸ” Comprehensive Resource Management

  • πŸ“‹ Full Resource Coverage - Pods, Deployments, Services, ConfigMaps, Secrets, PVs, PVCs, and more
  • πŸ“„ Live YAML Editing - Built-in Monaco editor with syntax highlighting and validation
  • πŸ“Š Detailed Resource Views - In-depth information with containers, volumes, events, and conditions
  • πŸ”— Resource Relationships - Visualize connections between related resources (e.g., Deployment β†’ Pods)
  • βš™οΈ Resource Operations - Create, update, delete, scale, and restart resources directly from the UI
  • πŸ”„ Custom Resources - Full support for CRDs (Custom Resource Definitions)

πŸ“ˆ Monitoring & Observability

  • πŸ“Š Real-time Metrics - CPU, memory, and network usage charts powered by Prometheus
  • πŸ“‹ Cluster Overview - Comprehensive cluster health and resource statistics
  • πŸ“ Live Logs - Stream pod logs in real-time with filtering and search capabilities
  • πŸ’» Web Terminal - Execute commands directly in pods through the browser

πŸ” Authentication

  • πŸ›‘οΈ OAuth Integration - Support for GitHub and custom OAuth providers
  • πŸ”‘ Username/Password - Simple authentication using environment variables

πŸš€ Quick Start

Environment Variables

Variable Description Default Required
PORT Server port 8080 No
KUBECONFIG Kubernetes config path for multi-cluster access inCluster or ~/.kube/config No
ENABLE_ANALYTICS Enable anonymous usage analytics false No
PROMETHEUS_URL Default Prometheus server URL Prometheus Setup Guide - No
<CLUSTER>_PROMETHEUS_URL Cluster-specific Prometheus URL (see Multi-Cluster section below) - No
JWT_SECRET JWT secret for signing tokens. default is random string random string Yes*
OAUTH_ENABLED Enable OAuth authentication. OAuth Setup Guide. false No
OAUTH_ALLOW_USERS Comma-separated list of users allowed to access the dashboard,support wildcard (*) for all users - OAuth*
KITE_USERNAME Username for basic authentication. If set, enables password auth. - No
KITE_PASSWORD Password for basic authentication. If set, enables password auth. - No

*Required only when OAuth is enabled

Docker

To run Kite using Docker, you can use the pre-built image:

docker run --rm -p 8080:8080 -v ~/.kube/config:/home/nonroot/.kube/config ghcr.io/zxh326/kite:latest

Deploy in Kubernetes

Using Helm (Recommended)

  1. Add Helm repository

    helm repo add kite https://zxh326.github.io/kite
    helm repo update
  2. Install with default values

    helm install kite kite/kite -n kube-system

Using kubectl

  1. Apply deployment manifests

    kubectl apply -f deploy/install.yaml
    # or install it online
    kubectl apply -f https://raw.githubusercontent.com/zxh326/kite/refs/heads/main/deploy/install.yaml
  2. Access via port-forward

    kubectl port-forward -n kube-system svc/kite 8080:80

Build from Source

πŸ“‹ Prerequisites

  1. Clone the repository

    git clone https://github.com/zxh326/kite.git
    cd kite
  2. Build the project

    make deps
    make build
  3. Run the server

    make run

πŸ” Troubleshooting

Common Issues

1. Prometheus metrics not available

see Prometheus Setup Guide for configuring Prometheus and kube-state-metrics.

2. OAuth authentication issues

see OAuth Setup Guide for troubleshooting OAuth configuration.

3. Analytics issues

By default, kite will not collect any analytics data.

If you wish to help improve the product, you can set the environment variable ENABLE_ANALYTICS=true.

kite will use umami to collect very little anonymous usage.

source code is available at Analytics

4. Custom font

build kite with make build and change the font in ./ui/src/index.css

@font-face {
  font-family: "Maple Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(https://cdn.jsdelivr.net/fontsource/fonts/maple-mono@latest/latin-400-normal.woff2)
      format("woff2"), url(https://cdn.jsdelivr.net/fontsource/fonts/maple-mono@latest/latin-400-normal.woff)
      format("woff");
}

body {
  font-family: "Maple Mono", var(--font-sans);
}

About

πŸͺ A modern, lightweight Kubernetes dashboard

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 81.4%
  • Go 15.5%
  • CSS 1.9%
  • Makefile 0.4%
  • Shell 0.3%
  • Smarty 0.2%
  • Other 0.3%
0