首页 > 其他分享 >k8s手撕架构图+详解

k8s手撕架构图+详解

时间:2024-06-23 20:56:34浏览次数:27  
标签:API 负载 架构图 详解 集群 Pod k8s 节点

1.架构图

这个架构图展示了一个典型的Kubernetes集群的结构和各个组件的作用。以下是详细解释

2.架构图整体介绍 

  1. Controller Plane(控制平面)
    • 负责管理和控制整个Kubernetes集群。
    • 包含以下组件:
      • etcd: 一个分布式键值存储,存储集群的所有数据。
      • Scheduler(调度器): 负责将Pod分配到合适的工作节点(Worker Node)。
      • Controller Manager(控制器管理器): 运行各种控制器,负责管理不同类型的控制循环,例如节点控制器、复制控制器等。
      • API Server(API服务器): 控制平面的入口,处理集群的所有REST请求,协调各组件的操作。
  2. Worker Nodes(工作节点)
    • 承载应用容器,运行实际的应用工作负载。
    • 每个工作节点包含以下组件:
      • kubelet: 管理节点上Pod的生命周期,确保容器按预期运行。
      • kube-proxy: 负责Pod的网络路由,为服务提供负载均衡。
      • CNI(Container Network Interface): 提供容器网络接口,管理Pod之间的网络连接。

3.流程与作用 

  1. 用户(橙色图标): 通过API Server与Kubernetes集群交互,例如提交部署请求。
  2. API Server: 接受用户请求,进行验证和处理,将请求写入etcd存储。
  3. etcd: 保存集群的所有状态和配置数据,例如节点信息、Pod定义等。
  4. Scheduler: 从etcd获取调度任务,将Pod分配到合适的工作节点。
  5. Controller Manager: 监控集群状态,确保系统达到所需的状态,例如确保正确数量的副本运行。
  6. Worker Nodes: 运行实际的应用工作负载。每个工作节点通过kubelet管理Pod,通过kube-proxy处理网络流量。
    • Pod: 最小的部署单元,一个或多个容器的集合,容器(c1, c2)运行在Pod中。
    • kubelet: 监听API Server的指令,启动和停止Pod中的容器。
    • kube-proxy: 维护网络规则,确保服务间的网络通信。
  7. Load Balancer(LB)和VIP: 提供外部流量入口,通过负载均衡器将流量分配到后端的服务。

4.网络流量 

  • 外部用户(蓝色图标)通过VIP访问集群,VIP将流量分配给负载均衡器(LB)。
  • 负载均衡器将流量路由到具体的工作节点上运行的Pod。

这张架构图展示了Kubernetes集群的核心组件及其工作流程,体现了如何管理和运行分布式应用。

标签:API,负载,架构图,详解,集群,Pod,k8s,节点
From: https://blog.csdn.net/dutianze/article/details/139904543

相关文章

  • Kubernetes之Service详解
    本文尝试从Service暴露服务方式、Service控制器实现原理、使用规范等方面对Kubernetes中的Service进行详细介绍。一、Kubernetes中的pod有哪些暴露服务的方式各种Kubernetes中暴露服务的方式都有其独特的优缺点,根据具体的使用场景和需求,选择合适的方式非常重要。下面......
  • 【Linux详解】冯诺依曼架构 | 操作系统设计 | 斯坦福经典项目Pintos
    目录一.冯诺依曼体系结构(VonNeumannArchitecture)注意事项存储器的意义:缓冲数据流动示例二.操作系统(OperatingSystem)操作系统的概念操作系统的定位与目的操作系统的管理系统调用和库函数操作系统的管理:sum三.系统调用实现示例:Pintos项目Step1:进入ex......
  • Structured Steaming结构化流详解:大案例解析(第12天)
    系列文章目录一、结构化流介绍(了解)二、结构化流的编程模型(掌握)三、Spark和Kafka整合,流处理,批处理演示(掌握)四、物联网数据分析案例(熟悉)文章目录系列文章目录前言StructuredSteaming一、结构化流介绍(了解)1、有界和无界数据2、基本介绍3、使用三大步骤(掌握)4、回......
  • Postman接口测试工具详解
    个人名片......
  • 【操作系统】信号Signal超详解|捕捉函数
    ......
  • Postman接口测试工具详解
    一、引言在现代软件开发和测试流程中,接口测试占据了举足轻重的地位。接口作为系统与系统之间、模块与模块之间数据交互的桥梁,其稳定性和可靠性直接关系到整个系统的性能和用户体验。Postman作为一款强大的接口测试工具,凭借其简单易用、功能丰富等特点,深受开发者和测试人员......
  • C语言中操作符详解(二)
    OK,今天继续为诸君带来有关C语言中操作符的讲解一.位操作符 C语言中的位操作符我相信大家并不陌生,我们在之前就已经接触过了一些位操作符(位操作符的操作数只能是整数):(1)&:按位与(同为1才为1,否则为0)(2)| :按位或(有1就为1)(3)^:按位异或(不同为1,否则为0)(4)~:按位......
  • 深度解析RocketMq源码-高可用存储组件(一) raft协议详解
    1.绪论前面的文章已经分析过,以前rocketmq通过主从复制的思想实现系统的高可用,即在搭建集群的时候会手动的设置一个主节点和从节点,在写入数据的时候,会先写入到主broker,然后再同步到从节点中。但是这样会有一个问题,就是主节点宕机过后,需要手动的修改从节点成为新的主节点。在roc......
  • win32API(CONSOLE 相关接口详解)
    前言:        Windows这个多作业系统除了协调应⽤程序的执⾏、分配内存、管理资源之外,它同时也是⼀个很⼤的服务中⼼,调⽤这个服务中⼼的各种服务(每⼀种服务就是⼀个函数),可以帮应⽤程式达到开启视窗、描绘图形、使⽤周边设备等⽬的,由于这些函数服务的对象是应⽤程序(App......
  • nginx架构&&基本数据结构&&配置&&模块&&请求详解
    初探nginx架构众所周知,nginx性能高,而nginx的高性能与其架构是分不开的。那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧。nginx在启动后,在unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。我们也可以手动地关掉后台模式,让ng......