zoukankan      html  css  js  c++  java
  • pod创建的流程

    kubernetes Pod创建 的 工作流:
    第一步:
    kubectl 向api server 发起一个create pod 请求 
    第二步:
    api server接收到pod创建请求后,不会去直接创建pod,而是生成一个包含创建信息的yaml。
    第三步:
    apiserver 将刚才的yaml信息写入etcd数据库。到此为止仅仅是在etcd中添加了一条记录, 还没有任何的实质性进展。
    第四步:
    scheduler 查看 k8s api ,类似于通知机制。
    首先判断:pod.spec.Node == null?
    若为null,表示这个Pod请求是新来的,需要创建;因此先进行调度计算,找到最“闲”的node。
    然后将信息在etcd数据库中更新分配结果:pod.spec.Node = nodeA (设置一个具体的节点)
    ps:同样上述操作的各种信息也要写到etcd数据库中中。
    第五步:
    kubelet 通过监测etcd数据库(即不停地看etcd中的记录),发现api server 中有了个新的Node;
    如果这条记录中的Node与自己的编号相同(即这个Pod由scheduler分配给自己了);
    则调用node中的docker api,创建container。
  • 相关阅读:
    Linux基础ls命令
    Linux基础tree命令
    Java银行调度系统
    Java交通灯系统
    Java反射
    Java基础IO流
    Java多线程
    Java集合框架
    Springmvc的一些属性功能
    JS
  • 原文地址:https://www.cnblogs.com/peteremperor/p/14043593.html
Copyright © 2011-2022 走看看