k8s学习(二)——kubernetes整体架构及组件解析

k8s集群一般由一至多个master节点和若干个node节点组成,而每个Master节点Node节点都有着不同的组成,本文章在此讲述k8s集群的整体架构和组件的解析。

一,k8s中master节点的组成

master节点上运行的后台服务有:

kube-apiserver:

APl Server是k8s的前端接口,各种客户端工具以及k8s其他组件可以通过它管理集群的各种资源。

kube-scheduler:

scheduer负责决定将pod放在哪个node上运行。另外scheduler在调度时会充分考虑集群的架构,当前各个节点的负载,以及应用对高可用、性能、数据亲和性的需求。

kube-controller-manager:

负责维护集群的状态,比如故障检测、自动扩展、滚动更新等。ControlerManager由多种 controler组成,包括replicationcontrollerendpointscontroller、namespace controller、serviceaccounts controller等。不同的 controller管理不同的资源。例如 replication controller管理 Deployment、StatefulSet、DaemonSet的生命周期,namespace controller管理 Namespace 资源。

Etcd:

负责保存k8s集群的配置信息和各种资源的状态信息,K8S中所有的服务节点的信息数据、配置数据都是存储在ETCD中,当数据发生变化时,etcd会快速的通知k8s相关组件。

pod网络(flannel):

Flannel 是 Kubernetes 中一种基础的 CNI 插件,通过为每个节点分配独立子网、借助 etcd 同步配置并以 VXLAN 等隧道方式封装跨节点数据包,实现不同节点上 Pod 之间的直接 IP 通信,满足 k8s 对 Pod 网络互通的核心需求。

pod要能够相互通信,k8s集群必须掌握pod网络,flannel是其中一个可选的方案。

二,k8s中node节点的组成

node节点上运行的后台服务有:

kubelet:

kubelet是node的agent,当scheduler去确定在某个node上运行pod后,会将pod的具体配置信息发送给该节点的kubelet,kubelet会根据这些信息创建和运行容器,并向master报告运行状态。

kube-proxy:

service 在逻辑上代表了后端的多个 Pod,外界通过 service 访问 Pod。service 接收到的请求是如何转发到 Pod 的呢?

这就是 kube-proxy要完成的工作。proxy是配合service实现从pod到service,以及从外部的node port到service的访问。每个 Node都会运行 kube-proxy服务,它负责将访问 service 的 TCP/UPD数据流转发到后端的容器。如果有多个副本,kube-proxy会实现负载均衡。

pod网络(fiannel):

Flannel 是 Kubernetes 中一种基础的 CNI 插件,通过为每个节点分配独立子网、借助 etcd 同步配置并以 VXLAN 等隧道方式封装跨节点数据包,实现不同节点上 Pod 之间的直接 IP 通信,满足 k8s 对 Pod 网络互通的核心需求。

pod要能够相互通信,k8s集群必须掌握pod网络,flannel是其中一个可选的方案。

三,k8s整体功能架构图和通信图

相关推荐
engchina3 小时前
WSL Ubuntu で Kubernetes v1.34.2 + Docker 環境を構築する
ubuntu·docker·kubernetes
盐焗西兰花4 小时前
鸿蒙学习实战之路-Reader Kit修改翻页方式字体大小及行间距最佳实践
学习·华为·harmonyos
QiZhang | UESTC4 小时前
学习日记day76
学习
久邦科技4 小时前
20个免费电子书下载网站,实现电子书自由(2025持续更新)
学习
Gain_chance4 小时前
34-学习笔记尚硅谷数仓搭建-DWS层最近一日汇总表建表语句汇总
数据仓库·hive·笔记·学习·datagrip
啊森要自信5 小时前
CANN ops-cv:面向计算机视觉的 AI 硬件端高效算子库核心架构与开发逻辑
人工智能·计算机视觉·架构·cann
2的n次方_6 小时前
CANN ascend-transformer-boost 架构解析:融合注意力算子管线、长序列分块策略与图引擎协同机制
深度学习·架构·transformer
Gain_chance6 小时前
36-学习笔记尚硅谷数仓搭建-DWS层数据装载脚本
大数据·数据仓库·笔记·学习
XH华6 小时前
备战蓝桥杯,第九章:结构体和类
学习·蓝桥杯
Gold Steps.6 小时前
OpenEBS — 云原生 CNS 高性能存储
云原生·kubernetes·存储