- Master组件:
- kube-apiserver:用于暴露Kubernetes API,任何资源请求或调用操作都是通过kube-apiserver提供的接口进行。它是Kubernetes集群架构的大脑,负责接收所有请求,并根据用户的具体请求通知其他组件工作。
- etcd:配置存储中心,用于存储集群的所有配置信息,包括集群元数据:如各个节点(Node)的信息,包括节点名称、标签、状态等、资源使用情况、Pods、Services、Deployments、ReplicaSets、ConfigMaps、Secrets等对象的定义和状态信息
- kube-controller-manager:运行管理控制,是Kubernetes集群中处理常规任务的后台线程,是Kubernetes集群里所有资源对象的自动化控制中心。
- kube-scheduler:负责按照预设的调度策略将Pod调度到相应的Node上。
- cloud-controller-manager(仅在云环境中使用):与云提供商的API进行交互,以提供云服务的集成。
- Node组件:
- kubelet:Pod 生命周期管理: 监控 Pod 的状态,负责创建、启动、停止和删除Pod及其内的容器; 资源监控与上报: 监控节点资源使用情况(如CPU、内存),并将这些数据上报给 Kubernetes API Server,供调度器做出更合理的调度决策;健康检查:执行对Pod内容器的健康检查(Liveness Probes 和 Readiness Probes),根据探测结果决定是否重启容器或标记Pod为就绪/非就绪状态
- kube-proxy:
kube-proxy
可以被视为Service
对象在集群网络层面的具体实现机制。它负责将Service
抽象(逻辑上的服务访问入口和负载均衡策略)转化为实际的网络规则和流量转发行为,从而确保客户端能够透明地访问到后端Pod;创建Pod并将其加入到Service的Endpoint列表中类似于服务注册,而kube-proxy
基于这些信息动态调整路由规则以实现服务发现;对于访问该Service的请求,Kube-Proxy会根据负载均衡策略(如轮询、最少连接等)将流量分发到后端的多个Pod实例上。
k8s核心组件
Addison_Wang2024-06-18 18:07
相关推荐
Zl1597531597533 小时前
k8s基础环境部署花酒锄作田3 小时前
[kubernetes]二进制方式部署单机k8s-v1.30.5陌殇殇殇5 小时前
使用GitLab CI构建持续集成案例技术钱5 小时前
docker简介roman_日积跬步-终至千里5 小时前
【docker】docker常见命令Gogeof6 小时前
云原生化 - 基础镜像(简约版)daxian_am4618 小时前
k8s image errorGogeof8 小时前
云原生化 - 旅程(简约版)爱吃龙利鱼8 小时前
网络基础知识笔记(四)tangdou3690986559 小时前
Docker系列-超级详细教你Linux安装并使用docker compose,如何使用docker-compose安装sqlserver