可以,Kubernetes(K8s)完全可以在 CentOS 上运行,而且这是非常常见和成熟的组合之一。
下面给你一个清晰、实用的说明:
建议使用 CentOS Stream 9 或 Rocky Linux / AlmaLinux(RHEL 替代品)
| 方式 | 是否推荐 | 说明 |
|---|---|---|
| kubeadm | ✅ 强烈推荐 | 官方标准方式 |
| 二进制手动部署 | ⚠️ 高级 | 学习原理用 |
| minikube | ✅ | 本地单机测试 |
| k3s / kind | ✅ | 轻量 / CI 环境 |
以 CentOS Stream 9 + kubeadm 为例:
# 关闭防火墙
systemctl disable firewalld --now
# 关闭 SELinux
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
# 禁用 swap
swapoff -a
sed -i '/swap/d' /etc/fstab
yum install -y containerd
mkdir -p /etc/containerd
containerd config default > /etc/containerd/config.toml
systemctl enable containerd --now
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.29/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.29/rpm/repodata/repomd.xml.key
EOF
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet
kubeadm init --pod-network-cidr=10.244.0.0/16
然后配置 kubectl:
mkdir -p $HOME/.kube
cp /etc/kubernetes/admin.conf $HOME/.kube/config
kubectl apply -f https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml
| 项目 | 建议 |
|---|---|
| OS | Rocky Linux / AlmaLinux / CentOS Stream |
| 容器运行时 | containerd |
| 网络插件 | Calico / Cilium |
| 管理方式 | kubeadm / Rancher |
✅ Kubernetes 可以在 CentOS 上稳定运行,生产环境完全可行,但建议使用 CentOS Stream 或 RHEL 衍生发行版。
如果你愿意,我可以: