CentOS 上 Kubernetes 安装与配置
一 环境准备与系统要求
swapoff -a && sed -i '/swap/s/^/#/' /etc/fstabsystemctl stop firewalld && systemctl disable firewalldsetenforce 0 && sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/configcat >/etc/sysctl.d/k8s.conf <<EOF net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1 net.ipv4.ip_forward=1 EOF && sysctl -p /etc/sysctl.d/k8s.confyum install -y chrony && systemctl enable --now chronydecho "<Master_IP> k8s-master" >> /etc/hosts二 安装容器运行时与 Kubernetes 组件
yum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoyum install -y docker-ce docker-ce-cli containerd.io && systemctl enable --now dockercat <<EOF | tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-\$basearch/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
yum install -y kubelet kubeadm kubectl && systemctl enable --now kubelet三 初始化 Master 节点
kubeadm init \
--apiserver-advertise-address=<Master_IP> \
--image-repository=registry.aliyuncs.com/google_containers \
--kubernetes-version=<VERSION> \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16
常见取值:<VERSION> 选择已安装的版本(如 v1.22.x),--pod-network-cidr 需与所选 CNI 插件一致。mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
kubeadm join ...,请妥善保存以供 Worker 加入使用。四 部署 CNI 网络插件与加入 Worker 节点
--pod-network-cidr 保持一致):
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yamlkubectl apply -f https://raw.githubusercontent.com/coreos/flannel/v0.11.0/Documentation/kube-flannel.ymlkubeadm join ... 命令。kubectl get nodes
kubectl get pods -A
等待所有节点状态为 Ready、核心系统 Pod 均为 Running。五 常见问题与优化建议
registry.aliyuncs.com/google_containers)并配置 Docker 镜像加速;必要时在 kubeadm init 中显式指定 --image-repository。kubectl describe node <node>、sysctl -p、chrony 状态。