1. 课程导论:Cilium与Helm的关系、为什么需要镜像加速、课程目标与前置知识
1.1 Cilium 与 Helm 的关系:从部署到拓扑管理
Cilium 作为基于 eBPF 的云原生网络、安全与可观测性方案,其组件(Agent、Operator、CNI 插件、Hubble Relay 等)在 Kubernetes 集群中以 DaemonSet、Deployment、ConfigMap 等形式运行。Helm 是 Kubernetes 的包管理工具,通过 Chart 将 Cilium 的复杂资源定义、参数化配置与版本管理统一封装。
两者的核心关系可概括为:Helm 是 Cilium 生命周期管理的标准化载体,Cilium 是 Helm 在复杂网络拓扑下的典型应用场景。在生产环境中,Cilium 的安装、升级、参数调优几乎全部通过 Helm Chart 完成。
关键认知: 没有 Helm,Cilium 的部署将退化为手工管理数百行 YAML;没有 Cilium,Helm 的镜像拉取效率在大型集群中会成为性能瓶颈。本课程正是围绕这两者的交叉点展开。
前置检查: 确保已安装 Helm v3.8+ 和 kubectl v1.24+,并拥有目标集群的 admin 权限。
1.2 为什么需要镜像加速:Cilium 场景下的三大痛点
Cilium 的 Helm Chart 默认引用的容器镜像托管在 quay.io/cilium 或 docker.io/cilium。在以下场景中,镜像拉取速度直接决定集群就绪时间:
| 痛点 | 典型场景 | 影响 |
|---|---|---|
| 大规模集群启动 | 100+ 节点同时拉取 Cilium Agent 镜像 | 镜像拉取时间从 30s 延长至 5min+,Pod 启动阻塞 |
| 离线/受限环境 | 私有云、政务云、边缘节点无公网访问 | Chart 安装直接失败,无法完成部署 |
| 频繁版本升级 | Cilium 1.14 → 1.15 全集群滚动更新 | 每个节点重新拉取新镜像,网络带宽被占满 |
注意: Cilium Agent 镜像大小通常在 200MB~500MB 之间,且包含 eBPF 内核对象文件。如果镜像拉取超时或失败,会导致节点网络中断,影响整个集群的数据平面。
1.3 课程目标与学习路径
本课程旨在帮助学员掌握在 Cilium 网络拓扑下,如何通过 Helm Chart 仓库镜像加速技术,实现快速、稳定、可复制的镜像分发。完成本课程后,你将能够:
- 理解 Cilium Helm Chart 的镜像引用机制与 values.yaml 配置体系
- 搭建 本地/内网 Helm Chart 仓库镜像(如 Harbor、ChartMuseum)
- 配置 Cilium 使用私有镜像仓库,并验证拉取链路
- 优化 大规模集群下的镜像预热策略与并发拉取控制
- 排查 镜像拉取失败、认证错误、网络超时等常见问题
1.4 前置知识要求
为获得最佳学习体验,建议学员具备以下基础:
| 领域 | 具体要求 | 推荐资源 |
|---|---|---|
| Kubernetes | 理解 Pod、Service、DaemonSet、ConfigMap 等核心资源 | Kubernetes 官方文档基础教程 |
| Helm | 掌握 helm install/upgrade/rollback 基本命令 | Helm 官方 Getting Started |
| 容器镜像 | 了解镜像分层、仓库、tag 机制 | Docker 官方文档 |
| 网络基础 | 理解 HTTP/HTTPS 代理、DNS 解析、TCP 连接 | 《计算机网络》基础章节 |
学习建议: 本课程包含大量实操环节,建议准备一个至少 3 节点的 Kubernetes 测试集群(可使用 Kind 或 Minikube 模拟),并提前安装 Helm 3.8+ 和 Docker。