在 CentOS 上部署 Kubernetes(k8s),常用的网络方案(CNI 插件)主要有下面几种,按使用频率和推荐程度来说:
适用场景:生产环境、对网络性能和安全有要求
特点
部署简单
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
✅ CentOS + kubeadm 部署首选
适用场景:学习、测试、简单集群
特点
部署
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
⚠️ 生产环境不太推荐,但非常稳
适用场景:高性能、eBPF、云原生安全
特点
kubectl apply -f https://raw.githubusercontent.com/cilium/cilium/v1.14/install/kubernetes/quick-install.yaml
✅ 新项目、高版本内核推荐
br_netfiltermodprobe br_netfilter
echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables
kubeadm init --pod-network-cidr=192.168.0.0/16
(Calico 默认用 192.168.0.0/16)
| 场景 | 推荐 |
|---|---|
| 学习 / 测试 | Flannel |
| 生产环境 | Calico |
| 高性能 / 新内核 | Cilium |
| 云厂商 | 云自带 CNI |
如果你愿意,我可以:
你现在是 CentOS 几?单节点还是多节点?