K8s 核心组件及运行机制

K8s 核心组件及运行机制

作者:怪兽在此 2022-02-11 23:11:09

云计算

云原生 一个 Kubernetes 集群由一组被称作节点的机器组成。这些节点上运行 Kubernetes所管理的容器化应用。集群具有至少一个工作节点。

kubernetes核心组件及运行机制

一个 Kubernetes 集群由一组被称作节点的机器组成。这些节点上运行 Kubernetes所管理的容器化应用。集群具有至少一个工作节点。

工作节点托管作为应用负载的组件的 Pod 。控制平面管理集群中的工作节点和 Pod 。为集群提供故障转移和高可用性,这些控制平面一般跨多主机运行,集群跨多个节点运行。

k8s运行机制

API server

API server 的核心功能是提供k8s各类资源对象(如Pod、RC、Service)的增删改查及Watch等HTTP REST接口,成为集群内各个功能模块之间数据交互和通信的中心枢纽,是整个集群的数据总线和数据中心。 通常还具有以下功能。

  • 集群管理的API入口
  • 资源配额控制的入口
  • 提供了完备的集群安全机制。

通常我们会通过kubectl命令与API server进行交互,提供restful API,所以说也可以通过代码方式直接调用k8s的API server。

apiserver架构图

controller-manager

controller-manager 作为集群内部的管理控制中心,负责集群内部的Node、Pod、Endpoint、Namespace、ServiceAccount、ResourceQuota等的管理,意为控制器。

新版本replication controller 被ReplicaSet替代。

controller manager

从逻辑上讲,每个控制器都是一个单独的进程, 但是为了降低复杂性,它们都被编译到同一个可执行文件,并在一个进程中运行。

每个controller通过API server 提供的接口实时监控着集群里每个资源对象的状态,当发生各种故障导致系统状态发生变化,会尝试着将系统从“现有状态”修正到“期望状态”。

以下为一些控制器的作用

  • 节点控制器(Node Controller): 负责在节点出现故障时进行通知和响应 。
  • 端点控制器(Endpoints Controller): 填充端点(Endpoints)对象(即加入 Service 与 Pod)。
  • 服务帐户和令牌控制器(Service Account & Token Controllers): 为新的命名空间创建默认帐户和 API 访问令牌。

scheduler

kube-scheduler意为调度器,在集群承担了”承上启下”的重要功能,“承上”指的是它负责接收 Controller -manager创建的新Pod。为其安排一个可以安置的node;“启下”指的是安置完成之后,目前Node上的kubelet服务进程接管后继续工作,负责Pod生命周期中的下半生。

具体来说,Kubernetes Scheduler的作用是将待调度的Pod(API新创建的Pod、Controller Manager为补足副本而创建的Pod等)按照特定的调度算法和调度策略绑定(Binding)到集群中某个合适的Node上,并将绑定信息写入etcd中。在整个调度过程中涉及三个对象,分别是待调度Pod列表、可用Node列表,以及调度算法和策略。简单地说,就是通过调度算法调度为待调度Pod列表中的每个Pod从Node列表中选择一个最适合的Node。

scheduler运行机制

kubelet

一个在集群中每个节点(node)上运行的代理。 它保证容器(containers)都 运行在 Pod 中。

kubelet 接收一组通过各类机制提供给它的 PodSpecs,确保这些 PodSpecs 中描述的容器处于运行状态且健康。

kube-proxy

kube-proxy 是集群中每个节点上运行的网络代理, 实现 Kubernetes 服务(Service) 概念的一部分。

kube-proxy 维护节点上的网络规则。这些网络规则允许从集群内部或外部的网络会话与 Pod 进行网络通信。

如果操作系统提供了数据包过滤层并可用的话,kube-proxy 会通过它来实现网络规则。否则, kube-proxy 仅转发流量本身

这里介绍一下 RC RSDeployment的区别

  • replicationController POD管理控制器 老版本使用
  • replicaset 新版本的POD控制器,替代RC 支持集合式的selector:(version in (v1.0, v2.0)或env notin (dev, qa))
  • Deployment 声明式的pod部署方式 支持rolling update,Deployment为Pod和ReplicaSet提供声明式更新。

你只需要在Deployment中描述你想要的目标状态是什么,Deployment controller就会帮你将Pod和Replica

Set的实际状态改变到你的目标状态。你可以定义一个全新的Deployment,也可以创建一个新的替换旧的Deployment

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/260738.html<

(0)
管理的头像管理
上一篇2025-05-03 07:28
下一篇 2025-05-03 07:30

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注