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 模式与访问权限。

Rook Ceph + Istio 集成架构总览 Rook Ceph + Istio 集成架构总览 Kubernetes 集群 Rook Ceph 控制面 Rook Operator CephCluster CRD CephBlockPool / CephFilesystem CSI Provisioner Istio 控制面 Pilot (服务发现) Citadel (证书管理) Galley (配置校验) Ingress/Egress Gateway 存储数据面 MON / OSD / MGR RGW / MDS + Istio Sidecar (Envoy) 业务数据面 应用 Pod CSI 客户端 + Istio Sidecar (Envoy) mTLS 加密通信

1.3 课程目标

完成本课程后,学员将能够:

  1. 独立部署一个生产可用的 Rook Ceph 集群,并配置块存储、文件系统与对象存储。
  2. 配置 Istio 安全策略,为存储组件启用严格的 mTLS 与细粒度访问控制。
  3. 集成 Rook Ceph 与 Istio,确保存储控制面与数据面之间的通信加密与权限隔离。
  4. 诊断与排错常见的存储与安全策略冲突问题,如证书过期、策略拒绝、Sidecar 注入失败。
  5. 编写自动化策略,通过 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台) kubectl + helm istioctl + ceph-common 工作节点 (3台) OSD 数据盘 Istio Sidecar 注入 存储节点 (3台) MON / MGR / MDS RGW 对象网关 环境规格 K8s v1.28+ | Ceph Quincy (v17) | Istio 1.20+ OS: Ubuntu 22.04 LTS | 内核 5.15+ 每节点至少 4 vCPU / 8GB RAM / 50GB 空闲磁盘

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 示例均可在该环境中直接运行。