文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

K8S工作原理详解(图文全面总结)

2024-11-28 14:05

关注

K8S 能够帮助开发者、和运维人员,自动化应用的部署、扩展、和管理,适用于构建云原生应用。

图片图片

K8S ,能自动将容器化应用,分配到合适的节点(服务器)上,通过自动调度来确保资源合理分配,最大化资源利用率。

K8S 适合,管理由多个小服务组成的微服务架构,提供自动扩展、自愈、和负载均衡,保证服务的高可用性、和弹性伸缩..等场景。

K8S工作原理

K8S 是一个分布式系统,主要由 Master 节点(主节点)、和Node节点(工作节点)**组成:

如下图所示:

图片图片

Master 节点负责:整个集群的管理、和调度,而 Node 节点则负责运行应用容器,这是K8S的大致分工。

Master 节点

Master,负责管理整个集群的控制、和调度,决定哪些应用实例部署在 Node 上。

Master,主要包含以下组件:

API Server

APIServer,负责:接收用户的请求,并将请求转化为操作指令交由后端的其他组件执行。

图片图片

API Server 是集群的入口,所有对 K8S 的操作,如:资源创建、修改、删除...等,都是通过 HTTP 请求与 API Server 交互的。

所有组件都通过 API Server 通信,确保系统的统一性、和安全性,有点类似“微服务网关”的角色。

etcd

etcd,是分布式键值存储数据库,用于保存集群状态信息。

API Server 是 K8S 集群的“控制中心”,与 etcd 进行交互以保存、和检索集群的配置信息、和状态数据。

etcd,会存储:配置信息、Pod 状态、Service 配置...等,所有的配置信息都存储在 etcd 中。

etcd 使用 Raft 协议保证数据一致性,确保即使在集群部分节点失效时,etcd 中的数据依然是可靠的。

Scheduler

调度器,负责:将新创建的 Pod 分配到合适的 Node 节点上。

Scheduler 根据资源使用情况,比如:(CPU、内存等)、拓扑信息(网络、节点可用性...等等),以及调度策略进行选择。

Controller Manager

Controller Manager ,是 K8S 中的控制器执行者,负责:管理各种控制器。

例如:副本控制器、节点控制器、服务控制器...等,如下图所示:

图片图片

Controller Manager,负责:管理集群的控制循环,包括:节点状态监控、Pod 副本数量维护、处理故障节点。。。等。

Controller Manager ,通过循环检查集群的当前状态,并与期望状态进行比较。

如果存在不一致的地方,控制器会启动相应的操作以纠正实际状态。

比如:ReplicaSet 控制器会确保在任何时刻,Pod 的副本数都、与用户定义的副本数一致。

Node 节点

Node节点,也称为工作节点,负责运行具体的容器化应用,接受 Master 的任务调度。

图片图片

K8S的工作流程,大致如下:

  1. 创建和提交资源定义:用户通过 YAML 文件或 kubectl 命令,提交 Deployment 、或 Pod 等资源定义到 API Server;
  2. API Server 处理请求:API Server 验证请求,并将资源定义保存到 etcd,确保资源定义的持久性;
  3. 调度和部署:检测到新创建的 Pod,并通过资源调度策略选择合适的 Node 节点;
  4. 监控与维护:Controller Manager 持续监控集群状态,出现异常时自动重启、或重新调度。

这些组件共同合作,确保 K8S 集群的资源管理、调度、监控和自愈功能顺利运行。

来源:mikechen的互联网架构内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯