A Kubernetes multi-cluster management platform based on Go and React, providing an intuitive web interface to simplify Kubernetes resource management and operations.
- ✅ Multi-cluster support and management
- ✅ Cluster connection testing
- ✅ Cluster resource overview
- ✅ Node status monitoring and details viewing
- ✅ Node resource usage visualization
- ✅ Node drain operations
- ✅ Scheduling control (Cordon/Uncordon)
- ✅ Node taints management
- ✅ Node labels management
- ✅ Node pools creation and management
- ✅ Pod viewing, details and deletion
- ✅ Real-time Pod logs viewing
- ✅ Pod terminal connection
- ✅ Deployment creation and management
- ✅ Deployment scaling and restart
- ✅ Service management
- Go language
- Gin Web framework
- client-go Kubernetes client library
- React
- TypeScript
- Ant Design component library
- Vite build tool
The platform adopts a front-end and back-end separation architecture:
- Backend provides RESTful APIs
- Frontend communicates with backend through APIs
- Backend interacts with Kubernetes clusters via client-go
kube-tide/
├── cmd/ # Application entry points
│ └── server/ # Server entry
├── configs/ # Configuration files
├── dist/ # Build output directory
├── docs/ # Documentation
├── internal/ # Internal packages
│ ├── api/ # API handlers and routes
│ ├── core/ # Core business logic
│ │ └── k8s/ # Kubernetes resource management
│ └── utils/ # Utility functions
├── pkg/ # Exportable packages
│ └── embed/ # Embedded resources
├── web/ # Frontend code
│ ├── public/ # Static resources
│ └── src/ # Source code
│ ├── api/ # API client
│ ├── components/ # React components
│ ├── layouts/ # Page layouts
│ └── pages/ # Page components
└── Makefile # Build scripts
- Go 1.16 or higher
- Node.js 14 or higher
- Yarn package manager
- Accessible Kubernetes cluster
-
Clone the repository
git clone https://github.com/your-username/kube-tide.git cd kube-tide
-
Install dependencies and build
# Build production version (frontend and backend) make build-prod # Or build separately make build-web # Build frontend only make build-backend # Build backend only
-
Run the application
# Run production version make run-prod # Or run development version make dev
-
Access the web interface
http://localhost:8080
-
Backend Development
# Build backend only and start make build-backend make dev
-
Frontend Development
cd web yarn install yarn dev
make build
- Build the project (frontend and backend)make build-prod
- Build production versionmake build-web
- Build frontend onlymake build-backend
- Build backend onlymake run
- Run the applicationmake dev
- Run in development modemake test
- Run testsmake clean
- Clean build artifacts
- Implement StatefulSet, DaemonSet management
- Add ConfigMap and Secret management
- Implement storage management (PV, PVC, StorageClass)
- Integrate monitoring system (Prometheus)
- Implement RBAC permission management
- Add CI/CD integration
Pull Requests or Issues are welcome to improve the project. Please ensure the code follows the official Go language code specifications and includes appropriate tests.