开发者社区> 问答> 正文

等待调度有很多种情况指的是什么?

已解决

等待调度有很多种情况指的是什么?

展开
收起
游客zvexcvxjsyxmm 2022-06-30 19:15:04 1023 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    第一种情况是没 有分配节点,假如没有分配节点,那么可能是集群里没有地方调度,意味着整个集群的资源都 不够。或者是 pod 设置的时候,没有进行 Node select,即选择哪些 Node 进行调度。又或者 是污点,亲和性没有满足等情况,都有可能造成这个问题。

    第二种情况是已经分配节点,此时 这个节点肯定已经满足 K8S 的 pod 调度要求的,但是实际还是没有被调度在目标节点上运行, 有可能是因为这个节点上磁盘满了,也有可能是因为这个节点上的 pod 的 IP 池不够了,所以造 成了 pod 没有办法调度上去。

    可能还有一种情况 imagepull backoff ,即拉取镜像失败了。拉 取镜像失败可能是网络问题导致没有办法连接仓库,也有可能是和仓库之间进行的相关验证产 生问题了,还有可能用了 http 方式进行拿取,而不是 https 方式。如果用 http 方式,就必须要用另一种方式进行要求。

    还有可能是 crash loop back off,它表明这个 pod 曾经正常运行, 后来因为某种原因终止。终止出来的情况会显示 code, code 的值一般是 0-127。如果是 0 的话,表示它是正常终止,不需要额外关注;如果 code 是 1 到 127,那么可能需要看 pod 日 志。比如一个 pod 有两个容器的 nginx 和 centos,两个容器设置了不同的 CPU limit 限制以 及 restart count。如果它有不正常的重启, Exit code 会有状态码 1 到 127,很多时候可能是 和 pod 上的应用有关。比如说应用突然抛出了异常,或者说这个客户的这个应用是和 DNS 强相 关的,别的附属条件或者 DNS 没有正常运行,这个 pod 就一定会终止(有一定可能性),但 是这需要和业务设计相关,业务设计是这么按照逻辑设计的才有可能。

    以上内容摘自《企业运维之云原生和Kubernetes实战》,这本书收录在开发者“藏经阁,下载地址:https://developer.aliyun.com/topic/download?id=8529

    2022-06-30 22:06:15
    赞同 展开评论 打赏
问答分类:
来源圈子
更多
收录在圈子:
作为全球云计算的领先者,阿里云为全球230万企业提供着云计算服务,服务范围覆盖200多个国家和地区。我们致力于为企业、政府等组织机构提供安全可靠的云计算服务,给用户带来极速愉悦的服务体验。
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载