基本的docker命令:

docker 镜像 打包成文件

sudo docker save -o  打包后的文件名   {镜像ID}或者{镜像标签}

docker 改名:

docker tag ff281650a721 quay.io/coreos/flannel:v0.11.0-amd64

删除node节点

# master上执行
kubectl drain 节点名称 --delete-local-data --force --ignore-daemonsets
kubectl delete node 节点名称 # 节点执行:
kubeadm reset

节点重启

systemctl enable kubelet
systemctl restart kubelet 或者 service kubelet start

实例:node01

# master上执行
kubectl drain node01 --delete-local-data --force --ignore-daemonsets
kubectl delete node node01 # 节点执行:
kubeadm reset

使用kubeadm工具部署k8s-V1.13.3版本遇见的坑(使用镜像:CentOS7)

  1. 在部署k8s1.13.3的过程中,node节点flannel网络组件镜像pull不下来的情况(master节点的flannel镜像是已经下载下来了)。

    """
    主要的思路为:将master节点中flannel镜像打包成为文件,发送给node节点,然后node通过加载文件的方式将镜像还原。
    1. 将master节点中flannel镜像打包成为文件。
    docker save -o ./plf.tar {镜像的ID}
    2. 发送到其他的node节点
    3. 还原镜像(node节点执行),同时需要把镜像打tag值
    docker load < {镜像文件} 或者 docker load --input {镜像文件}
    docker tag ff281650a721 quay.io/coreos/flannel:v0.11.0-amd64
    4. 在master节点上删除node节点
    详细步骤见上“删除node节点”
    5. 将node节点重新加入到集群中
    """
  2. note节点在加入集群时,一定要记住加上--ignore-preflight-errors=Swap的参数

  3. node节点反复添加之后,需要在添加之前清除一下node节点的网络。

    反复添加之后,master节点报错:

    因此需要在node节点执行如下操作:

    1. 重置kubernetes服务,重置网络。删除网络配置,link

    kubeadm reset
    systemctl stop kubelet
    systemctl stop docker
    rm -rf /var/lib/cni/
    rm -rf /var/lib/kubelet/*
    rm -rf /etc/cni/
    ifconfig cni0 down
    ifconfig flannel.1 down
    ifconfig docker0 down
    ip link delete cni0
    ip link delete flannel.1
    systemctl start docker

    2. 再次加入到master集群中

走过的K8S坑的更多相关文章

  1. APP测试走过的那些坑

    我现在的工作有一大部分也是app测试,虽然自己是app开发出身,但是在测试上还是跌入了很多大坑,毕竟二者还是有很大不同,所处的角度也是不一样的.而开发转测试中,我认为较难的也是一个角度的转换,以一个开 ...

  2. 记录一下自己写PHP程序时走过的一些坑

    写在前面: 喔噢,转眼间发现自己正式开发程序(PHP)已经有快有1个月了,一路上走了许多的坑,有时遇到坑的时候真想放弃,但是还是坚持下来了!所以写了这篇文章来帮助那些刚刚接触PHP的小白们.[: )] ...

  3. MongoDB走过的坑(4.0.3版本)

    数据存储一般使用本地或者存储在数据库,MongoDB是一个非关系型数据库,今天小结下走过的一些坑. 1.网上的很多教程对自己无效 解决方法:这种情况一般都是和版本有关系,数据库在不断的更新发展,很多东 ...

  4. k8s遇坑:The connection to the server k8s-api.virtual.local:6443 was refused - did you specify the right host or port?

    k8s坑The connection to the server localhost:8080 was refused - did you specify the right host or port ...

  5. EDM模板编写踩坑指南(非响应式,纯table有源码)

    如果问你table布局,你肯定会嗤之以鼻?什么table布局?不是早已经淘汰了吗?但是如果让你写EDM邮件模板,table布局相对来说是最好的选择. 如果让你立刻写EDM,你在网上搜的话,得到的信息相 ...

  6. APP测试的那些坑

    在记录app测试走过的那些坑之前,先总结下app测试的工作主要有哪些:   1.功能测试,无论是什么软件产品,必不可少的就是功能测试.我们需要测试这款app产品的功能是否完善,是否符合客户需求,是否符 ...

  7. IE6下a标签上发送ajax请求总是error

    IE6下真是处处是坑啊!!!走过了一个又一个坑,记录一下吧. 之前不知道a标签上注册click事件之后,发送ajax请求总是error.后来经过几番网上搜索,终于找到高人遇到此坑的解决办法.原来是a标 ...

  8. ERP不规范,同事两行泪

    最近的很多次对外交流,都聊到了ERP建设的话题,并且无一例外的不那么让人省心,回想我这么多年走过的ERP坑坑路,在这里也写下经验和总结,希望能给正在或者即将走上ERP建设路的企业一些思考和帮助. 导读 ...

  9. 一点不懂到小白的linux系统运维经历分享

    进入运维行业刚不到二个年头, 刚刚从大白变成小白.都说it行业是青春的饭.但是运维行业可不这么认为.运维工程师便是经验技术的积累,经历的过的沟沟坑坑都会融入你的血液,成为你的智慧. 二年前接触linu ...

随机推荐

  1. How to make mail more effectively?

    1.What does your reader need to know? 2.What does your reader know already? 3.Will your reader be ab ...

  2. Lingo简单入门,以及对线性规划做敏感性分析设置

    Lingo中用!表示注释,注释结束用;表示,lingo不区分大小写,运行时会自动统一装换成大写 编程步骤: 1.推算出正确的模型 2.确定描述集,定义集合 3.确定变量 4.正确写出每个式子 常用函数 ...

  3. get_class和get_called_class的区别

    get_class ()       获取当前调用方法的类名get_called_class()    获取静态绑定后的类名 class Foo{ public function test() { v ...

  4. vue 实现todolist,包含添加,删除,统计,清空,隐藏功能

    vue 实现todolist,包含添加,删除,统计,清空,隐藏功能 添加:生成列表结构(v-for+数组).获取用户输入(v-model).通过回车新增数据(v-on+.enter) 删除:点击删除指 ...

  5. 【经典数据结构】B树与B+树的解释

    本文转载自:http://www.cnblogs.com/yangecnu/p/Introduce-B-Tree-and-B-Plus-Tree.html 前面讲解了平衡查找树中的2-3树以及其实现红 ...

  6. python在线测试代码及教程

    python/Java在线测试代码:http://www.pythontutor.com/visualize.html#mode=edit廖雪峰Python教学:https://www.liaoxue ...

  7. dubbo+zookeeper搭建笔记

    参考博客: http://blog.csdn.net/u013142781/article/details/50396621#reply http://blog.csdn.net/u013142781 ...

  8. C++:打开一个文件夹下一系列的文件

    可以用MFC的CFileFind类: FILE *pFile=NULL; CFileFind cff; CString fstr="C:\\page\\*.*"//所以用文件和文件 ...

  9. 题解 SP8284 WEIGHT - Weighted Sum

    SP8284 WEIGHT - Weighted Sum 题意描述 给出长度为n(n<=1e6)的序列A, A中元素可能为正数,可为负数或0,.让你构造一个长度为n的序列W,给这些整数A赋权,使 ...

  10. 专题一 Java基础语法

    小辨析: println 输出字符后,下一个输出的字符会换行展示 print 输出字符后,下一个输出字符不会会换展示 system.out.println()  空格 分支结构:if-else使用说明 ...