• k8s核心概念


    在这里插入图片描述

    Kubernetes 的 Master 包含四个主要的组件:API Server、Controller、Scheduler 以及 etcd

    Kubernetes 的架构:Master
    在这里插入图片描述

    API Server:顾名思义是用来处理 API 操作的,Kubernetes 中所有的组件都会和 API Server 进行连接,组件与组件之间一般不进行独立的连接,都依赖于 API Server 进行消息的传送;

    Controller:是控制器,它用来完成对集群状态的一些管理。如下两个例子之中,第一个自动对容器进行修复、第二个自动进行水平扩张,都是由 Kubernetes 中的 Controller 来进行完成的;
    在这里插入图片描述
    在这里插入图片描述

    Scheduler:是调度器,“调度器”顾名思义就是完成调度的操作,如下例子中,把一个用户提交的 Container,依据它对 CPU、对 memory 请求大小,找一台合适的节点,进行放置;
    在这里插入图片描述

    pod创建调度过程在这里插入图片描述用户可以通过 UI 或者 CLI 提交一个 Pod 给 Kubernetes 进行部署,这个 Pod 请求首先会通过 CLI 或者 UI 提交给 Kubernetes API Server,下一步 API Server 会把这个信息写入到它的存储系统 etcd,之后 Scheduler 会通过 API Server 的 watch 或者叫做 notification 机制得到这个信息:有一个 Pod 需要被调度。 这个时候 Scheduler 会根据它的内存状态进行一次调度决策,在完成这次调度之后,它会向 API Server report 说:“OK!这个 Pod 需要被调度到某一个节点上。” 这个时候 API Server 接收到这次操作之后,会把这次的结果再次写到 etcd 中,然后 API Server 会通知相应的节点进行这次 Pod 真正的执行启动。相应节点的 kubelet 会得到这个通知,kubelet 就会去调 Container runtime 来真正去启动配置这个容器和这个容器的运行环境,去调度 Storage Plugin 来去配置存储,network Plugin 去配置网络。etcd:是一个分布式的一个存储系统,API Server 中所需要的这些原信息都被放置在 etcd 中,etcd 本身是一个高可用系统,通过 etcd 保证整个 Kubernetes 的 Master 组件的高可用性。
    Kubernetes 的架构:Node
    在这里插入图片描述

    Kubernetes 的 Node 是真正运行业务负载的,每个业务负载会以 Pod 的形式运行。一个 Pod 中运行的一个或者多个容器,真正去运行这些 Pod 的组件的是叫做 kubelet,也就是 Node 上最为关键的组件,它通过 API Server 接收到所需要 Pod 运行的状态

    参考:https://edu.aliyun.com/course/314164/lesson/7815

  • 相关阅读:
    通过RS232串口调试服务器
    轻量级导出 Excel 标准格式
    Go运行时的内存分配器以及消耗指定大小的内存(C语言)
    QT进阶---------pro项目文件中的常用命令 (第三天)
    vue 登陆页面
    天振股份上市首日破发:市值蒸发约8亿元,方庆华夫妇为实控人
    计算机毕业设计python企业员工人事管理系统vue
    Windows10安装MySQL5.7.43
    互联网简史-分久必合,合久必分
    NodeJs - for循环的几种遍历方式
  • 原文地址:https://blog.csdn.net/qq_41128383/article/details/136174405