Kubernetes 架构

Kubernetes 架构

在本文中,将介绍各种 Kubernetes 组件

什么是 Kubernetes?

Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器工作负载和服务,有助于声明式配置和自动化。

Kubernetes 架构或组件

Kubernetes 集群由一个控制平面和一组 工作机器(称为节点)组成。节点可以是虚拟机或物理服务器。应该有至少一个控制平面节点(正式称为主节点)来管理集群和至少一个工作节点(或从节点)。控制平面节点和工作节点都有自己的组件。

控制平面节点的组件:

  • Kube API Server
  • Kube Scheduler
  • etcd
  • Kube Controller Manager
  • Cloud Controller Manager

1. Kube API Server:

控制平面的关键组件是 Kube API Server,它公开了一个 HTTP API,允许最终用户、集群的各个部分和外部组件相互通信。

Kubernetes API 让我们可以查询和操作 Kubernetes 中不同 API 对象的状态,比如 Pod、服务、复制控制器等。

Kubernetes API 服务器的主要实现是kube-apiserver。kube -apiserver旨在水平扩展,即通过部署更多实例进行扩展。您可以运行多个kube-apiserver实例并平衡这些实例之间的流量。

与 API Server 的交互可以通过三种方式完成:

  • UI
  • API
  • CLI Kubectl
  • 2. Kube Scheduler

    调度程序监控新创建的 Pod,并选择一个工作节点供他们运行。

    3.etcd

    etcd 是一个一致且高可用性的键值存储组件,存储 Kubernetes 的所有集群数据备,包括集群状态、集群配置等。

    我们可以用 Zookeeper 和 Consul 等其他键值存储替换ectd,但是,etcd 是官方支持的 k/v 存储,并且是 Kubernetes 推荐和生产测试的选择。

    4. Kube Controller Manager

    通过 apiserver 监视集群的共享状态并进行更改以将当前状态移回所需状态的控制循环。

    Kubernetes 带有一组内置控制器,它们在 kube-controller-manager 下运行,例如Job 控制器和Deployment 控制器。

    5.cloud Controller Manager

    云控制器管理器让我们 将集群链接到特定云提供商的 API,并将与该云平台交互的组件与仅与我们的集群交互的组件分开。

    cloud-controller-manager 仅运行特定于特定云提供商的控制器。

    工作节点的组件:

    节点组件在每个节点上运行。它的工作是维护运行中的 pod 并提供 Kubernetes 运行时环境。

    • Kubelet
    • Kube Proxy
    • Container runtime
    • Containers & Pods

    1. kubelet

    Kubelet 相当于代理,分布在每个节点,定期从kube-apiserver组件接收新的或修改的Pod规范,并确保Pod及其容器在期望规范下运行。同时该组件作为工作节点的监控组件,向kube-apiserver汇报主机的运行状况。

    2. Kube proxy

    Kube Proxy 是运行在每个节点上的网络代理。它维护节点上的网络规则,这些网络规则允许从集群内部或外部的网络会话与我们的 Pod 进行网络通信。

    3.Container runtime

    容器运行时,也称为容器引擎,是一个软件组件,它的工作是运行容器。具体来说,容器运行时负责验证和加载容器镜像,监控系统资源,隔离和分配资源,还负责容器生命周期的管理。

    为了执行所有这些活动,容器运行时使用标准化接口来协调资源,包括:

    • 容器存储接口 (CSI)管理容器如何访问存储设备
    • 容器网络接口 (CNI)说明 容器如何通过网络进行通信

    容器运行时的一些示例是containerd、CRI-O、Docker Engine 和 Mirantis Container Runtime。

    4. 容器和 Pod

    Pod 是 Kubernetes中最小的单元。Pod 抽象出容器层,因此您可以直接与 Kubernetes 层交互。

    Pod 旨在在多个容器中运行一个应用程序。例如,DB Pod、Job Pod、Frontend App Pod 和后端 API Pod。我们可以在同一个 Pod 中运行多个应用程序,但这些容器将紧密耦合。

    每个 Pod 都有自己的私有 IP 地址。容器将在不同的端口上运行。容器可以通过 localhost 相互通信。

    每个 Pod 都可以附加一个共享存储卷。Pod 中的所有容器将共享相同的卷。

    当 Pod 中最后一个剩余的容器死亡或崩溃时,Pod 也会如此。当创建一个新 Pod 来替换死掉或崩溃的 Pod 时,该 Pod 将分配一个 IP 地址。IP 地址对于 Pod 来说是临时的,默认情况下它们不会持久存在。

    上面的 K8s 架构中还提到了其他可选的 K8s 对象,例如 Deployment、ReplicaSet 等,我将在单独的文章中解释。

    郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
    (0)
    用户投稿
    上一篇 2022年6月21日
    下一篇 2022年6月21日

    相关推荐

    • JCP – 为水的两种明显稳定的液体状态提供证据

      自1992年首次提出以来,单组分系统水中存在两种不同的液体一直是一个重要的研究领域。以前对“玻璃”(一种没有形成晶体的固化状态)向液态转变的研究主要集中在由结晶冰制成的非晶态样品上…

      2022年8月18日
    • 广西广电网络与中电建广西建投确立全面战略合作伙伴关系

      e公司讯,6月22日,广西广电网络公司与中电建广西建设投资有限公司签订战略合作协议,共同推动智慧化业务发展。双方将以此次战略合作协议的签订为契机,依托“数”“网”优势,通过5G网络…

      2022年6月25日
    • 87岁曾江隔离酒店猝死:娶过3个女人,拍过303部戏,早已看淡生死

      上世纪50年代,香港影坛有一炙手可热的当红女星名叫林翠(原名曾懿贞)。 出身商贾世家的她家境优渥,长相俏皮明丽,被大众封为“学生情人”。 林翠家中还有一个同样颜值优异的哥哥,名叫曾…

      2022年5月10日
    • 妻子发微信:“我老公不在,快来”,同事:“下了班就来找你”

      在现如今网络如此发达的时代,大家可以从各个地方了解到全国大事小事,正所谓世界之大无奇不有,每天都发生着奇奇怪怪的事情,今天小编突然看到这样一件事,看完之后都不知道说什么好了。 王某…

      2022年11月26日
    • 打造核心竞争力 辛选创始人辛巴构建多维度品控体系

      近年来,直播电商火热依旧,但用户的关注点已经从主播转移到产品本身,这使得直播电商企业愈发重视产品品质,各家企业纷纷投入升级品质管理体系的队伍之中。在一众直播电商企业中,辛选集团创始…

      2022年8月4日
    • 《幸福到万家》普通人想涅槃逆袭的必备条件是什么?

      我不希望大家看到了电视剧里的女性角色,永远拘泥于小情小爱,总是为了男人斗来斗去,依附男人。我希望他们能够拥有更丰富的思想,积极去追求自己的信仰。男人如果有英雄梦,为什么女人就不行呢…

      2022年7月16日
    • 终身受用的20句话,(建议收藏)

      01 有国才有家,有家才有我。热爱祖国永远是每个人的人生底线。不管你是什么行业,什么生活水平,请把这颗炙热的心藏在心底,并且永远炙热! 02 下雨了,给自己撑好伞。累了,让自己休息…

      2022年6月28日
    • 公务员最吃香的五个部门 待遇最好的公务员岗位盘点

      不确定的年代,果然只有公务员是最吃香的行业。宇宙的尽头是编制,编制的尽头是公务员。 在多数人的心中,公务员一直是铁饭碗一般的存在,无论是应届毕业生还是已经参与工作的人,都希望考取公…

      2022年8月16日
    • 理解 RAFT 分布式共识算法

      理解 RAFT 分布式共识算法——第 1 部分 为什么我们需要共识 我们大多数人在我们的编程生涯中至少使用过一次关系数据库,如 MySQL、Oracle。当您INSERT或UPDA…

      2022年6月24日
    • 禁止第三方平台自营药品?京东健康、阿里健康股价大跌

      以后不能在网上买药了?今天,一则消息引爆舆论! 国家药监局发布《中华人民共和国药品管理法实施条例(修改草案征求意见稿)》,其中指出:第三方平台提供者不得直接参与药品网络销售活动。 …

      2022年6月24日

    联系我们

    联系邮箱:admin#wlmqw.com
    工作时间:周一至周五,10:30-18:30,节假日休息