安装 Calico 的两种主流方式对比

本文对比了 Calico 的两种主流安装方式:

  • 使用 calico.yaml 的 Manifest 安装方式
  • 使用 Tigera Operator(tigera-operator.yaml + custom-resources.yaml)安装方式

✅ 1. 使用 Manifest 方式安装(直接部署 calico.yaml)

这是最基础也最常用的安装方式之一,官方会根据 Kubernetes 版本提供一个适配的 calico.yaml 文件,包含所有必要的组件(如 calico-node、typha、CNI 配置等)。

🌟 特点:

  • 部署简单:只需一条命令即可快速部署
  • 无需额外组件:不依赖 Operator 等控制器
  • 适用于小型集群或快速测试

✅ 安装示例:

shell 复制代码
kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.27.0/manifests/calico.yaml

✅ 优点:

  • 快速上手,适合新手或临时环境
  • 可查看完整 YAML 文件结构,便于学习 Calico 的组件组成

❌ 缺点:

  • 灵活性较差,定制配置需要手动修改大量 YAML 内容
  • 不易升级、运维成本较高

✅ 2. 使用 Tigera Operator 安装(tigera-operator.yaml + custom-resources.yaml)

这是 Calico 官方推荐的 声明式安装方式 ,使用 Tigera Operator 管理 Calico 生命周期,并通过 custom-resources.yaml 配置网络参数,如 IP 池、网络策略、CNI 类型等。

🌟 特点:

  • 模块化安装:Tigera Operator 会根据自定义资源自动部署所需组件
  • 声明式配置:集中管理网络配置(IPAM、BGP、网络策略等)
  • 适用于生产环境,支持版本管理和后期维护

✅ 安装步骤:

第一步:安装 Operator

shell 复制代码
kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.27.0/manifests/tigera-operator.yaml

第二步:应用自定义资源配置

kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.27.0/manifests/custom-resources.yaml

✅ 优点:

  • 高度可定制,通过 CRD 管理网络配置
  • 易于升级与回滚
  • Operator 会自动处理组件部署、更新等工作

❌ 缺点:

  • 需要理解 Operator 和 CRD 的概念
  • 安装过程相对复杂,排查问题时可能涉及 Operator 日志

🆚 总结对比表:

项目 Manifest 安装(calico.yaml) Tigera Operator 安装
安装复杂度 ⭐⭐ 简单 ⭐⭐⭐ 中等偏高
可定制性 ⭐⭐ 一般(手动改 YAML) ⭐⭐⭐⭐ 高(声明式 CRD 配置)
升级与维护 ❌ 手动操作 ✅ Operator 自动处理
推荐场景 测试环境、小型集群 生产环境、中大型集群
官方推荐 ✅ 较为常用 ✅✅ 官方强烈推荐

📌 总结:

  • 快速部署测试 :选择 Manifest 安装
  • 长期稳定运维 :推荐使用 Tigera Operator + CRD 安装方式
相关推荐
lwx9148522 小时前
Docker-安装SSH服务
docker·容器·ssh
艾伦_耶格宇6 小时前
【kubernetes - 1.28版本】-11 K8S核心组件
java·容器·kubernetes
月落汀兰7 小时前
拒绝配置写死镜像!K8s 存储卷与配置管理,PV/PVC、ConfigMap、Secret 实战避坑指南
运维·kubernetes
艾伦_耶格宇8 小时前
【kubernetes - 1.28版本】-10 K8S命名空间
云原生·容器·kubernetes
tedcloud12310 小时前
Docker Compose 部署 Uptime Kuma:配置 HTTPS、QQ 邮箱告警与数据备份
服务器·网络协议·ui·docker·容器·https·开源
syntaxsage11 小时前
Dive:Docker 镜像层可视化分析工具
运维·其他·docker·容器
java_logo11 小时前
Docker 部署 Samba:轻松搭建局域网文件共享
运维·docker·容器·文件共享·samba·smb·轩辕镜像
todoitbo21 小时前
群晖NAS部署JmalCloud:Docker安装、文件管理、博客与公网访问完整教程
运维·docker·容器
是枚小菜鸡儿吖1 天前
Home Assistant跨品牌智能家居教程:Docker部署、米家接入、vivo桥接与远程访问
docker·容器·智能家居
螺蛳粉 螺蛳粉1 天前
第 02 篇:镜像分层与 containerd 2.x 实战:SystemdCgroup 与 pause 镜像配置踩坑(底座认知 02)
docker·云原生·容器·kubernetes·etcd·containerd·kube-apiserver