若要转载本文,请务必声明出处:https://www.cnblogs.com/zhongyuanzhao000/p/11401031.html

问题:

集群搭建的过程中,master节点初始化成功,但 node节点加入集群时却一直显示NotReady状态,如下:

使用kubeclt describe node xxxx 命令,发现报错:

  1. KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

进入node节点,执行 systemctl status kubeletjournalctl -xeu kubelet 命令,发现报错:

  1. Unable to update cni config: No networks found in /etc/cni/net.d

原因:

该错误意思是 CNI插件还未安装,所以状态会是NotReady。

解决:

方法一:

​ 编辑 /etc/systemd/system/kubelet.service.d/10-kubeadm.conf文件(有的是/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf文件),

​ 删除最后一行里的$KUBELET_NETWORK_ARGS 即可。

​ (该方法治标不治本,没能解决我的问题)

方法二:

​ 考虑到node节点的kubelet报错Unable to update cni config: No networks found in /etc/cni/net.d,并且master节点的/etc/cni/net.d目录里拥有10-flannel.conflist文件,

​ 我们可以把该文件从master节点复制到node节点的对应目录中,然后重启kubelet服务即可。

​ (该方法亡羊补牢,对我的问题也没用)

方法三:

​ 注意到master节点的/etc/cni/net.d/10-flannel.conflist文件是经过 安装flannel插件 才生成的,而node节点则是在master节点安装完flannel插件后才加入集群的,

​ 所以,我们不妨 先加入node节点,再执行 flannel插件的安装。

​ (该方法有取巧的嫌疑,但解决了我的问题)

k8s集群node节点一直NotReady, 且node节点(并非master)的kubelet报错:Unable to update cni config: No networks found in /etc/cni/net.d的更多相关文章

  1. 部署k8s集群之环境搭建和etcd单节点安装

    环境搭建以及etcd 单节点安装过程 安装之前的环境搭建 在进行k8s安装之前先把虚拟机准备好,这里准备的是三台虚拟机 主机名 ip地址 角色 master 172.16.163.131 master ...

  2. 二进制K8S集群使用Bootstrap Token 方式增加Node

    TLS Bootstraping:在kubernetes集群中,Node上组件kebelet和kube-proxy都需要与kube-apiserver进行通信,为了增加传输安全性,采用https方式, ...

  3. 搭建一个完整的K8S集群-------基于CentOS 8系统

    创建三个centos节点: 192.168.5.141 k8s-master 192.168.5.142 k8s-nnode1 192.168.5.143 k8s-nnode2 查看centos系统版 ...

  4. k8s 集群部署问题整理

    1.hostname “master” could not be reached在host中没有加解析 2.curl -sSL http://localhost:10248/healthzcurl: ...

  5. K8S集群 NOT READY的解决办法 1.13 错误信息:cni config uninitialized

    今天给同事 一个k8s 集群 出现not ready了 花了 40min 才搞定 这里记录一下 避免下载 再遇到了 不清楚. 错误现象:untime network not ready: Networ ...

  6. yum安装k8s集群

    k8s的安装有多种方式,如yum安装,kubeadm安装,二进制安装等.本文是入门系列,只是为了快速了解k8s的原理和工作过程,对k8s有一个快速的了解,这里直接采用yum安装 的1.5.2为案例进行 ...

  7. jenkins流水线部署springboot应用到k8s集群(k3s+jenkins+gitee+maven+docker)(2)

    前言:上篇已介绍了jenkins在k3s环境部署,本篇继续上篇讲述流水线构建部署流程 1.从gitlab上拉取代码步骤 在jenkins中,新建一个凭证:Manage Jenkins -> Ma ...

  8. 2.使用kubeadm快速搭建k8s集群

    准备工作: 时间同步 systemctl stop iptables.servicesystemctl stop firewalld.service 安装docker wget https://mir ...

  9. k8s 开船记-故障公告:自建 k8s 集群在阿里云上大翻船

    非常非常抱歉,新年上班第一天, 在今天阿里云上气候突变情况下,由于我们开船技术差,在今天 10:15~12:00 左右的访问高峰,我们竟然把船给开翻了,造成近2个小时整个博客站点无法访问,由此给您带来 ...

随机推荐

  1. ACM之Java输入输出

    本文转自:ACM之Java输入输出 一.Java之ACM注意点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错 ...

  2. 修改git log中的Date格式

    默认的git log查看日志显示的格式如下: Date:   Thu Aug 16 17:44:32 2018 +0800 说实话,真不太喜欢这种日期格式还是换成数值比较舒服一点.git bash中使 ...

  3. shell 文件的包含

    使用.或者source api.sh function intadd() { let data=$+$ echo $data } test.sh #!/bin/bash . api.sh read d ...

  4. nagios监控的安装

    本文中,物理机IP 192.168.1.105虚拟linux主机ip 192.168.1.10安装apache和phpApache 和Php 不是安装nagios 所必须的,但是nagios提供了we ...

  5. 冰多多团队alpha阶段发布说明

    标题:冰多多Alpha阶段发布说明 Alpha版本功能介绍 我们项目当前是两个部分,前端编辑器和后端mtermux是分开的,是两个独立的app项目,还没有完美的连起来(我们alpha阶段目标任务是不必 ...

  6. C++的static_cast、dynamic_cast和const_cast用法

    static_cast.dynamic_cast和const_cast static_cast: ​ 用法: static_cast < type-id > (expression) ​ ...

  7. UnityVR案例 - VR僵尸大战(HTC VIVE)

    使用HTCvive设备开发的一款射击类游戏(Unity5.6.3),玩家在游戏中使用手枪.手榴弹或者技能杀死僵尸. 亮点功能:手势识别,语音唤醒(关键词识别) 手势识别:玩家使用手柄在游戏中绘制事先录 ...

  8. yum -y install pip No package pip available. Error: Nothing to do

    centos下安装pip时失败: [root@wfm ~]# yum -y install pipLoaded plugins: fastestmirror, refresh-packagekit, ...

  9. 【laravel5.5+Passport】laravel5的前后端分离之Passport设计

    项目中使用到了laravel5的passport组件,进行前后端分离的 api认证部分: 前后端分离的api认证,我们用的是: [密码授权令牌],需要用户登录->指定client_id/clie ...

  10. HSBImageView--android--可以设置HSB值的imageview

    package guide.yunji.com.guide.view; import android.content.Context; import android.content.res.Typed ...