跳转到内容

生产配置建议

本文提供 TKE Cube Agent Sandbox 在生产环境中的配置建议。

建议为沙箱运行时使用独立原生节点池:

  • 便于控制节点规格、内核和 runtime 版本。
  • 避免普通业务 Pod 与沙箱实例争抢资源。
  • 便于设置容量水位、升级节奏和故障隔离。

如果需要混部,请为沙箱实例配置资源配额、节点亲和性和污点容忍策略。

将常用运行环境沉淀为 SandboxTemplate:

  • Python Code Interpreter。
  • Shell / CLI 自动化环境。
  • 浏览器或渲染环境。
  • 企业内部工具环境。
  • Agent 评测环境。

模板应尽量稳定,频繁变化的代码和数据建议通过存储挂载或启动参数注入。

Warm Pool 可降低创建时延,但会占用资源。建议:

  • 高频模板配置 Warm Pool。
  • 低频模板使用按需创建。
  • replicas 设置为平时并发的低水位。
  • maxReplicas 设置为突发并发上限。
  • 配置 TTL,避免实例长期占用资源。

建议默认采用以下安全配置:

  • 为不同业务或租户使用独立 Namespace 和 Team。
  • 每个 Team 单独创建 API Key。
  • 默认关闭公网入口。
  • 默认拒绝入方向访问。
  • 出方向访问按需放开。
  • 共享存储按 Team 隔离。
  • 对 API Key 创建、删除和实例销毁操作开启审计。

生产环境建议:

  • 控制面和数据面流量分离。
  • API 控制面只允许可信来源访问。
  • 数据面按业务端口显式声明。
  • 禁止沙箱访问云元数据服务。
  • 公网入口使用 TLS 和来源白名单。
  • 对异常出网和网关错误配置告警。

任务型场景:

  • 优先使用临时存储。
  • 任务结束后自动销毁。
  • 结果通过 SDK 或对象存储上传。

工作空间场景:

  • 使用共享存储或持久卷。
  • 开启备份和回收策略。
  • 按 Team 或用户隔离目录。
  • 对只读数据集使用只读挂载。

为了减少模板准备时间:

  • 使用精简基础镜像。
  • 预装稳定依赖。
  • 将大数据集从镜像中拆出,改为挂载。
  • 使用 TCR 镜像仓库并配置节点侧缓存。
  • 避免在启动命令中执行耗时安装。

建议为 Team 配置:

  • 最大运行实例数。
  • CPU 和内存总量。
  • 单实例最大规格。
  • 默认 TTL。
  • 公网访问权限。

定期查看:

  • 运行中实例数。
  • 已使用 CPU / 内存。
  • Warm Pool 占用资源。
  • 失败实例和长时间运行实例。

升级插件、runtime 或模板前,建议:

  1. 在测试集群验证。
  2. 新建模板版本。
  3. 对少量 Team 灰度。
  4. 观察创建失败率和执行成功率。
  5. 再扩大范围。

避免在业务高峰期升级节点池 runtime。

配置建议默认值
公网入口关闭
入方向访问默认拒绝
出方向访问按需允许
TTL1800 秒
Warm Pool高频模板开启,低频模板关闭
存储临时存储优先,共享存储按需挂载
Team 配额按业务容量单独配置