在这张系统架构图中,我们把服务分为运行在工作节点上的服务 和 组成集群基本控制板的服务

    Kubernetes节点有运行应用容器必备的服务,而这些都是受Master的控制
    每次个节点上都要运行docker。docker负责具体的映像下载和容器运行

    Kubernetes主要核心组件:

    • etcd保存了整个集群的状态;
    • apiserver提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制
    • controller manager负责维护集群的状态,比如故障检测、自动扩展、滚动更新等
    • scheduler负责资源的调度,按照预定的调度测量讲Pod调度到相应的机器
    • kubelet负责维护容器的生命周期,同时也负责Colume(CVI)和网络(CNI)的管理
    • Container rentime 负责镜像管理以及Pod和容器的真正运行(CRI)
    • kube-proxy负责为Service提供cluster内部的服务发现和负载均衡

    除了核心组件,还有一些推荐的Add-ons:

    • kube-dns负责为整个集群提供DNS服务
    • Ingress Controller为服务提供外网入口
    • Heapster提供资源监控
    • Dashboard提供GUI
    • Federation提供跨可用区的集群
    • Fluentd-elasticsearch提供集群日志采集、存储和查询