温馨提示×

centos k8s怎样加节点

小樊
41
2026-09-09 09:47:49
栏目: 智能运维

在 CentOS 上向 Kubernetes(k8s)集群添加节点,通常步骤如下(以 kubeadm 搭建的集群为例,最常见):


一、前提条件

  • 已有 k8s 控制节点(Master)
  • 新节点是 CentOS 7/8
  • 网络互通(防火墙/SELinux 已处理)
  • 所有节点 时间同步(NTP)
  • 所有节点 hostname 不重复

二、新节点基础环境准备(在所有新节点执行)

1. 关闭防火墙 & SELinux

systemctl stop firewalld
systemctl disable firewalld

setenforce 0
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

2. 关闭 swap

swapoff -a
sed -i '/swap/s/^/#/' /etc/fstab

3. 设置主机名

hostnamectl set-hostname node1

4. 配置内核参数

cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

sysctl --system

5. 安装容器运行时(以 containerd 为例)

yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y containerd.io

mkdir -p /etc/containerd
containerd config default > /etc/containerd/config.toml

systemctl restart containerd
systemctl enable containerd

三、安装 kubeadm / kubelet / kubectl

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF

yum install -y kubelet kubeadm kubectl
systemctl enable kubelet

四、在 Master 节点生成加入命令

在 Master 上执行:

kubeadm token create --print-join-command

输出类似:

kubeadm join 192.168.1.10:6443 \
  --token abcdef.0123456789abcdef \
  --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxx

五、新节点加入集群

在 新节点 执行上面输出的命令:

kubeadm join 192.168.1.10:6443 \
  --token abcdef.0123456789abcdef \
  --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxx

六、验证节点是否加入成功

在 Master 上:

kubectl get nodes

状态从 NotReady → Ready 即成功。


七、常见问题排查

  • NotReady:检查 CNI(如 Calico / Flannel)是否安装
  • 端口不通:检查 6443、10250
  • token 过期:
kubeadm token create --ttl 0

如果你用的是 RKE / kubesphere / 二进制部署,或想加的是 Master 节点,可以告诉我,我给你对应方案。

0 踩