01-k8s基础概念

组件

k8s组件可以按节点来划分。master和node上会有不同的组件。
master上主要有这几种组件:

  • ApiServer:apiServer是我们操作资源的唯一入口。kubectl要请求资源,命令都会经过apiServer,apiServer会进行权限的认证、资源控制等操作。
  • Scheduler:负责集群资源的分配计算。按照预定的调度算法和策略,scheduler会从etcd中获取各个node的信息,计算出当前pod适合部署在哪个node上,并将结果返回给apiServer。
  • ControllerManager:负责维护集群的状态。比如程序部署安排、故障检测、自动扩展、滚动更新等,
    apiServer在从scheduler获取到要分配的node后,apiServer在调用controllerManager来安装pod。
  • Etcd:用来存储集群里各种资源对象的信息。

node上主要有这几种组件:

  • kubelet:当pod被安装在这个节点之后,k8s继续要做的事情是创建相应的容器,并管理这个Pod的生命周期,这里面包括:Pod的增删改查等操作。这工作右kubelet来完成。到此,一个pod基本就创建完成。
  • KubeProxy:如果需要访问pod,就需要通过kube-proxy来对pod产生访问的代理。负责提供集群内部的服务发现和负载均衡。
  • Docker : 负责节点上容器的各种操作

概念

  • Master:集群控制节点,每个集群需要至少一个master节点负责集群的管控

  • Node:工作负载节点,由master分配容器到这些node工作节点上,然后node节点上的docker负责容器的运行

  • Pod:kubernetes的最小控制单元,容器都是运行在pod中的,一个pod中可以有1个或者多个容器

  • Controller:控制器,通过它来实现对pod的管理,比如启动pod、停止pod、伸缩pod的数量等等

  • Service:pod对外服务的统一入口,下面可以维护者同一类的多个pod

  • Label:标签,用于对pod进行分类,同一类pod会拥有相同的标签

  • NameSpace:命名空间,用来隔离pod的运行环境

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐