1. 课程导论:Rook Ceph与Istio概述、课程目标与前置知识、实验环境说明
1.1 为什么需要Rook Ceph与Istio?
在云原生生态中,持久化存储与服务间安全通信是生产级Kubernetes集群的两大核心挑战。Rook Ceph将Ceph分布式存储系统以Operator模式嵌入K8s,提供自管理、高可用的块存储、文件系统和对象存储;Istio则通过Sidecar代理实现零信任网络、mTLS加密与细粒度访问控制。本课程将二者结合,构建一个“存储可编程、流量可管控”的企业级云原生基础设施。
课程定位:面向已掌握Kubernetes基础操作的运维、开发与架构师,聚焦Rook Ceph与Istio的集成部署、存储策略配置与安全策略编排,而非基础概念扫盲。
1.2 Rook Ceph与Istio概述
| 组件 | 核心能力 | 在K8s中的角色 | 关键优势 |
|---|---|---|---|
| Rook Ceph | 块设备(RBD)、共享文件系统(CephFS)、对象存储(RGW) | Operator + CRD 管理Ceph集群生命周期 | 自动扩缩容、故障自愈、CSI驱动集成 |
| Istio | mTLS、AuthorizationPolicy、PeerAuthentication、Sidecar注入 | 数据面(Envoy) + 控制面(Pilot/ Citadel/ Galley) | 零信任网络、可观测性、流量管理 |
| 集成价值 | 存储Pod间加密通信、存储管理接口访问控制、审计日志 | Rook Operator + Istio Sidecar 协同工作 | 存储与安全策略统一编排 |
Rook Ceph 通过 CustomResourceDefinitions (CRDs) 定义 CephCluster、CephBlockPool、CephFilesystem 等资源,Operator 自动完成部署与运维。Istio 则通过 PeerAuthentication 和 AuthorizationPolicy 控制存储组件之间的 mTLS 模式与访问权限。
1.3 课程目标
完成本课程后,学员将能够:
- 独立部署一个生产可用的 Rook Ceph 集群,并配置块存储、文件系统与对象存储。
- 配置 Istio 安全策略,为存储组件启用严格的 mTLS 与细粒度访问控制。
- 集成 Rook Ceph 与 Istio,确保存储控制面与数据面之间的通信加密与权限隔离。
- 诊断与排错常见的存储与安全策略冲突问题,如证书过期、策略拒绝、Sidecar 注入失败。
- 编写自动化策略,通过 GitOps 方式管理存储与安全配置。
核心交付物:一套完整的 Rook Ceph + Istio 集成部署模板、安全策略 YAML 清单、以及可复用的监控与告警规则。
1.4 前置知识要求
| 领域 | 具体要求 | 建议学习资源 |
|---|---|---|
| Kubernetes | 熟练使用 kubectl,理解 Pod、Service、Deployment、StatefulSet、PVC/PV、Namespace | K8s 官方文档 / CKAD 课程 |
| 存储基础 | 了解块存储、文件系统、对象存储的基本概念;知道 Ceph 的 MON、OSD、MGR 角色 | Ceph 官方文档 / 入门教程 |
| 服务网格 | 理解 Sidecar 模式、mTLS、AuthorizationPolicy 基本概念 | Istio 官方入门 / 基础课程 |
| Linux 运维 | 能够使用命令行操作磁盘、网络、防火墙;理解 DNS 与证书 | Linux 基础运维 |
注意:本课程不包含 Kubernetes 安装、Ceph 原理详解或 Istio 基础架构的完整教学。请确保在开始前已具备上述前置知识。
1.5 实验环境说明
本课程所有实验均在以下标准化环境中验证通过。建议学员使用相同或等效的环境配置,以避免兼容性问题。
1.5.1 软件版本清单
| 组件 | 版本 | 说明 |
|---|---|---|
| Kubernetes | v1.28+ | 支持 CSI 1.6+ 与 Istio Ambient Mesh |
| Rook | v1.14+ | 稳定版,支持 Ceph Quincy |
| Ceph | Quincy (v17) | LTS 版本,生产推荐 |
| Istio | 1.20+ | 支持 Ambient Mesh 与 mTLS 自动配置 |
| Helm | v3.12+ | 用于部署 Rook Operator 与 Istio |
| 操作系统 | Ubuntu 22.04 LTS | 内核 5.15+,支持 RBD 内核模块 |
1.5.2 网络与存储规划
- 集群网络:所有节点位于同一二层网络,Pod CIDR 为 10.244.0.0/16,Service CIDR 为 10.96.0.0/12。
- 存储网络:建议为 Ceph OSD 复制流量单独规划 VLAN,本实验使用同一网络以简化配置。
- 数据盘:每个工作节点至少挂载 1 块未格式化磁盘(如 /dev/vdb),用于 OSD 数据存储。
- 证书规划:Istio Citadel 自动生成自签名证书;生产环境建议集成 cert-manager 与外部 CA。
实验准备提示:建议使用 kind 或 k3s 在本地搭建最小集群(1 控制面 + 3 工作节点),并提前安装 Helm 与 Docker。本课程所有 YAML 示例均可在该环境中直接运行。