实例与资源交付
PayIncus 的核心交付对象是基于 Incus 的 LXC / KVM 实例。用户端负责自助申请和管理,管理端负责全局运营、人工处理和异常排查。
交付流程
- 用户选择套餐、镜像和可用节点。
- 后端校验账号余额、套餐限制、节点容量和资源配额。
- 系统创建实例订单和计费记录。
- 后端调用 Incus 或宿主机 Agent 完成实例创建。
- 创建成功后同步实例状态、网络信息、资源限制和账务状态。
- 创建失败时执行补偿逻辑,避免扣费成功但资源未交付。
用户端能力
| 能力 | 说明 |
|---|---|
| 创建实例 | 按套餐、镜像、节点和资源限制创建 LXC / KVM 实例。 |
| 实例列表 | 查看实例名称、状态、资源、到期时间和可操作项。 |
| 实例详情 | 查看 CPU、内存、磁盘、网络、IPv6、端口映射和运行信息。 |
| 生命周期操作 | 启动、停止、重启、删除。 |
| Web 终端 | 通过 /api/ws 建立终端 WebSocket。 |
| 快照与备份 | 根据系统配置使用快照、备份或恢复能力。 |
| 流量统计 | 展示实例流量用量、重置状态和超限通知。 |
管理端能力
| 能力 | 说明 |
|---|---|
| 全局实例管理 | 查看所有客户实例并进入详情。 |
| 管理员创建实例 | 手动代客户创建实例,适合补单、迁移或人工交付。 |
| 节点与镜像管理 | 维护可用宿主机、镜像、架构和展示状态。 |
| 批量配置 | 管理初始化命令、存储配置、端口映射、IP 地址等交付要素。 |
| 异常排查 | 通过日志、Agent 上报、任务状态定位创建失败或状态不同步。 |
关键后端模块
instances:实例创建、查询和生命周期操作。instance-billing:实例账务、续费和到期处理。instance-destroy:实例删除和资源回收。terminal:WebSocket 终端。snapshots、backups:快照与备份。traffic:流量统计、重置和通知。agent:宿主机心跳、资源上报和实例状态上报。
风险点
- 创建失败必须补偿账务,不能出现扣费后无实例。
- 删除实例必须先处理 Incus 资源,再处理本地记录,避免孤儿资源。
- 终端 WebSocket 必须校验身份和实例归属。
- 管理端操作实例时要保留操作日志。
- Agent 状态延迟会影响容量判断和状态展示。
验证清单
- 用户创建 LXC / KVM 实例成功。
- 启动、停止、重启、删除均能同步到 Incus。
- Web 终端可连接并能正确断开。
- 创建失败时余额和订单状态正确回滚。
- 管理员能查看和处理全部实例,普通用户只能看到自己的实例。
