You need to enable JavaScript to run this app.
文档中心
容器服务

容器服务

复制全文
下载 pdf
VCI Agent Sandbox
数据持久化
复制全文
下载 pdf
数据持久化
本文主要介绍 VCI Agent Sandbox 中实现沙箱数据持久化的方法。​
系统盘​
系统盘的快照,引入 SandboxSnapShot(Namespaced)与 SandboxSnapShotClass(Cluster-scoped),用于统一抽象 Sandbox 的快照能力。​
  • SandboxSnapShot:表示对特定 Sandbox 执行一次快照并记录快照状态、ID、保留时间等信息。​
  • SandboxSnapShotClass:描述底层生成快照参数与默认删除策略。​
说明​
系统盘快照制作时间,与系统盘中所产生的临时数据大小相关,应避免在系统盘快照制作完成之前,进行恢复沙箱操作。​
SandboxSnapshot ​
命名空间级别,对特定 Sandbox 执行一次快照并记录快照状态、ID、保留时间等信息。​
​
apiVersion: extensions.agents.x-k8s.io/v1alpha1​
kind: SandboxSnapShot​
metadata:​
name: demo-sandbox-snap-001​
namespace: default​
spec:​
sandboxRef: # 指定要进行快照的 Sandbox Reference。​
apiVersion: agents.x-k8s.io/v1alpha1​
kind: Sandbox​
name: demo-sandbox​
namespace: default​
​
snapshotClassName: vci-provider-class # 使用的快照存储服务类型。非必填参数。​
deletionPolicy: Delete # 快照删除策略,参数值说明:Delete(删除 SandboxSnapshot 时,删除底层快照)/ Retain(删除 SandboxSnapshot 时,保留底层快照)。​
retentionDays: 15 # 快照保留时长,默认 15 天。​
​
status: ​
phase: Completed # 快照状态。参数值说明:Pending(尚未提交创建快照任务)/ InProgress(快照创建中)/ Completed(快照创建完成)/ Failed(快照创建失败)。​
snapshotID: vci-snap-123456 # 快照 ID。​
sizeBytes: 40GB # 快照大小。​
​
creationTime: "2025-12-04 12:00:00" # 快照创建时间。​
expirationTime: "2025-12-19 12:00:00" # 快照过期时间。​
conditions: # 记录快照状态,表示当前快照是否 Ready 以及记录快照错误信息。​
- type: Ready​
status: "True"​
lastTransitionTime: "2025-12-04T12:00:10Z"​
reason: SnapshotCreated​
message: "Snapshot successfully created by VCI provider"​
- type: Error​
status: "False"​
​
SandboxSnapShotClass​
描述创建快照的相关参数、快照删除策略等。​
​
apiVersion: extensions.agents.x-k8s.io/v1alpha1​
kind: SandboxSnapShotClass​
metadata:​
name: vci-snapshot-class​
​
spec:​
driver: sandbox.agent.io/vci # 快照后端 Provider。目前仅支持 vci 一种类型 Provider。​
deletionPolicy: Delete # 快照删除策略,参数值说明:Delete(删除 SandboxSnapshot 时,删除底层快照)/ Retain(删除 SandboxSnapshot 时,保留底层快照)。​
retentionDays: 20​
​
数据盘​
数据盘支持挂载分布式文件系统(NAS),用户多沙箱之间共享数据。​
沙箱生命周期内生产的数据可以存储到持久化存储 ( PV & PVC ),当 Pod 删除重建后,仍然可以挂载 PVC 的数据到容器内,Sandbox CRD 定义了 volumeClaimTemplates 模版,其中允许用户设置 Volume 的accessmode、storage size、storageClassName,即类似 Statfulset CRD 的使用方式。​
数据盘数据保存策略由 Volume 的保存策略决定:​
  • Retain: PVC 释放后,PV 保持在 Released 状态,不自动删除或回收。​
  • Delete: PVC 释放后,自动删除 PV 及其底层存储资源。​
  • Recycle: PVC 释放后,将卷回收到未绑定 PV 池中,可被其他 PVC 重新使用。​
​
apiVersion: agents.x-k8s.io/v1alpha1​
kind: Sandbox​
metadata:​
name: demo-sandbox​
spec:​
replicas: 1​
volumeClaimTemplates:​
- metadata:​
name: nginx-data​
spec:​
accessModes:​
- ReadWriteOnce​
resources:​
requests:​
storage: 5Gi​
storageClassName: sandbox-nfs​
podTemplate:​
spec:​
tolerations:​
- key: "vci.vke.volcengine.com/node-type"​
operator: "Exists"​
effect: "NoSchedule"​
containers:​
- name: ubuntu-sshd​
image: vke-qa-cn-beijing.cr.volces.com/qa/ubuntu-sshd:12.04​
command: ["/usr/sbin/sshd", "-D"]​
ports:​
- containerPort: 22​
volumeMounts:​
- name: nginx-data​
mountPath: /usr/share/nginx/html​
​
​
最近更新时间:2026.04.09 15:42:07
这个页面对您有帮助吗?
有用
有用
无用
无用