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实例上。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐