二进制部署k8sv1.24.10改kubeadm部署
kubeadm初始化失败记录分享
过程:
- 备份etcd集群数据
- 停止组件节点,二进制通过systemd管理,备份或删除相关service文件及安装包
/usr/lib/systemd/system/kube-*
/usr/local/bin/kube-*
3.删除或备份/etc/kubernetes/目录下数据
4.核对kubeadm、kubelet、kubectl版本
5. kubeadn初始化
kubeadm init \
--apiserver-advertise-address=$本地IP \
--control-plane-endpoint=$apiserver地址单master可以不加此行 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.24.10 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 \
--cri-socket=unix:///var/run/cri-dockerd.sock \
--ignore-preflight-errors=all
6.由于没有删除kubelet配置文件导致init失败超时
I0325 20:20:04.876158 54869 uploadconfig.go:110] [upload-config] Uploading the kubeadm ClusterConfiguration to a ConfigMap
[upload-config] Storing the configuration used in ConfigMap "kubeadm-config" in the "kube-system" Namespace
[kubelet-check] Initial timeout of 40s passed.
etcdserver: request timed out
error uploading the kubeadm ClusterConfiguration
k8s.io/kubernetes/cmd/kubeadm/app/cmd/phases/init.runUploadKubeadmConfig
删除或备份kubelet数据文件,/var/lib/kubelet/*
kubeadm安装时需要注意有/usr/lib/systemd/system/kubelet.serivce.d/10-kubeadm.conf
7.admin.conf文件位于/etc/kubernetes/下
二进制部署时该文件为手动创建的名字,需要在etc/profile/中的文件内容–export KUBECONFIG=/etc/kubernetes/admin.conf