K8S 全局架构图 —— 筑梦之路

  • kube-apiserver:

    Kubernetes API 服务器验证并配置 API 对象的数据, 这些对象包括 pods、services、replicationcontrollers 等。API 服务器为 REST 操作提供服务,并为集群的共享状态提供前端, 所有其他组件都通过该前端进行交互。

  • kube-scheduler:

    调度器通过 Kubernetes 的监测(Watch)机制来发现集群中新创建且尚未被调度到节点上的 Pod。调度器会将所发现的每一个未调度的 Pod 调度到一个合适的节点上来运行。调度器会依据下文的调度原则来做出调度选择。

  • kube-controller-manager:

    Kubernetes 控制器管理器是一个守护进程,内嵌随 Kubernetes 一起发布的核心控制回路。在机器人和自动化的应用中,控制回路是一个永不休止的循环,用于调节系统状态。在 Kubernetes 中,每个控制器是一个控制回路,通过 API 服务器监视集群的共享状态, 并尝试进行更改以将当前状态转为期望状态。目前,Kubernetes 自带的控制器例子包括副本控制器、节点控制器、命名空间控制器和服务账号控制器等。

  • etcd:存储kube-apiserver处理过的持久化数据。

  • kubelet:

    • 容器运行时(Container Runtime)是在节点上的守护进程, 被配置用来为 kubelet 提供 CRI 服务。kubelet负责与容器运行时(如Docker、containerd)交互。这种交互依赖于容器运行时接口(CRI,Container Runtime Interface)对容器创建、启动、停止等操作。

    • kubelet还通过gRPC协议同设备插件进行交互。设备插件允许一个节点发现新的 Node 设施(除了 cpumemory 等内置的节点资源之外), 并向请求资源的 Pod 提供了这些自定义的节点本地设施。

    • 容器存储接口(CSI,Container Storage Interface)提供了一种扩展 Kubernetes 的方式使其支持新类别的卷。这些卷可以由持久的外部存储提供支持,可以提供临时存储,还可以使用文件系统范型为信息提供只读接口。

    • 容器网络接口(CNI,Container networking Interface)可以让 Kubernetes 使用不同的网络拓扑和技术。你的 Kubernetes 集群需要一个 网络插件 才能拥有一个正常工作的 Pod 网络, 才能支持 Kubernetes 网络模型的其他方面。

在 Kubernetes 1.24 之前,CNI 插件也可以由 kubelet 使用命令行参数 cni-bin-dirnetwork-plugin 管理。Kubernetes 1.24 移除了这些命令行参数, CNI 的管理不再是 kubelet 的工作。

  • kube-proxy:

    kube-proxy 是集群中每个节点(node)上所运行的网络代理, 实现 Kubernetes 服务(Service) 概念的一部分。kube-proxy 维护节点上的一些网络规则, 这些网络规则会允许从集群内部或外部的网络会话与 Pod 进行网络通信。

相关推荐
鼠鼠我捏,要死了捏1 小时前
蓝绿发布与滚动更新:基于Kubernetes的微服务零停机切换实战指南
微服务·kubernetes·blue-green
xiao-xiang3 小时前
k8s下的发布策略详解
云原生·容器·kubernetes·部署·cicd·发布
优秀的老黄3 小时前
Docker部署RabbitMQ
linux·运维·docker·中间件·容器·centos·rabbitmq
Lin_Aries_04213 小时前
容器使用卷
linux·运维·docker·云原生·容器·eureka
寒士obj3 小时前
Docker的使用及核心命令
运维·docker·容器
邂逅星河浪漫3 小时前
【Docker-Nginx】通过Docker部署Nginx容器
nginx·docker·容器
Dontla4 小时前
Docker Compose healthcheck介绍(监控容器中服务的实际健康状态)数据库健康检查pg_isready
数据库·docker·容器
HeXDev5 小时前
【Docker】一键将运行中的容器打包成镜像并导出
运维·docker·容器
有谁看见我的剑了?5 小时前
k8s-临时容器学习
学习·容器·kubernetes
The_Second_Coming6 小时前
容器应用学习笔记:containerd 篇
运维·笔记·学习·容器·containerd