摘要: 1. kubernetes总架构图 2. kubernetes 各组件介绍 2.1 Master 节点 Master是kubernetes的大脑,运行的Deamon 服务包括kube-apiserver、kube-scheduler、kube-contronller- manager、etcd和pod网络 2.1.1 各组件介绍 API Server(kube-apiserver) API Server提供HTTP/HTTPS RESTful API,即Kubernetes API。
Master是kubernetes的大脑,运行的Deamon 服务包括kube-apiserver、kube-scheduler、kube-contronller-
manager、etcd和pod网络
API Server(kube-apiserver)
API Server提供HTTP/HTTPS RESTful API,即Kubernetes API。API Server是Kubernetes Cluster的前端接口,各种客户端工具(CLI或UI)以及Kubernetes其他组件可以通过它管理Cluster的各种资源。
Scheduler(kube-scheduler)
Scheduler负责决定将Pod放在哪个Node上运行。Scheduler在调度时会充分考虑Cluster的拓扑结构,当前各个节点的负载,以及应用对高可用、性能、数据亲和性的需求。
Controller Manager(kube-controller-manager)
Controller Manager负责管理Cluster各种资源,保证资源处于预期的状态。Controller Manager由多种Controller组成,包括replication controller、endpoint controller、namespace controller、serviceaccounts controller等。
不同的controller管理不同的资源。例如,replication controller管理Deployment、StatefulSet、DaemonSet的生命周期,namespace controller管理Namespace资源。
etcd
etcd负责保存Kubernetes Cluster的配置信息和各种资源的状态信息。当数据发生变化时,etcd会快速通知Kubernetes相关组件。
Pod网络
Pod要能够相同通信,Kubernetes Cluster必须部署Pod网络,flannel是其中一个可选方案。
Node节点属于工作节点,是pod运行的地方。
node的agent,当scheduler去确定在某个node上运行pod后,会将pod的具体配置信息发送给该节点的kubelet, kubelet会根据遮羞信息创建和运行容器,并向master报告运行状态。
负责Node节点上pod的创建、修改、监控、删除等全生命周期的管理 定时上报本Node的状态信息给API Server。
kubelet是Master API Server和Minion/Node之间的桥梁,接收Master API Server分配给它的commands和work,
通过kube-apiserver间接与Etcd集群交互,读取配置信息。 具体的工作如下:
kubectl get nodes -o wide
原文地址:https://yq.aliyun.com/articles/699608
作者:朗月清风hyj
本文分享自 kubernetes中文社区 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!