请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

kubeadm init失败不知道为什么原因

kubeadm失败,偶尔成功了之后执行kubectl get pode也报错:
图片描述
不知道是不是网络引起。

我的网络环境与视频中的区别是:
我用vbox安装的虚拟机启用了两个网卡:网卡1使用网络地址转换,网卡2使用桥接。如果改成跟视频一样的使用nat 网络会上不了网(baidu ping不通)
图片描述
图片描述

并且通过修改/etc/netplan/00-installer-config.yaml

图片描述
获得了静态ip地址:
图片描述

我的网络环境尝试跟视频不一样的做法,原因是:1.解决虚拟机上网并得到静态ip地址;2.考虑往后商用场景肯定不是虚拟机环境,因此不想依赖于虚拟机强相关的环境。但是我不确定这样做是否会引起别的问题,更具体地:kubeadm init失败是否跟它有关——以我目前对k8s的了解还无法判断这一点。

总结一下我的疑问:

  1. 创建虚拟机nat网络是否是必需的?
  2. 我尝试的网络配置是否是导致了kubeadm init的失败的原因?我该如何解决?

正在回答 回答被采纳积分+3

2回答

提问者 蝴蝶是保护动物 2021-02-07 11:02:14

https://img1.sycdn.imooc.com//szimg/601f552308bb080610380658.jpg

如图所示:kubeadm init提示是成功的,但是get node失败,发现并没有监听6443端口。


我这时候还没有k8s2和k8s3



0 回复 有任何疑惑可以回复我~
  • tonybai #1
    从你的截图来看,你的kube-apiserver似乎没有启动成功啊。如果apiserver没有启动ok,那么就无法用kubectl来诊断了。你ps 命令看一下当前进程列表是否有kube-apiserver。如果没有,通过docker ps -a查看一下是否有exit状态的kube-apiserver。使用docker log看一下容器的日志。看看失败日志是啥/
    回复 有任何疑惑可以回复我~ 2021-02-07 14:00:45
tonybai 2021-02-02 16:09:08
  1. 在我的网络里设置nat就是为了vm能访问外网;如果你无需访问外网或设置不同方式访问外网,可以不设置nat;

  2. get pod失败原因很多,网络配置到的各个node无法访问apiserver是一个;还有可能就是k8s集群没有真正起来或网络cni组件没有真正run起来,可以逐一排查

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信