k8s核心组件

  1. 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进行交互,以提供云服务的集成。
  2. 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实例上。
相关推荐
JohnYan5 小时前
工作笔记 - CentOS7环境运行Bun应用
javascript·后端·容器
ezreal_pan5 小时前
Kubernetes 负载均衡现象解析:为何同一批次请求集中于单个 Pod
运维·云原生·k8s·traefik
小猿姐6 小时前
KubeBlocks AI:AI时代的云原生数据库运维探索
数据库·人工智能·云原生·kubeblocks
曼岛_6 小时前
[系统架构设计师]云原生架构设计理论与实践(十四)
云原生·系统架构·系统架构设计师
科大饭桶6 小时前
C++入门自学Day14-- Stack和Queue的自实现(适配器)
c语言·开发语言·数据结构·c++·容器
城管不管8 小时前
Docker核心---数据卷(堵门秘籍)
运维·docker·容器
wdxylb8 小时前
云原生俱乐部-RH294知识点归纳(1)
云原生·ansible
Britz_Kevin16 小时前
从零开始的云计算生活——第四十六天,铁杵成针,kubernetes模块之Configmap资源与Secret资源对象
kubernetes·云计算·生活
北i16 小时前
ZooKeeper 一致性模型解析:线性一致性与顺序一致性的平衡
分布式·zookeeper·云原生
Britz_Kevin17 小时前
从零开始的云计算生活——第四十七天,细水长流,kubernetes模块之ingress资源对象
kubernetes·云计算·生活