K8s 主节点初始化

关闭 swap

提示:所有节点都操作

swapoff -a

vim /etc/fstab
# 注释掉 swap 挂载行

提前拉取镜像

提示:所有节点都操作

kubeadm config images pull \
  --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers \
  --kubernetes-version 1.30.3

主节点初始化

注意:只在主节点操作

kubeadm init --apiserver-advertise-address 192.168.1.25 \
  --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers \
  --cri-socket "unix:///var/run/containerd/containerd.sock" \
  --kubernetes-version 1.30.3

若初始化失败,则执行

# 重置初始化
# kubeadm reset -f

# 若执行后还是失败,则排查日志
# tail -100f /var/log/syslog

初始化成功后的返回信息

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/config

Alternatively, if you are the root user, you can run:

  export KUBECONFIG=/etc/kubernetes/admin.conf

You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
  https://kubernetes.io/docs/concepts/cluster-administration/addons/

Then you can join any number of worker nodes by running the following on each as root:

kubeadm join 192.168.1.25:6443 --token 1nn1dz.lrmynzo5r441rd3c \
        --discovery-token-ca-cert-hash sha256:4087cff827b1d9af04a2e096c16bc07ccbe01ca70d270ae38b6f7a7a8c828f88

指定 KUBECONFIG 配置文件

# 为当前用户指定配置文件,否则 kubectl 命令无法执行
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
  
# root 用户的另一种指定方式
# export KUBECONFIG=/etc/kubernetes/admin.conf

测试

kubectl get node

Last updated