在当今云原生时代,Kubernetes(简称 K8s)已成为容器编排的事实标准。如果你正在使用 CentOS 系统,并希望搭建一个本地或测试用的 Kubernetes 集群,那么本教程将一步步带你完成整个过程。无论你是刚接触容器技术的新手,还是有一定经验的开发者,都能轻松跟着操作。
在开始之前,请确保你有以下环境:
以下命令需在 所有节点(包括 Master 和 Worker)上执行。
sudo systemctl stop firewalldsudo systemctl disable firewalld sudo setenforce 0sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config sudo swapoff -asudo sed -i '/ swap / s/^/#/' /etc/fstab cat < Kubernetes 需要一个容器运行时。这里我们使用 Docker(底层使用 containerd)。
# 安装必要工具sudo yum install -y yum-utils device-mapper-persistent-data lvm2# 添加 Docker 官方仓库sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 安装 Dockersudo yum install -y docker-ce docker-ce-cli containerd.io# 启动并设置开机自启sudo systemctl enable dockersudo systemctl start docker 这些是 Kubernetes 的核心组件。
# 添加 Kubernetes 官方 YUM 仓库cat < 仅在 Master 节点执行以下命令。
# 初始化集群(注意替换为你 Master 节点的 IP)sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=你的MasterIP 初始化成功后,你会看到类似以下的输出(请妥善保存):
Your Kubernetes control-plane has initialized successfully!To start using your cluster, you need to run the following as a regular user: mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/configThen you can join any number of worker nodes by running the following on each as root:kubeadm join 192.168.1.100:6443 --token abcdef.0123456789abcdef \ --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 按照提示配置 kubectl:
mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config Kubernetes 需要 CNI 网络插件来实现 Pod 间通信。这里我们使用 Flannel。
kubectl apply -f https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml 回到 Worker 节点,执行上一步中 kubeadm init 输出的 kubeadm join 命令(以 root 身份):
sudo kubeadm join 192.168.1.100:6443 --token abcdef.0123456789abcdef \ --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 回到 Master 节点,运行以下命令查看节点状态:
kubectl get nodes 如果一切正常,你会看到类似如下输出(STATUS 为 Ready):
NAME STATUS ROLES AGE VERSIONmaster Ready control-plane 10m v1.28.0worker1 Ready <none> 2m v1.28.0 恭喜!你已经成功在 CentOS 上搭建了一个功能完整的 Kubernetes 集群。通过本教程,你掌握了从系统配置、容器运行时安装到集群初始化和节点加入的全过程。这正是 新手入门 Kubernetes 的关键第一步。
后续你可以尝试部署 Nginx、MySQL 等应用,学习 Service、Ingress、PersistentVolume 等高级概念,逐步深入云原生世界。
记住,实践是最好的老师。动手操作,才能真正掌握 CentOS Kubernetes集群搭建 的精髓!
本文由主机测评网于2025-12-22发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20251211359.html