一、master node(控制节点)
1.API server
作用:集群统一的入口,以一种restful方式,交给etcd存储
(接受客户操作k8s指令)
2.scheduler(调度器)
作用:节点调度,从多个work node 节点的组件中选举一个来启动服务
3.controller-manager
作用:处理集群中常规后台任务,一个资源对应一个控制器
(向work 节点的kubelet)发送指令
二、worker node(工作节点)
1.kubelet
作用:管理本机的容器
2.kube-proxy
作用:管理docker容器的网络
三、etcd
etcd可以理解为k8s的数据库
主要作用:保存集群相关数据 注册节点、服务、记录账号等等
四、核心概念
1.pod
1.Pod 是 k8s 系统中可以创建和管理的最小单元.
2.Pod 是由一个或多个容器(container) 组成
3.k8s 不会直接处理容器,而是 Pod
4.pod中的容器共享网络命名空间
2.控制器
ReplicaSet:确保预期的Pod 副本数量
Deployment:无状态应用部署
StatefulSet:有状态应用部署
DaemonSet:确保所有Node 运行同一个Pod
Job: 一次性任务
cronjob:定时任务
3.服务
将一组pod关联起来,提供一个统一的入口,即使pod地址发生改变,这个统一入口也不会发生改变,可以保证用户访问不受影响
4.label 标签
一组pod是一个统一的标签
service是通过标签和一组pod进行关联的
5.namespace 名称空间
为不同的业务提供不同的名称空间。进行隔离