- Build backend server using Node.js and Express.js, listening on a specific port
- Utilize OpenAPI Generator to generate JavaScript-based API client code from Kubernetes (k8s) API specifications
- Implement seamless communication between local and Volcano-deployed K8s clusters
- Provide RESTful API interfaces to support retrieval of resources such as Jobs, Queues, Nodes, etc.
- Adopt React.js framework to build a Single Page Application (SPA)
- Use Material-UI component library to design a modern, responsive user interface
- Implement dynamic rendering and frontend route management through React Router
- Frontend sends requests to the backend as needed via API to obtain the latest cluster resource data
- Backend retrieves Volcano-related resource information from the local Kubernetes cluster and returns it to the frontend
- Frontend receives data and dynamically updates the UI without requiring a full page refresh
- Adopt a two-column design:
- Left side for navigation bar
- Right side for content display area
- Left navigation bar includes four main functional options:
- Dashboard
- Queue
- Job
- Node
- Right content area dynamically displays corresponding resource information based on user selection
Module | Functionality Description |
---|---|
Dashboard | Provides cluster resource overview |
Queue | Displays and manages Volcano queue resources |
Job | Shows all Volcano jobs and their statuses (e.g., Running, Failed, Pending, Completed, etc.) |
Node | Displays cluster node information and resource usage |