Skip to content

seanly/KubePolaris

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

218 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

KubePolaris Logo

KubePolaris

๐ŸŒŸ Enterprise-Grade Kubernetes Multi-Cluster Management Platform

Release License Build Status Go Report Card Stars

Website โ€ข Quick Start โ€ข Documentation โ€ข Discussions โ€ข Roadmap

ไธญๆ–‡ | English


๐Ÿ“– About

KubePolaris is a modern Kubernetes cluster management platform built with React + Go. It provides an intuitive web interface to help DevOps and development teams efficiently manage and monitor multiple Kubernetes clusters.

"Polaris" refers to the North Star, symbolizing stable and reliable guidance for Kubernetes cluster operations.

Why KubePolaris?

  • ๐ŸŽฏ User-Centric - Clean, intuitive interface that lowers the K8s learning curve
  • ๐Ÿข Enterprise-Ready - Complete permission control, audit logs, multi-cluster management
  • ๐Ÿ”Œ Ecosystem Integration - Seamless integration with Prometheus, Grafana, AlertManager, ArgoCD
  • ๐Ÿš€ Out-of-the-Box - One-click Docker deployment, easy to get started
  • ๐Ÿ’ฏ Fully Open Source - Apache 2.0 License, community-driven

โœจ Features

๐Ÿ—๏ธ Cluster Management

  • Multi-cluster unified management
  • Support kubeconfig / Token import
  • Real-time cluster health monitoring
  • Resource usage overview dashboard

๐Ÿ“ฆ Workload Management

  • Deployment / StatefulSet / DaemonSet
  • Job / CronJob management
  • Scale, rolling update, rollback
  • Online YAML editor with syntax highlighting

๐Ÿ–ฅ๏ธ Node Management

  • Node list and details
  • Cordon / Uncordon / Drain operations
  • Labels and taints management
  • SSH terminal remote access

๐Ÿ“Š Monitoring & Alerting

  • Prometheus metrics integration
  • Grafana dashboard embedding
  • AlertManager integration
  • Multi-channel notifications

๐Ÿ” Security & Permissions

  • User / Role management
  • RBAC fine-grained access control
  • LDAP authentication integration
  • Operation audit logs

๐Ÿš€ DevOps Integration

  • ArgoCD GitOps integration
  • Global resource search
  • Log center aggregation
  • Web Terminal (Pod/Kubectl/SSH)

๐ŸŽฌ Screenshots

Dashboard

๐Ÿ“ธ More Screenshots
Cluster Overview Workload Management
Cluster Overview Workloads
Pod Management Web Terminal
Pod Management Terminal

๐Ÿš€ Quick Start

Option 1: Docker Run (Quickest)

docker pull registry.cn-hangzhou.aliyuncs.com/clay-wangzhi/kubepolaris:latest
docker run --rm -p 8080:8080 registry.cn-hangzhou.aliyuncs.com/clay-wangzhi/kubepolaris:latest

# Access http://localhost:8080
# Default credentials: admin / KubePolaris@2026

Uses built-in SQLite, no external dependencies required. For production use, deploy with Docker Compose and MySQL.

Option 2: Docker Compose (Recommended)

# Environmental requirements Docker 20.10+ and Docker Compose 2.0+

# Clone the repository
git clone https://github.com/clay-wangzhi/KubePolaris.git
cd KubePolaris

# Configure environment variables
cp .env.example .env
vim .env  # Set your passwords

# Start services
docker compose up -d

# Access http://${ip}
# Default credentials: admin / KubePolaris@2026

Option 3: Kubernetes Deployment

# Add Helm repository
helm repo add kubepolaris https://clay-wangzhi.github.io/KubePolaris
helm repo update

# Install
helm install kubepolaris kubepolaris/kubepolaris \
  --namespace kubepolaris \
  --create-namespace

# Check status
helm status kubepolaris -n kubepolaris

Option 4: Run from Source

# Requirements
# - Go 1.24+
# - Node.js 18+
# - MySQL 8.0+

# Start backend (port 8080)
cd kubepolaris
go run main.go

# Start frontend (port 5173)
cd ui
npm install && npm run dev

# Access http://localhost:5173

๐Ÿ“š For detailed installation guide, see Installation Documentation

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                        KubePolaris                               โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”‚
โ”‚  โ”‚                    Frontend (React)                      โ”‚    โ”‚
โ”‚  โ”‚  React 19 ยท TypeScript ยท Ant Design ยท Monaco ยท xterm.js โ”‚    โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ”‚
โ”‚                              โ”‚                                   โ”‚
โ”‚                         REST / WebSocket                         โ”‚
โ”‚                              โ”‚                                   โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”‚
โ”‚  โ”‚                     Backend (Go)                         โ”‚    โ”‚
โ”‚  โ”‚      Gin ยท GORM ยท k8s client-go ยท WebSocket ยท JWT       โ”‚    โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ”‚
โ”‚                              โ”‚                                   โ”‚
โ”‚         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             โ”‚
โ”‚         โ”‚                    โ”‚                    โ”‚             โ”‚
โ”‚    โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”         โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”         โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”         โ”‚
โ”‚    โ”‚  MySQL  โ”‚         โ”‚   K8s   โ”‚         โ”‚ Monitor โ”‚         โ”‚
โ”‚    โ”‚  Store  โ”‚         โ”‚ Clustersโ”‚         โ”‚Prometheusโ”‚         โ”‚
โ”‚    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Tech Stack

Layer Technology Version
Frontend React, TypeScript, Ant Design, Vite 19.x, 5.8, 5.x, 7.x
Backend Go, Gin, GORM 1.24, 1.9, 1.30
Database MySQL 8.0+
K8s Client client-go 0.29
Monitoring Prometheus, Grafana -

๐Ÿ“ Project Structure

kubepolaris/
โ”œโ”€โ”€ main.go                 # Application entry + embed
โ”œโ”€โ”€ internal/               # Internal packages
โ”‚   โ”œโ”€โ”€ handlers/           # HTTP handlers
โ”‚   โ”œโ”€โ”€ services/           # Business services
โ”‚   โ”œโ”€โ”€ models/             # Data models
โ”‚   โ”œโ”€โ”€ middleware/         # Middleware
โ”‚   โ”œโ”€โ”€ router/             # Router configuration
โ”‚   โ””โ”€โ”€ k8s/                # K8s client wrapper
โ”œโ”€โ”€ ui/                     # Frontend (source + build output)
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ pages/          # Page components
โ”‚   โ”‚   โ”œโ”€โ”€ components/     # Common components
โ”‚   โ”‚   โ”œโ”€โ”€ services/       # API services
โ”‚   โ”‚   โ””โ”€โ”€ types/          # Type definitions
โ”‚   โ””โ”€โ”€ dist/               # Build output (embedded into binary)
โ”œโ”€โ”€ docs/                   # Documentation site (Docusaurus)
โ”œโ”€โ”€ deploy/                 # Deployment configs
โ”‚   โ”œโ”€โ”€ docker/             # Grafana & MySQL configs
โ”‚   โ””โ”€โ”€ helm/               # Kubernetes Helm Chart
โ”œโ”€โ”€ Dockerfile              # Multi-stage build (single binary)
โ”œโ”€โ”€ docker-compose.yaml     # Docker Compose orchestration
โ””โ”€โ”€ .env.example            # Environment variables template

๐Ÿ“Š Feature Status

Module Status Description
Cluster Management โœ… Import, switch, monitor, delete
Node Management โœ… List, details, operations, SSH
Workloads โœ… Deploy/STS/DS/Job/CronJob
Pod Management โœ… List, logs, terminal, delete
Config Management โœ… ConfigMap, Secret
Network Management โœ… Service, Ingress
Storage Management โœ… PV, PVC, StorageClass
User & Permissions โœ… Users, roles, RBAC
Monitoring โœ… Prometheus, Grafana
Alerting โœ… AlertManager integration
GitOps โœ… ArgoCD integration
Audit Logs โœ… Operation logs, session audit
Global Search โœ… Cross-cluster resource search
i18n ๐Ÿšง Planned for v1.1

๐Ÿ—บ๏ธ Roadmap

See ROADMAP.md for the detailed plan.

Upcoming

  • v1.1 (Q2 2026) - i18n support, OAuth2/OIDC integration, cost analysis
  • v1.2 (Q3 2026) - Multi-tenancy, NetworkPolicy management, Service Mesh visualization
  • v2.0 (Q4 2026) - Cluster lifecycle management, backup & restore, plugin system

๐Ÿค Contributing

We welcome all contributions!

How to Contribute

# 1. Fork and clone
git clone https://github.com/YOUR_USERNAME/kubepolaris.git

# 2. Create feature branch
git checkout -b feature/amazing-feature

# 3. Commit changes
git commit -m 'feat: add amazing feature'

# 4. Push and create PR
git push origin feature/amazing-feature

๐Ÿ“š Documentation

Document Link
๐Ÿ  Official Website kubepolaris.clay-wangzhi.com
๐Ÿ“– User Documentation docs
๐Ÿš€ Quick Start quick-start
๐Ÿ“ฆ Installation Guide installation
๐Ÿ”ง Configuration configuration
๐Ÿ”Œ API Reference api-reference

๐Ÿ’ฌ Community

๐Ÿ”’ Security

If you discover a security vulnerability, please see SECURITY.md for the reporting process.

๐Ÿ“„ License

KubePolaris is open-sourced under the Apache License 2.0.

๐Ÿ™ Acknowledgements

Thanks to these amazing open source projects:

Special thanks to all contributors!


If KubePolaris helps you, please give us a โญ๏ธ Star!

Stars

About

๐ŸŒŸ KubePolaris - Enterprise Kubernetes Multi-Cluster Management | ไผไธš็บง K8s ็ฎก็†ๅนณๅฐ | React + Go

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • TypeScript 61.4%
  • Go 37.4%
  • CSS 0.5%
  • Makefile 0.2%
  • Shell 0.2%
  • Go Template 0.2%
  • Other 0.1%