首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
数据库
›
SQL-Server
›
Kubernetes的构成和架构
返回列表
发新帖
Kubernetes的构成和架构
[复制链接]
发表于 2025-10-13 07:22:13
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
Kubernetes(K8s)是一个开源的
容器
编排平台,用于自动化摆设、扩展和管理
容器
化应用步调。它由多个组件构成,这些组件可以分为两类:控制平面(Control Plane)组件和节点(Node)组件。
以下是 Kubernetes 的重要构成部分:
1. 控制平面(Control Plane)组件
控制平面组件是 Kubernetes 的大脑,负责全局管理和决定。它们通常摆设在集群的主节点(Master Node)上,但也可以通过高可用性(HA)设置分布在多个节点上。
(1)
API
Server
功能
:
API
Server 是 Kubernetes 的核心组件,负责处理惩罚全部内部通讯和外部哀求。
作用:它是集群的前端接口,全部其他组件(如 kubelet、kubectl 等)都通过它与集群交互。
特点:支持多种客户端(如 kubectl、客户端库)和内部组件的通讯。
(2)etcd
功能
:etcd 是一个轻量级、分布式的键值
存储
体系,用于恒久化
存储
集群的状态信息。
存储
内容:
Pod 的状态和设置。
服务的界说。
设置信息(如 Secrets、ConfigMaps)。
特点:高可用性摆设时,etcd 集群通常必要奇数个节点(如 3 或 5)以制止脑裂题目。
(3)Controller Manager
功能
:Controller Manager 是一个背景线程,负责运行控制器进程。
常见控制器:
Node Controller:负责管理节点的生命周期,检测节点的康健状态。
Replication Controller:确保指定命目的 Pod 副本在运行。
Job Controller:管理一次性任务(如批处理惩罚作业)。
DaemonSet Controller:确保每个节点上运行一个指定的 Pod 副本。
StatefulSet Controller:管理有状态应用的摆设。
特点:控制器是 Kubernetes 的核心调理逻辑,确保集群状态符实用户的渴望。
(4)Scheduler
功能:Scheduler 负责将新创建的 Pod 分配到符合的节点上。
调理战略:
根据资源需求(CPU、内存)选择节点。
思量亲和性和反亲和性规则(如 Pod 之间的亲和性、节点的标签)。
支持自界说调理器。
特点:调理器的目的是高效使用集群资源,同时满意应用的运行需求。
2. 节点(Node)组件
节点是运行
容器
化应用步调的工作呆板,可以是物理机或假造机。节点组件负责管理 Pod 的生命周期和容器运行时。
(1)Kubelet
功能:Kubelet 是在集群中每个节点上运行的署理,负责管理 Pod 和容器的生命周期。
作用:
确保容器都运行在 Pod 中。
从
API
Server 获取 Pod 的设置信息。
上报节点和 Pod 的状态信息。
实验容器的启动、克制等使用。
特点:Kubelet 是 Kubernetes 在节点上的核心组件,与容器运行时(如 Docker、containerd)精麋集成。
(2)Kube-proxy
功能:Kube-proxy 是 Kubernetes 网络署理,运行在每个节点上。
作用:
维护节点上的网络规则,答应网络会话内/跨节点通讯。
支持
负载
均衡,将流量转发到后端服务。
实现 Kubernetes 的服务抽象(如 ClusterIP、NodePort)。
特点:Kube-proxy 可以使用 iptables 或 IPVS 实现高效的网络转发。
(3)容器运行时(Container Runtime)
功能:容器运行时负责运行容器。
常见运行时:
Docker:曾经是最常用的容器运行时,但 Kubernetes 也在渐渐支持其他运行时。
containerd:由 Docker 团队开辟的轻量级容器运行时,
性能
更好。
CRI-O:专为 Kubernetes 计划的容器运行时,专注于轻量级和高
性能
。
特点:容器运行时是 Kubernetes 的底子,负责容器的生命周期管理。
3. 其他告急组件
除了控制平面和节点组件,Kubernetes 另有一些其他告急组件和概念:
(1)kubectl
功能:kubectl 是 Kubernetes 的下令行工具,用于与 API Server 交互。
作用:
摆设应用。
管理资源(如 Pod、Service、Deployment)。
查询集群状态。
特点:kubectl 是用户与 Kubernetes 集群交互的重要工具。
(2)Pod
功能:Pod 是 Kubernetes 的最小摆设单位,可以包罗一个或多个容器。
特点:
Pod 内的容器共享网络定名空间和存储卷。
Pod 是 Kubernetes 调理的根本单位。
(3)Service
功能:Service 是 Kubernetes 的网络抽象,用于界说一组 Pod 的逻辑聚集和访问战略。
范例:
ClusterIP:仅在集群内部可访问。
NodePort:将服务袒露到节点的特定端口。
LoadBalancer:通过云服务提供商的
负载
均衡器袒露服务。
ExternalName:将服务映射到外部域名。
(4)Ingress
功能:Ingress 是一种 API 对象,用于管理外部访问集群内服务的规则。
作用:
提供基于 HTTP/HTTPS 的
负载
均衡。
支持域名路由和路径路由。
特点:Ingress 必要 Ingress Controller(如 Nginx Ingress Controller)来实现。
(5)ConfigMap 和 Secret
ConfigMap:用于存储设置信息(如设置文件、情况变量)。
Secret:用于存储敏感信息(如暗码、证书)。
特点:两者都可以被 Pod 使用,但 Secret 会
加密
存储。
4. 总结
Kubernetes 的核心组件包罗控制平面(API Server、etcd、Controller Manager、Scheduler)和节点组件(Kubelet、Kube-proxy、容器运行时)。别的,另有辅助工具(如 kubectl)和告急概念(如 Pod、Service、Ingress、ConfigMap、Secret)。这些组件协同工作,实现了容器化应用的高效管理和自动化运维。
回复
使用道具
举报
返回列表
浏览过的版块
运维.售后
数据仓库与分析
DevOps与敏捷开发
程序人生
Java
分布式数据库
Oracle
IT职场那些事
前端开发
SAP
尚未崩坏
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表