zoukankan      html  css  js  c++  java
  • 通过例子理解 k8s 架构【转】

    为了帮助大家更好地理解 Kubernetes 架构,我们部署一个应用来演示各个组件之间是如何协作的。

    执行命令

    kubectl run httpd-app --image=httpd --replicas=2

    等待一段时间,应用部署完成。

    Kubernetes 部署了 deployment httpd-app,有两个副本 Pod,分别运行在 k8s-node1 和 k8s-node2

    详细讨论整个部署过程。

    ① kubectl 发送部署请求到 API Server。

    ② API Server 通知 Controller Manager 创建一个 deployment 资源。

    ③ Scheduler 执行调度任务,将两个副本 Pod 分发到 k8s-node1 和 k8s-node2。

    ④ k8s-node1 和 k8s-node2 上的 kubelet 在各自的节点上创建并运行 Pod。

    补充两点:

    1. 应用的配置和当前状态信息保存在 etcd 中,执行 kubectl get pod 时 API Server 会从 etcd 中读取这些数据。

    2. flannel 会为每个 Pod 都分配 IP。因为没有创建 service,目前 kube-proxy 还没参与进来。

    Kubernetes 架构就讨论到这里。从下节开始,我们将通过实践深入学习 Kubernetes 的各种特性。作为容器编排引擎,最重要也是最基本的功能当然是运行容器化应用。下节见。

  • 相关阅读:
    SpringBoot整合系列-整合H2
    SpringBoot整合系列-整合Swagger2
    BZOJ3626 [LNOI2014]LCA
    BZOJ4475 [Jsoi2015]子集选取
    BZOJ4466 [Jsoi2013]超立方体
    BZOJ3997 [TJOI2015]组合数学
    BZOJ3996 [TJOI2015]线性代数
    BZOJ2227 [Zjoi2011]看电影(movie)
    BZOJ2337 [HNOI2011]XOR和路径
    BZOJ2330 [SCOI2011]糖果
  • 原文地址:https://www.cnblogs.com/twobrother/p/11081907.html
Copyright © 2011-2022 走看看