35 lines
1.8 KiB
Markdown
35 lines
1.8 KiB
Markdown
|
|
# Design Framework
|
|||
|
|
|
|||
|
|
This document outlines the high level design of **XControl** and how the project uses a collection of open source components, provided as optional extension modules, to build a multi-tenant, multi-service platform.
|
|||
|
|
|
|||
|
|
## Open Source Components
|
|||
|
|
|
|||
|
|
- **PulumiGo** is used to provision cloud resources across multiple providers using the Pulumi SDK with Go.
|
|||
|
|
- **KubeGuard** provides Kubernetes cluster application backups and node-level recovery.
|
|||
|
|
- **CraftWeave** orchestrates lightweight tasks and configuration changes for each service module.
|
|||
|
|
- **CodePRobot** automates GitHub Issue to Pull Request workflows and assists with code patching.
|
|||
|
|
- **OpsAgent** offers intelligent monitoring, anomaly detection and root cause analysis.
|
|||
|
|
- **XStream** accelerates developer connectivity across regions.
|
|||
|
|
These extension modules can be enabled individually, letting deployments choose only the features they need.
|
|||
|
|
|
|||
|
|
### Component Integration Status
|
|||
|
|
|
|||
|
|
| Component | Status |
|
|||
|
|
|-----------|--------|
|
|||
|
|
| PulumiGo | Planned |
|
|||
|
|
| KubeGuard | Planned |
|
|||
|
|
| CraftWeave | Planned |
|
|||
|
|
| CodePRobot | Planned |
|
|||
|
|
| OpsAgent | Planned |
|
|||
|
|
| XStream | Planned |
|
|||
|
|
|
|||
|
|
## Core Design Principles
|
|||
|
|
|
|||
|
|
1. **Multi-Tenant** – users are isolated in data and configuration while sharing the same control plane.
|
|||
|
|
2. **Multi-Service** – each component runs as an independent service that can be enabled or disabled per tenant.
|
|||
|
|
3. **Multi-Node Control** – agents deployed on nodes pull configuration, report usage and manage local services.
|
|||
|
|
4. **Subscription Configuration** – users export service configs (such as `vless://` links) via a unified API.
|
|||
|
|
5. **Modular Visual Panel** – the web UI is built from modules so features can be added as needed.
|
|||
|
|
|
|||
|
|
These principles allow XControl to scale from a single deployment to a complex environment spanning multiple clouds and Kubernetes clusters.
|