zoukankan      html  css  js  c++  java
  • k8s组件通信或者创建pod生命周期

    Kubernetes 多组件之间的通信原理:

    • apiserver 负责 etcd 存储的所有操作,且只有 apiserver 才直接操作 etcd 集群
    • apiserver 对内(集群中的其他组件)和对外(用户)提供统一的 REST API,其他组件均通过 apiserver 进行通信

      • controller manager、scheduler、kube-proxy 和 kubelet 等均通过 apiserver watch API 监测资源变化情况,并对资源作相应的操作
      • 所有需要更新资源状态的操作均通过 apiserver 的 REST API 进行
    • apiserver 也会直接调用 kubelet API(如 logs, exec, attach 等),默认不校验 kubelet 证书,但可以通过 --kubelet-certificate-authority 开启(而 GKE 通过 SSH 隧道保护它们之间的通信)

    比如最典型的创建 Pod 的流程: ​​k8s pod

    • 用户通过 REST API 创建一个 Pod
    • apiserver 将其写入 etcd
    • scheduluer 检测到未绑定 Node 的 Pod,开始调度并更新 Pod 的 Node 绑定
    • kubelet 检测到有新的 Pod 调度过来,通过 container runtime 运行该 Pod
    • kubelet 通过 container runtime 取到 Pod 状态,并更新到 apiserver 中
  • 相关阅读:
    POJ 3630
    Codeforces Round #219 (Div. 2) D题
    Codeforces Round #232 (Div. 2) On Sum of Fractions
    Codeforces Round #232 (Div. 2) C
    撸呀撸的左手(KMP+DP)
    hdu poj KMP简单题目总结
    LCT总结
    bzoj1019 [SHOI2008]汉诺塔
    NOIP2016总结
    p1199八数码问题
  • 原文地址:https://www.cnblogs.com/fuyuteng/p/10825595.html
Copyright © 2011-2022 走看看