控制平面灾备准入的Velero备份架构测试 - 第1节

1.1 Velero 灾备架构概述

Velero 是云原生社区广泛使用的开源备份与迁移工具,专为 Kubernetes 集群资源与持久卷提供灾备能力。其核心架构采用 服务端-插件端 分离设计,控制平面运行在集群内,数据平面通过 Restic 或卷快照 API 与存储后端交互。

架构要点: Velero 不依赖特定存储厂商,通过插件机制对接 AWS S3、Azure Blob、GCS、MinIO 等对象存储;备份数据以原生 Kubernetes API 对象格式存储,支持按命名空间、标签、资源类型进行细粒度筛选。

核心组件与职责

组件部署位置主要职责
Velero 服务端Kubernetes 集群内接收 Backup/Restore CRD,调度备份作业,管理生命周期
Restic 守护进程DaemonSet 模式执行文件级卷备份,支持增量与加密
卷快照插件CSI 或云厂商驱动创建/删除持久卷的云快照,实现块级备份
对象存储后端集群外存储备份文件、日志与元数据
Velero 灾备架构总览 Kubernetes 集群 Velero 服务端 Backup/Restore CRD 控制器 Restic (DaemonSet) 文件级增量备份 卷快照插件 CSI / 云厂商快照 对象存储后端 S3 / GCS / Azure Blob MinIO / 兼容存储 备份文件 + 元数据 备份数据以原生 K8s API 对象格式存储 支持按命名空间/标签/资源类型筛选

1.2 控制平面灾备准入概念

在 Kubernetes 控制平面灾备场景中,准入(Admission) 指在备份或恢复操作执行前,对资源对象进行合法性校验、策略匹配与依赖分析的过程。Velero 通过 准入 Webhook 与 备份钩子(Hook) 实现这一机制,确保只有符合灾备策略的资源被纳入备份范围。

核心价值: 准入控制可以防止误备份敏感命名空间、避免恢复时资源冲突、自动注入备份标签,是生产级灾备策略的第一道防线。

准入检查维度

  • 资源筛选: 按命名空间白名单/黑名单、标签选择器、资源类型包含/排除列表过滤。
  • 依赖解析: 自动识别 PVC→PV→StorageClass、Deployment→ReplicaSet→Pod 等资源依赖链,确保恢复时对象创建顺序正确。
  • 策略合规: 检查备份目标是否满足 RPO/RTO 要求,是否启用了加密与完整性校验。
  • 冲突检测: 恢复前检查目标集群是否存在同名资源、是否允许覆盖或跳过。
控制平面灾备准入流程 备份/恢复请求 Backup/Restore CR 准入引擎 Webhook + 策略匹配 依赖分析 + 冲突检测 准入结果 通过 / 拒绝 / 告警 准入检查详细项 ① 资源筛选:命名空间白/黑名单、标签选择器、资源类型包含/排除 ② 依赖解析:PVC→PV→StorageClass、Deployment→ReplicaSet→Pod ③ 策略合规:RPO/RTO 要求、加密与完整性校验 ④ 冲突检测:目标集群同名资源、覆盖/跳过策略

1.3 课程目标与学习路径

本课程面向 Kubernetes 运维工程师、灾备架构师与平台开发者,旨在通过 30 章 系统化内容,帮助学员掌握 Velero 控制平面灾备准入架构的设计、部署与测试方法。

课程目标

  • 理解 Velero 控制平面与数据平面的交互原理,掌握 CRD 驱动的备份/恢复生命周期。
  • 学会配置准入 Webhook 与备份钩子,实现资源筛选、依赖解析与策略合规检查。
  • 能够设计并执行灾备准入测试用例,验证备份完整性、恢复顺序与冲突处理逻辑。
  • 具备生产环境 Velero 灾备方案的架构评估与故障排查能力。

学习路径

阶段章节范围核心内容
基础篇第 1-8 章Velero 架构、CRD 详解、存储后端配置、Restic 集成
准入篇第 9-16 章Webhook 开发、策略引擎、依赖解析、冲突检测
测试篇第 17-24 章准入测试框架、用例设计、混沌工程、性能基准
实战篇第 25-30 章生产部署、多集群灾备、故障演练、最佳实践
前置要求: 学员需具备 Kubernetes 基础操作能力(kubectl、YAML 编写)、了解容器存储与网络基本概念。建议提前准备一套测试集群(minikube 或 kind 均可)用于实验。