Kubernetes 组件及作用

Kubernetes集群详解:Master节点与Node组件解析
本文深入探讨了Kubernetes集群的架构,重点介绍了Master节点的角色,包括APIserver、ControllerManager、Scheduler和etcd,以及Node节点上的kube-proxy和kubelet组件。Master节点确保集群状态的稳定,而Node节点负责容器的运行和网络分发。高可用的Master节点通常设置为奇数个,以实现投票选举机制。

K8s 集群机器划分为一个master 节点和一群 node 节点,高可用中master 节点一般为奇数个(投票选举机制)

Master 节点组件

API server :本质是一个Web 服务器,通过 Restful 接口编写,提供可以用来和集群交互的 Rest 端点,是K8s 集群所有资源增删改查的唯一入口。

Controller Manager :集群内部的管理控制中心,负责维护集群状态,主要有故障检测和恢复、自动化、滚动更新等

Scheduler :负责集群资源调度,将pod 负载到node 节点上

etcd :键值对数据库,存储集群状态信息

kebectl :是一个客户端的管理工具,直接管理API server,提供一个请求到一个api server,中间有一个auth认证(判断是否有权限访问)

Node 节点组件

kube-proxy :通过ipvs、iptables实现网络分发、负载均衡

kubelet :负责维护容器生命周期,pod创建,启动,停止等

Kubernetes(简称 K8s)是一个开源容器管理系统,它通过一组核心组件实现了对分布式应用程序的自动化部署、管理和扩展。以下是Kubernetes的主要组件: 1. **Master节点**(控制平面): - **API Server**:处理来自客户端的请求,如创建、更新或删除资源,并将状态存储在etcd数据库中。 - **Scheduler**:根据策略(比如最小负载、亲和性等)分配Pod到可用的Worker节点上。 - **Controller Manager**:管理多个控制器,如ReplicaSet、Deployment、Service等,确保系统状态符合期望配置。 - **Etcd**:作为持久化存储,用于保存集群的配置信息。 2. **Worker节点**(计算平面): - **Kubelet**:运行在每个节点上,负责监控Pod的状态,接收调度指令并执行容器操作。 - **Container Runtime**:如Docker或cri-o,负责实际的容器运行和管理。 - **Proxy**:例如kube-proxy,为服务提供网络代理,使得外部可以访问服务。 3. **核心组件**: - **Pod**:是最基本的部署单元,封装了应用及其依赖环境。 - **Service**:定义了一组Pod如何对外暴露,允许通过域名或端口访问。 - **Ingress**:可选组件,用于基于HTTP负载均衡的外部访问控制。 4. **其他扩展组件**: - **Horizontal Pod Autoscaler (HPA)**:自动调整Pod的数量以响应CPU或内存需求变化。 - **Volume**:存储解决方案,支持多种云提供商及本地存储选项。 - **Custom Resources**:自定义的API资源,允许用户扩展Kubernetes的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值