整体架构
kubernetes分为 master节点和工作节点,前者是管理节点,后者是容器运行的节点。其中master节点主要有3个重要组件,分别是APIServer,sheduler和controller manager。
APIServer
APIServer组件负责响应用户的管理请求、进行指挥协调工作
scheduler
scheduler组件是将待调度的pod按照一定的调度算法绑定到合适的工作节点上
controller manager
是一组控制器的合集,负责控制控制管理对应的资源,如副本(replication)和工作节点(node)等。
etcd
etcd 负责保存 Kubernetes Cluster 的配置信息和各种资源的状态信息。当数据发生变化时,etcd 会快速地通知 Kubernetes 相关组件。
kubelet
管理维护pod运行的agent
flannel
维持各个节点上pod之间的通信。
kuernetes架构可以用下图来简单描述,mster节点上的APIServer将负责与master节点、工作节点上的各个组件之间交互,以及集群外用户(如kubectl命令)
与集群的交互、在集群中处于消息收发的中心地位。其他各个组件各司其职,共同完成应用的分发,部署与运行的工作。