Skip to content

环境与部署

CubeSandbox 需要能运行 KVM MicroVM 的 Linux 环境。学习阶段最重要的不是背命令,而是先选对部署路径。

部署路径怎么选

场景推荐方式适合人群
普通 x86_64 云服务器,没有 /dev/kvmPVM 部署快速体验、云上测试。
已有支持 KVM 的物理机或裸金属裸金属 / 物理机部署性能测试、生产验证。
需要多台计算节点多机集群部署平台团队、容量验证。
腾讯云自动化拉起集群腾讯云 Terraform 部署云上集群试验。
只想读代码和本地调试开发环境 QEMU VM贡献者、源码调试。
需要自定义构建产物本地构建部署修改组件、验证 PR。

如果只是学习和写第一个 Agent 示例,优先走快速开始或 PVM;如果你要测真实性能,尽量选择原生 KVM 或裸金属。

必须满足的条件

条件为什么重要
root 权限安装服务、加载内核模块、配置网络和 systemd 都需要 root。
Linux + KVM/PVMMicroVM 需要虚拟化能力。
glibc >= 2.31预构建二进制基于 Ubuntu 20.04 兼容基线。
/data/cubelet 使用 XFS reflinkCubeCoW 依赖 reflink 做高效快照和克隆。
至少 50 GB 可用磁盘模板、rootfs、快照和可写层都在本地占空间。
可访问镜像和发布包安装脚本需要下载 Release 包与容器镜像。

快速开始文档会给出更细的发行版说明。学习时记住一个关键点:ext4 上能跑很多东西,但 CubeSandbox 的 CoW 快照能力需要 XFS reflink。

快速安装的主线

PVM 快速体验通常是这四步:

  1. 安装 PVM 宿主机内核并重启。
  2. 运行一键安装脚本。
  3. 创建模板。
  4. 用 SDK 创建沙箱并执行代码。

核心命令形态如下,实际部署请以 快速开始 为准:

bash
curl -sL https://cnb.cool/CubeSandbox/CubeSandbox/-/git/raw/master/deploy/one-click/online-install.sh \
  | CUBE_PVM_ENABLE=1 MIRROR=cn bash

如果机器已经有原生 KVM,可以参考裸金属部署,不需要 PVM 内核步骤。

安装后应该看到什么

默认值 / 现象用途
CubeAPIhttp://<host>:3000SDK 和 REST API 入口。
WebUIhttp://<host>:12088浏览器控制台。
CubeProxycube.app 或自定义域名访问沙箱内服务。
Redis / MySQL安装脚本管理控制面状态与持久化数据。
/data/cubelet本地数据目录模板、沙箱卷、快照、运行时文件。
systemd targetscube-sandbox-*.service服务启停与日志查看。

安装完成后,先打开 WebUI 看节点是否 Ready,再创建或安装一个模板。不要急着写复杂 Agent;先确认“节点健康、模板 READY、沙箱能创建”这三个基础状态。

最小健康检查

在主机上可以先做这些检查:

bash
# KVM/PVM 是否可用
ls -la /dev/kvm
lsmod | grep kvm

# 关键 API 是否可达
curl -s http://127.0.0.1:3000/health || true

# WebUI 端口是否监听
ss -lntp | grep 12088 || true

# 数据目录文件系统
findmnt /data/cubelet

如果健康检查不通过,优先看 部署排障本地网段冲突模板排障

开发环境与生产环境的差异

开发环境更关注“能否调试代码”,生产环境更关注“可用、安全、可观测”:

关注点开发 / 学习生产 / 预生产
部署规模单机即可多节点或明确容量规划。
网络暴露本机或内网访问必须做鉴权、TLS、网络加固。
模板来源官方预置或示例镜像固定版本、可追溯构建、定期重建。
日志临时查看接入集中日志和审计保存。
升级跟随 master 学习对照 Release、变更日志、回滚方案。

下一步

继续阅读 第一个沙箱,把安装后的 API、模板和 SDK 串起来。

微信公众号《有机系统》作者整理的个人学习笔记与教程。