kubernetes - kubernetes - 无法加入主节点 - 错误执行阶段预检:无法验证 API 服务器的身份
问题描述
我是 k8s 的新手,所以对于具有 k8s 专业知识的人来说,这可能是一个非常简单的问题。
我正在使用两个节点
- 主控 - 2cpu,2 GB 内存
- worker - 1 个 CPU,1 GB 内存
- 操作系统-ubuntu-hashicorp/bionic64
我确实成功设置了主节点,我可以看到它已启动并正在运行
vagrant@master:~$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
master Ready master 29m v1.18.2
这是我生成的令牌
vagrant@master:~$ kubeadm token create --print-join-command
W0419 13:45:52.513532 16403 configset.go:202] WARNING: kubeadm cannot validate component configs for API groups [kubelet.config.k8s.io kubeproxy.config.k8s.io]
kubeadm join 10.0.2.15:6443 --token xuz63z.todnwgijqb3z1vhz --discovery-token-ca-cert-hash sha256:d4dadda6fa90c94eca1c8dcd3a441af24bb0727ffc45c0c27161ee8f7e883521
问题- 但是当我尝试从工作节点加入它时,我得到了
vagrant@worker:~$ sudo kubeadm join 10.0.2.15:6443 --token xuz63z.todnwgijqb3z1vhz --discovery-token-ca-cert-hash sha256:d4dadda6fa90c94eca1c8dcd3a441af24bb0727ffc45c0c27161ee8f7e883521
W0419 13:46:17.651819 15987 join.go:346] [preflight] WARNING: JoinControlPane.controlPlane settings will be ignored when control-plane flag is not set.
[preflight] Running pre-flight checks
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
error execution phase preflight: couldn't validate the identity of the API Server: Get https://10.0.2.15:6443/api/v1/namespaces/kube-public/configmaps/cluster-info?timeout=10s: dial tcp 10.0.2.15:6443: connect: connection refused
To see the stack trace of this error execute with --v=5 or higher
这是被占用的端口
10.0.2.15:2379
10.0.2.15:2380
10.0.2.15:68
请注意,我正在使用来自 -
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
解决方案
使用这个--apiserver-advertise-address对我有用:
sudo kubeadm init --apiserver-advertise-address=172.16.28.10 --pod-network-cidr=192.168.0.0/16
kubectl apply -f https://docs.projectcalico.org/v3.8/manifests/calico.yaml
我用过印花布并为我工作。
在加入的成员节点中:
kubeadm join 172.16.28.10:6443 --token 2jm9hd.o2gulx4x1b8l1t5d \ --discovery-token-ca-cert-hash sha256:b8b679e86c4d228bfa486086f18dcac4760e5871e8dd023ec166acfd93781595
推荐阅读
- javascript - 通用类型数组 lint 警告 Array<>
- c++ - 在最少的操作中实现字符串所有字符的相同频率。(所有字符都从 'a' 到 'z')
- c# - wpf 使用 bitmapimage 作为 TransformedBitmap 的源
- java - 如何将 UTF-16 编码的 char 转换为 CP855 编码的 char?
- wordpress - 每个术语分类一个帖子
- performance - 为什么程序永远不会在完全相同的时间执行?
- django - 重定向到 https django 后出现 502 错误网关
- entity-framework - 禁用延迟加载时,如何仅将导航属性的特定属性包含到实体框架的查询中?
- powershell - 如何在 Visual Studio Code 中停止正在运行的 PowerShell 命令?
- windows - HideCaret() 对 Windows XP (x64) 没有影响