赞
踩
k8s集群由master节点和node节点组成
master节点就像k8s集群的大脑,运行着这几个守护进程:kube-apiserver、kube-scheduler、kube-controller-manager、etcd和pod网络
#################### | |
---|---|
kube-apiserver | 负责提供HTTP/HTTPS的RESTful API,即 Kubernetes API。apiserver是k8s集群的前端接口,各种客户端工具以及k8s的其他组件都可以通过它管理集群的各种资源 |
kube-scheduler | 负责决定将pod放在哪个node上运行。scheduler在调度时会充分考虑集群的拓扑结构,当前各个节点的负载,以及应用对高可用、性能、数据亲和性的需求 |
kube-controller-manager | 负责管理集群各种资源,保证资源处于预期的状态。controller manager由多种controller组成,包括replication controller、endpoints controller、namespace controller、serviceaccounts controller等。 不同的controller管理不同的资源。例如replication controller管理deployment、StatefulSet、DaemonSet 的生命周期,namespace controller管理namespace资源 |
etcd | etcd负责保存k8s集群的配置信息和各种资源的状态信息。当数据发生变化时,etcd会快速地通知k8s相关组件 |
pod网络 | pod要能够相互通信,k8s必须部署pod网络 |
node节点是pod实际运行的位置,运行的k8s组件有:kubelet、kube-proxy和pod网络。
######### | |
---|---|
kubelet | kubelet是node节点的agent,当scheduler确定在某个node上运行pod后,会将pod的具体配置信息(image、volume 等)发送给该节点的 kubelet,kubelet根据这些信息创建和运行容器,并向master报告运行状态 |
kube-proxy | 负责将访问service的TCP/UDP数据流转发到后端的容器。如果有多个副本,kube-proxy会实现负载均衡 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。