ack-agent-sandbox-controller

更新时间:
复制 MD 格式

ack-agent-sandbox-controller 是一个基于 Kubernetes 的扩展组件,旨在提供标准化、产品化的 Sandbox 生命周期管理能力。本文介绍 ack-agent-sandbox-controller 组件的基本信息、使用说明和变更记录。

组件介绍

ack-agent-sandbox-controller 是一个基于 Kubernetes 的扩展组件,旨在提供标准化、产品化的 Sandbox 生命周期管理能力。

使用说明

关于 ACS Agent Sandbox 的使用方式,请参见创建Agent Sandbox

变更记录

202606

版本号

变更时间

变更内容

变更影响

v0.5.16-release.2

20260616

  • 问题修复:

    • Sandbox 唤醒后增加 Init Container 镜像一致性检查,确认一致后再执行 Runtime 初始化和 CSI 动态卷挂载。

此次升级不会对业务造成影响。

v0.5.16-release.1

20260612

  • 功能特性:

    • Sandbox 休眠或唤醒后保持 Pod Template Spec 不变,避免唤醒后 Pod 规格发生非预期变更。

    • SandboxSet 自动创建关联的 SandboxTemplate,简化配置流程。

    • 优化大规模 SandboxSet(5000+)场景下的 Claim 性能,新增 CountActiveSandboxes 原地计数替代全量列表拷贝,显著降低 Claim 热路径(Hot Path)开销。

    • Sandbox 删除时的指标清理改为异步执行,从 reconcile 热路径移出,提升删除吞吐量。

    • SandboxUpdateOps 支持处理所有非 SandboxSet 管控的 Sandbox,覆盖直接创建 Sandbox 的升级场景。

  • 问题修复:

    • 修复新扩容的 Sandbox 导致 SandboxUpdateOps 持续处于 Updating 状态的问题,自动跳过 Template 已匹配目标版本的 Sandbox。

    • 稳定 Init Container 注入顺序,保证 Runtimes 容器注入顺序一致,确保向后兼容。

    • 修复 Sandbox 原地升级镜像偶发失败的问题,当 SandboxHashImmutablePart Annotation 缺失时跳过 Immutable Part 校验。

此次升级不会对业务造成影响。

v0.5.14-release.1

20260601

  • 功能特性:

    • 支持启用 Sandbox 流量管理能力,注入 traffic-proxy runtime,通过添加 Pod Annotation network.alibabacloud.com/network-policy-mode=enhanced-traffic-policy 启用。

    • 新增 sandbox_runtime_container_abnormal 指标,用于监控 Sandbox Runtime 容器异常状态。

    • Sandbox Controller 组件中心支持通过配置下发 TrafficPolicy,限制 envd 49983 端口的访问(默认不开启)。

    • Sandbox 创建/删除/休眠/唤醒链路增加 Tracing 支持,通过 FeatureGate SandboxTraceLog=true 开启(默认关闭)。

  • 问题修复:

    • deleteSandboxMetrics 改为异步调用,解决高并发删除 Sandbox 场景下 DeletePartialMatch 锁竞争导致的 reconcile 阻塞问题。

    • 修复 Sandbox 处于 Pending 阶段时 Status 未持久化的问题。

此次升级不会对业务造成影响。

202605

版本号

变更时间

变更内容

变更影响

v0.5.13-release.1

20260521

  • 问题修复:

    • 修复了 SandboxUpdateOps 执行 Lifecycle 脚本失败时,Sandbox Status Condition 的message字段未包含脚本stdoutstderr的问题,以提升故障排查效率。

    • Sandbox 唤醒时增加resumedCondition.Status=True兜底判断,解决底层休眠成功但 Pod Ready 仍为 True 时唤醒流程阻塞的问题。

  • 功能特性:

    • 校验 SandboxSet VolumeClaimTemplates 字段的挂载合法性。

    • SandboxClaim 新增 TTLAfterCompletedWaitReadyTimeout 字段校验。

    • 新增门控特性(FeatureGate)SandboxMultiClusterNaming,在 Sandbox generateName中嵌入集群 ID 哈希值,规避多集群 Name 冲突(默认关闭,可在组件中心开启)。

    • 支持 SandboxClaim 或 E2B SDK方式创建Sandbox时,从预热池原地升配 CPU(仅支持升配)。

    • CRD types添加Strategic Merge Patch markers,提升 kubectl apply 性能并降低 API Server 负载。

    • 新增 Sandbox 休眠、唤醒及升级操作的 Prometheus 指标,用于监控大盘展示。

    • Sandbox 休眠及唤醒后的 CSI 动态挂载能力移植到 Sandbox Controller,移除对Sandbox Manager 的依赖。

此次升级不会对业务造成影响。

v0.5.12-release.3

20260511

  • 问题修复:

    • 修复 E2B 链路创建的 Sandbox 在 SandboxUpdateOps 升级时未触发动态挂载的问题。

此次升级不会对业务造成影响。

v0.5.12-release.2

20260508

  • 问题修复:

    • SandboxClaim 在配置SkipInitRuntime=false但未配置 agent-runtime 时跳过 InitRuntime 并记录错误日志。

    • SandboxSet maxUnavailable 百分比计算改为向上取整,确保至少有 1 个 Sandbox 可以被更新。

此次升级不会对业务造成影响。

v0.5.12-release.1

20260506

  • 功能特性:

    • SandboxSet 支持升级预热池中的Sandbox,updateStrategy支持maxUnavailable

    • Sandbox 支持updateStrategy=Recreate以及 Lifecycle preUpgradepostUpgrade(升级之后会执行动态挂载CSI)。

    • 支持使用 SandboxUpdateOps CR 对已分配的沙箱进行升级。

    • 在休眠唤醒场景中,支持使用SandboxClaim控制器方式实现动态挂载。

    • 允许显式配置ops.alibabacloud.com/pause-enabled='false'

    • 支持 Sandbox 监控指标,其生成和暴露方式与 kube-state-metrics 一致。

    • Sandbox 支持 CPU VPA垂直伸缩。默认关闭,可通过特性门控SandboxInPlaceResourceResizeGate=true开启。

    • 通过 Pod Validate Webhook 防止误删除Pod能力。

    • 使用SandboxClaim方式获取 Sandbox 时支持修改 Pod Labels。

此次升级不会对业务造成影响。