一文带你了解K8S组件架构

 

控制平面组件(Control Plane Components)

1. kube-apiserver

相当于一个通信部门(秘书部),其他的部门都需要经过API进行信息的传递。

  • 功能:作为Kubernetes的前端,提供REST API,处理所有的REST请求,对象的创建、更新、删除、查询等操作。
  • 作用:集群的统一入口,所有的组件通过它进行通信。

2. etcd

相当于一个数据库,它会将所有部门的操作信息记录到数据库当中。

  • 功能:分布式键值存储,用于保存Kubernetes的所有集群数据。
  • 作用:持久化存储集群的配置信息、状态信息等,是K8S的数据库。

3. kube-scheduler

相当于调度者,将不同的项目调度到不同的NODE节点上。

  • 功能:负责将Pod调度到集群的各个节点上。
  • 作用:根据预设的调度策略和当前集群的状态,选择最合适的节点来运行新的Pod。

4. kube-controller-manager

相当于公司里的老板,进行决策,决策完成之后,通知秘书部门进行传递信息。

  • 功能:运行各种控制器(如节点控制器、复制控制器、端点控制器、命名空间控制器等)。
  • 作用:监控Kubernetes对象状态,并确保实际状态符合期望状态(如维护副本数量,处理失效节点)。

5. cloud-controller-manager

相当于公司当中的外联部,决定是否要与其他公司合作

  • 功能:与云提供商交互的控制器。
  • 作用:管理云提供商特有的控制逻辑,如负载均衡器、存储卷等。

工作节点组件(Node Components)

1. kubelet

相当于工厂中的厂长,负责监控工厂的运作。

  • 功能:负责与控制平面交互,管理本地Pod和容器。
  • 作用:接收kube-apiserver的指令,管理容器的生命周期,监控容器状态。

2. kube-proxy

相当于工厂的门卫大爷,负责安保和引路。

  • 功能:实现Kubernetes的服务(Service)抽象,为每个节点提供网络代理服务。
  • 作用:管理网络规则,处理Pod间的网络通信和负载均衡。

3. Container Runtime

  • 功能:负责运行和管理容器的运行时环境。
  • 作用:执行容器的实际操作,如启动、停止容器。常见的容器运行时包括Docker、containerd、CRI-O等。

辅助组件

1. DNS(CoreDNS)

  • 功能:为Kubernetes集群中的服务提供DNS服务。
  • 作用:解析服务名和Pod名,使其能够通过DNS进行通信。

2. Dashboard

  • 功能:Kubernetes的Web用户界面。
  • 作用:提供一个直观的界面来管理和监控Kubernetes集群。

3. kubectl

  • 功能:命令行工具,用于与Kubernetes集群进行交互。
  • 作用:通过命令行执行各种Kubernetes操作,如创建、查看、删除资源等。

4. Metrics Server

  • 功能:收集和聚合集群级别的资源使用数据(如CPU、内存)。
  • 作用:为自动伸缩和监控提供必要的数据支持。
  • 8
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Kubernetes (k8s)是一种用于自动化应用程序部署、扩展和管理的开源容器编排平台。在k8s中,Pod是最小的可调度和可管理的单位,也是应用程序的运行实例。 Pod是一组共享资源的容器集合,它们运行在同一个节点上,并共享相同的网络命名空间和存储卷。一个Pod通常包含一个或多个紧密相关的容器,它们共享相同的生命周期和资源。这些容器之间可以通过本地主机上的localhost进行通信。 Pod的设计理念是将一组密切相关的容器放在同一个Pod中,以便它们能够轻松地共享资源,包括存储和网络。Pod可以在Kubernetes上进行水平扩展,即通过增加Pod的数量来增加应用程序的容量和吞吐量。 Pod是临时的和短暂的,它可以在任何时候被创建、销毁或重新创建。这个设计使得应用程序变得弹性和可伸缩,并支持故障恢复。当Pod被销毁时,Kubernetes会自动重新创建一个新的Pod来替代它,以保持应用程序的可用性。 Pod具有唯一的IP地址,并且可以由其他Pod或外部网络访问。它还可以指定一些元数据(如标签和注释),以方便按需选择和管理Pod。通过使用Pod模板,可以定义Pod的规范,包括容器映像、资源要求和环境变量等。 总之,Pod是Kubernetes中的基本概念,它是一组紧密相关的容器的运行实例。Pod提供了容器之间共享资源的环境,并支持弹性扩展和故障恢复。通过使用Pod,我们可以更高效地管理和部署我们的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

元气满满的热码式

感谢您的支持!我会继续努力发布

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值