我们有一个本地 k3s 集群,用于我们的暂存环境,以重现类似于我们的生产环境的内容。今天,我们的单个节点已达到其极限,因此我们决定添加一个新节点。
我买了一台新的物理服务器,刚刚安装了 Ubuntu Server 24.04.1 LTS。下一步是安装 k3s agent 使其加入现有集群。我按照在线文档进行操作:
curl -sfL https://get.k3s.io | K3S_URL=https://192.168.1.1:6443 K3S_TOKEN=<my master token> sh -
然后,我检查一切是否准备就绪kubectl get nodes
:
NAME STATUS ROLES AGE VERSION
serv1 Ready control-plane,master 382d v1.28.5+k3s1
serv2 Ready <none> 117s v1.31.4+k3s1
但是当第一个 pod 被分配给这个新节点时,它的状态为CreateContainerConfigError
。使用 描述 pod 时kubectl describe pod
,我可以看到这个错误:
Warning Failed 12s (x2 over 13s) kubelet Error: services have not yet been read at least once, cannot construct envvars
我在网上找到了一些关于此错误的信息。看来我们的两台服务器之间出了问题,由于某种原因,它们无法正常通信。但由于新节点被标记为Ready
,我不明白问题出在哪里……
我也在这里发现了完全相同的情况,但似乎没有分享真正的解决方案。
有人知道这个问题的原因吗?