当前位置: 首页 > news >正文

【k8s001】K8s架构浅析


Kubernetes 架构浅析

Control Plane
Worker Nodes
kube-apiserver
etcd
kube-scheduler
kube-controller-manager
kubelet
kube-proxy
Container Runtime

Kubernetes(简称 K8s)是一个用于管理容器化应用的系统,它的架构主要分为两部分:控制平面(Control Plane)工作节点(Worker Nodes)。它们协同工作,确保应用能够高效运行。

1. 控制平面(Control Plane)

控制平面是 Kubernetes 的大脑,负责管理和协调整个集群。它包含以下核心组件:

1.1 kube-apiserver

  • 作用:作为集群的“总指挥”,接收所有的操作指令(比如部署应用、更新配置等),并验证这些指令是否合法。
  • 简单理解:就像公司的前台,所有请求都必须经过它。

1.2 etcd

  • 作用:存储集群的所有状态信息(比如 Pod 的位置、配置等),确保这些信息不会丢失。
  • 简单理解:就像一个“记事本”,记录集群的每一件事。

1.3 kube-scheduler

  • 作用:决定每个应用(Pod)应该运行在哪个节点上,根据资源需求和规则进行分配。
  • 简单理解:就像一个“分配员”,把任务分配到最适合的机器上。

1.4 kube-controller-manager

  • 作用:运行各种控制器,确保集群的实际状态与期望状态一致(比如自动重启失败的 Pod)。
  • 简单理解:就像一个“监督员”,确保一切按计划进行。

2. 工作节点(Worker Nodes)

工作节点是实际运行应用的机器。每个节点包含以下组件:

2.1 kubelet

  • 作用:管理节点上的 Pod,确保它们正常运行。
  • 简单理解:就像一个“管家”,负责照顾每个应用的“家”。

2.2 kube-proxy

  • 作用:管理网络流量,确保应用之间可以互相通信。
  • 简单理解:就像一个“交通警察”,指挥网络流量。

2.3 容器运行时(如 Docker 或 containerd)

  • 作用:运行容器,是应用的实际运行环境。
  • 简单理解:就像一个“容器”,装着你的应用。

3. 架构优势

  • 高可用性:控制平面可以部署多个实例,避免单点故障。
  • 弹性扩展:可以随时增加或减少节点和应用副本。
  • 自动化管理:自动检测故障并恢复,减少人工干预。

相关文章:

  • 网页制作16-Javascipt时间特效の设置D-DAY倒计时
  • 基于KL-ISODATA算法的电力负荷数据场景聚类matlab仿真
  • ElasticSearch组合查询及实际应用
  • 交换机控制软件的实现步骤猜测
  • 安装教程整理 docker linux 虚拟机
  • Podman 1panel中容器管理docker替换为Podman
  • Linux shell 进度条
  • Nerf较真系列
  • Mybatis3 批量执行操作
  • 豆包API的部署和实战|基于 Selenium 的抖音自动化评论系统开发实践
  • 算法题刷题方法记录(蓝桥杯、Leetcode)
  • 算法练习(链表)
  • linux——计算机内存详解通俗理解
  • 文本数据处理——最佳文本切分策略
  • 【开源免费】基于SpringBoot+Vue.JS电商应用系统(JAVA毕业设计)
  • 编程题《牛牛的链表删除》的python可以用非链表的方式
  • 射频前端模块(FEM)中的功率放大器(PA):关键作用与优化方法
  • 掌阅iReader全球首款 7 英寸 Carta 1300 墨水屏阅读器即将发布
  • 【TI MSPM0】GPIO学习
  • 五大基础算法——递归算法
  • 出现这几个症状,说明你真的老了
  • 申活观察|人潮涌动成常态,豫园为何常来常新?
  • 以色列消防部门:已控制住耶路撒冷山火
  • 山西太原小区爆炸事故已造成17人受伤
  • 铺就长三角南北“交通动脉”,乍嘉苏改高速扩建项目首桩入位
  • 胸外科专家查出肺多发结节,说了一个可怕的事实……