重新部署一套K8S集群时,由于K8S需要扁平化的网络,所以当执行下面的

  1. root@master ~]# kubectl apply -f kube-flannel.yml

会开始下载镜像,然后去启动,结果等了几分钟,一直没有好

  1. [root@k8s-master ~]# kubectl get pod -n kube-system
  2. NAME READY STATUS RESTARTS AGE
  3. coredns-58cc8c89f4-9gn5g 0/1 Pending 0 27m
  4. coredns-58cc8c89f4-xxzx7 0/1 Pending 0 27m
  5. etcd-k8s-master 1/1 Running 1 26m
  6. kube-apiserver-k8s-master 1/1 Running 1 26m
  7. kube-controller-manager-k8s-master 1/1 Running 1 26m
  8. kube-flannel-ds-amd64-2dqlf 0/1 Init:ImagePullBackOff 0 11m
  9. kube-proxy-rn98b 1/1 Running 1 27m
  10. kube-scheduler-k8s-master 1/1 Running 1 26m
  11. [root@k8s-master ~]# kubectl get pod -n kube-system

去查询pod

  1. [root@k8s-master ~]# kubectl describe pod kube-flannel-ds-amd64-2dqlf -n kube-system
  2. Name: kube-flannel-ds-amd64-2dqlf
  3. Namespace: kube-system
  4. Priority: 0
  5. Node: k8s-master/192.168.180.130
  6. Start Time: Thu, 19 Dec 2019 22:36:13 +0800
  7. Labels: app=flannel
  8. controller-revision-hash=67f65bfbc7
  9. pod-template-generation=1
  10. tier=node
  11. Annotations: <none>
  12. Status: Pending
  13. IP: 192.168.180.130
  14. IPs:
  15. IP: 192.168.180.130
  16. Controlled By: DaemonSet/kube-flannel-ds-amd64
  17. Init Containers:
  18. install-cni:
  19. Container ID:
  20. Image: quay.io/coreos/flannel:v0.11.0-amd64
  21. Image ID:
  22. Port: <none>
  23. Host Port: <none>
  24. Command:
  25. cp
  26. Args:
  27. -f
  28. /etc/kube-flannel/cni-conf.json
  29. /etc/cni/net.d/10-flannel.conflist
  30. State: Waiting
  31. Reason: ImagePullBackOff
  32. Ready: False
  33. Restart Count: 0
  34. Environment: <none>
  35. Mounts:
  36. /etc/cni/net.d from cni (rw)
  37. /etc/kube-flannel/ from flannel-cfg (rw)
  38. /var/run/secrets/kubernetes.io/serviceaccount from flannel-token-r52cd (ro)
  39. Containers:
  40. kube-flannel:
  41. Container ID:
  42. Image: quay.io/coreos/flannel:v0.11.0-amd64
  43. Image ID:
  44. Port: <none>
  45. Host Port: <none>
  46. Command:
  47. /opt/bin/flanneld
  48. Args:
  49. --ip-masq
  50. --kube-subnet-mgr
  51. State: Waiting
  52. Reason: PodInitializing
  53. Ready: False
  54. Restart Count: 0
  55. Limits:
  56. cpu: 100m
  57. memory: 50Mi
  58. Requests:
  59. cpu: 100m
  60. memory: 50Mi
  61. Environment:
  62. POD_NAME: kube-flannel-ds-amd64-2dqlf (v1:metadata.name)
  63. POD_NAMESPACE: kube-system (v1:metadata.namespace)
  64. Mounts:
  65. /etc/kube-flannel/ from flannel-cfg (rw)
  66. /run/flannel from run (rw)
  67. /var/run/secrets/kubernetes.io/serviceaccount from flannel-token-r52cd (ro)
  68. Conditions:
  69. Type Status
  70. Initialized False
  71. Ready False
  72. ContainersReady False
  73. PodScheduled True
  74. Volumes:
  75. run:
  76. Type: HostPath (bare host directory volume)
  77. Path: /run/flannel
  78. HostPathType:
  79. cni:
  80. Type: HostPath (bare host directory volume)
  81. Path: /etc/cni/net.d
  82. HostPathType:
  83. flannel-cfg:
  84. Type: ConfigMap (a volume populated by a ConfigMap)
  85. Name: kube-flannel-cfg
  86. Optional: false
  87. flannel-token-r52cd:
  88. Type: Secret (a volume populated by a Secret)
  89. SecretName: flannel-token-r52cd
  90. Optional: false
  91. QoS Class: Burstable
  92. Node-Selectors: <none>
  93. Tolerations: :NoSchedule
  94. node.kubernetes.io/disk-pressure:NoSchedule
  95. node.kubernetes.io/memory-pressure:NoSchedule
  96. node.kubernetes.io/network-unavailable:NoSchedule
  97. node.kubernetes.io/not-ready:NoExecute
  98. node.kubernetes.io/pid-pressure:NoSchedule
  99. node.kubernetes.io/unreachable:NoExecute
  100. node.kubernetes.io/unschedulable:NoSchedule
  101. Events:
  102. Type Reason Age From Message
  103. ---- ------ ---- ---- -------
  104. Normal Scheduled <unknown> default-scheduler Successfully assigned kube-system/kube-flannel-ds-amd64-2dqlf to k8s-master
  105. Warning Failed 5m29s kubelet, k8s-master Failed to pull image "quay.io/coreos/flannel:v0.11.0-amd64": rpc error: code = Unknown desc = context canceled
  106. Warning Failed 4m21s (x2 over 5m2s) kubelet, k8s-master Failed to pull image "quay.io/coreos/flannel:v0.11.0-amd64": rpc error: code = Unknown desc = Error response from daemon: Get https://quay.io/v2/: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
  107. Normal Pulling 3m31s (x4 over 7m5s) kubelet, k8s-master Pulling image "quay.io/coreos/flannel:v0.11.0-amd64"
  108. Warning Failed 3m18s (x4 over 5m29s) kubelet, k8s-master Error: ErrImagePull
  109. Warning Failed 3m18s kubelet, k8s-master Failed to pull image "quay.io/coreos/flannel:v0.11.0-amd64": rpc error: code = Unknown desc = Error response from daemon: Get https://quay.io/v2/coreos/flannel/manifests/v0.11.0-amd64: Get https://quay.io/v2/auth?scope=repository%3Acoreos%2Fflannel%3Apull&service=quay.io: net/http: TLS handshake timeout
  110. Normal BackOff 3m5s (x6 over 5m29s) kubelet, k8s-master Back-off pulling image "quay.io/coreos/flannel:v0.11.0-amd64"
  111. Warning Failed 2m2s (x11 over 5m29s) kubelet, k8s-master Error: ImagePullBackOff

发现时镜像拉取失败的原因,有可能时网络原因导致的,之前都没有遇到过

  1. kube-flannel-ds-amd64-2dqlf 0/1 Init:ImagePullBackOff 0 11m

这个状态,应该时yaml中,有一个InitC,初始化的容器,便去查看一番

所以只能把别的集群中的镜像导出一份,在导入

  1. [root@k8s-master mnt]# docker load -i flannel.tar
  2. 7bff100f35cb: Loading layer [==================================================>] 4.672MB/4.672MB
  3. 5d3f68f6da8f: Loading layer [==================================================>] 9.526MB/9.526MB
  4. 9b48060f404d: Loading layer [==================================================>] 5.912MB/5.912MB
  5. 3f3a4ce2b719: Loading layer [==================================================>] 35.25MB/35.25MB
  6. 9ce0bb155166: Loading layer [==================================================>] 5.12kB/5.12kB
  7. Loaded image: quay.io/coreos/flannel:v0.11.0-amd64
  8. [root@k8s-master mnt]# docker images
  9. REPOSITORY TAG IMAGE ID CREATED SIZE
  10. registry.aliyuncs.com/google_containers/kube-apiserver v1.16.0 b305571ca60a 3 months ago 217MB
  11. registry.aliyuncs.com/google_containers/kube-proxy v1.16.0 c21b0c7400f9 3 months ago 86.1MB
  12. registry.aliyuncs.com/google_containers/kube-controller-manager v1.16.0 06a629a7e51c 3 months ago 163MB
  13. registry.aliyuncs.com/google_containers/kube-scheduler v1.16.0 301ddc62b80b 3 months ago 87.3MB
  14. registry.aliyuncs.com/google_containers/etcd 3.3.15-0 b2756210eeab 3 months ago 247MB
  15. registry.aliyuncs.com/google_containers/coredns 1.6.2 bf261d157914 4 months ago 44.1MB
  16. quay.io/coreos/flannel v0.11.0-amd64 ff281650a721 10 months ago 52.6MB
  17. registry.aliyuncs.com/google_containers/pause 3.1 da86e6ba6ca1 24 months ago 742kB
  18. [root@k8s-master mnt]# cd
  1. [root@k8s-master ~]# kubectl get node
  2. NAME STATUS ROLES AGE VERSION
  3. k8s-master Ready master 54m v1.16.1
  4. k8s-node01 NotReady <none> 15m v1.16.1
  5. k8s-node02 Ready <none> 17m v1.16.1
  6. [root@k8s-master ~]# kubectl get pod -n kube-system
  7. NAME READY STATUS RESTARTS AGE
  8. coredns-58cc8c89f4-9gn5g 1/1 Running 0 54m
  9. coredns-58cc8c89f4-xxzx7 1/1 Running 0 54m
  10. etcd-k8s-master 1/1 Running 1 53m
  11. kube-apiserver-k8s-master 1/1 Running 1 53m
  12. kube-controller-manager-k8s-master 1/1 Running 2 53m
  13. kube-flannel-ds-amd64-4bc88 1/1 Running 0 17m
  14. kube-flannel-ds-amd64-lzwd6 1/1 Running 0 19m
  15. kube-flannel-ds-amd64-vw4vn 1/1 Running 0 15m
  16. kube-proxy-bs8sd 1/1 Running 1 15m
  17. kube-proxy-nfvtt 1/1 Running 0 17m
  18. kube-proxy-rn98b 1/1 Running 1 54m
  19. kube-scheduler-k8s-master 1/1 Running 1 53m
  20. [root@k8s-master ~]# kubectl get node
  21. NAME STATUS ROLES AGE VERSION
  22. k8s-master Ready master 54m v1.16.1
  23. k8s-node01 Ready <none> 15m v1.16.1
  24. k8s-node02 Ready <none> 17m v1.16.1

稍等一会,就可以了。由于百度云连接经常失效,有需要镜像的,可以和我联系

k8s中flannel:镜像下载不了的更多相关文章

  1. 使用kubeadm安装kubernetes/部署前准备/flannel网络插件/镜像下载/

    本文内容参考<kuberneters进阶实战>/马哥的新书/推荐 部署前的准备 主机名称解析 分布式系统环境中的多主机通信通常基于主机名称进行,这在IP地址存在变化的可能性时为主机提供了固 ...

  2. [转帖]k8s.gcr.io镜像无法下载的问题

    k8s.gcr.io镜像无法下载的问题 https://blog.51cto.com/liuzhengwei521/2301497 看了下 赵安家老师应该是青岛人 在济南顺能网络科技有限公司上班 铭盛 ...

  3. k8s.gcr.io、gcr.io仓库的镜像下载

    镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 获取这类镜像的方法一般有2种: 1.通过拉取国内镜像仓库的内容(操作简单直接拉取即可,缺点是镜像的版本更新可能较慢,可能无法获取最新的镜像) 2 ...

  4. 新版的K8S中的flannel.yaml文件中要注意的细节

    部署flannel作为k8s中的网络插件,yaml文件都大小同异. 但在要注意以下细节. 以前,只需要前面master判断. 现在也需要有not-ready状态了. tolerations: - ke ...

  5. 转 docker创建私有仓库和k8s中使用私有镜像

    docker私有仓库建立 环境说明我们选取192.168.5.2做私有仓库地址yum install docker -y1.启动docker仓库端口服务 docker run -d -p 5000:5 ...

  6. 【解决】k8s 1.15.2 镜像下载方案

    k8s 国内镜像下载方案 众所周知,国内是不太容易下载k8s.gcr.io站点的镜像的 一.第一种方案:Azure中国镜像站 http://mirror.azure.cn/help/gcr-proxy ...

  7. 如何在K8S中优雅的使用私有镜像库 (Docker版)

    前言 在企业落地 K8S 的过程中,私有镜像库 (专用镜像库) 必不可少,特别是在 Docker Hub 开始对免费用户限流之后, 越发的体现了搭建私有镜像库的重要性. 私有镜像库不但可以加速镜像的拉 ...

  8. eclipse javaEE版下载过程中选择镜像(Select Another Mirror)无反应解决办法,附带eclipse javaEE版下载教程。

    1.eclipse javaEE版下载过程中选择镜像(Select Another Mirror)无反应 (复制该网址下载即可 https://mirrors.neusoft.edu.cn/eclip ...

  9. 入门 - k8s滚动更新部署中的镜像版本 (七)

    目标 使用 kubectl 执行 Rolling Update(滚动更新) 更新应用程序 用户期望应用程序始终可用,为此开发者/运维者在更新应用程序时要分多次完成.在 Kubernetes 中,这是通 ...

随机推荐

  1. [转帖]Linux查找文件6个高效工具

    Linux查找文件6个高效工具 https://www.linuxrumen.com/rmxx/176.html 需要实操 -inname -type 等等. 1. 前言 我们使用Linux过程中,经 ...

  2. 【pytorch】学习笔记(三)-激励函数

    [pytorch]学习笔记-激励函数 学习自:莫烦python 什么是激励函数 一句话概括 Activation: 就是让神经网络可以描述非线性问题的步骤, 是神经网络变得更强大 1.激活函数是用来加 ...

  3. python基础_面向对象

    面向对象定义 把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(inheritance) ...

  4. leetcode难题

    4 寻找两个有序数组的中位数       35.9% 困难     10 正则表达式匹配       24.6% 困难     23 合并K个排序链表       47.4% 困难     25 K ...

  5. 北大 ACM highways问题研究(最小生成树)

    #include<stdlib.h> #include<stdio.h> #include<queue> struct vertex//代表一个村庄 { int m ...

  6. 剑指offer-左旋转字符串-知识迁移能力-python

    题目描述汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abcX ...

  7. java中的异常和处理详细理解

    异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error:如果你用System.ou ...

  8. jenkins操作TreeView,展开合并

    双击treeview 双击选中的部分,使treeview展开合并 Opt() #include <GUIConstantsEx.au3> #include <GuiTreeView. ...

  9. Caffe之prototxt

    1.可视化工具: http://ethereon.github.io/netscope/quickstart.html 2.常用网络模型caffe-model之.prototxt: https://g ...

  10. ubuntu终端安装最新ss

    有时候因为加密方式比较新,比如aes-256-gcm,导致旧版本的不能用 一句命令安装ss最新版本 aes-256-gcm加密方式可以用,没毛病