1、Master 集群控制节点,每个kubernetes集群里需要一个Master节点来负责整个集群的管理和控制,一般单独部署.节点上运行着以下关键进程:
1)kubernetes API Server:提供了HTTP Rest接口的关键服务进程.是kubernets里所有资源的增,删,改,查等操作的唯一入口,集群控制得入口
2)Kubernete Controller Manager.自动化控制中心
3)Kubernetes Scheduler:负责资源调度(Pod)的进程
4)etcd:负责数据的存储
2、Node 是K8s的工作负载节点:是一台物理机或者虚拟机. 每个Node节点运行下面的进程: 1)kubelet:负责Pod容器的创建,启停等任务,同时与Master节点密切合作,实现集群管理的基本功能. 2)kube-proxy:实现k8s的通信与负载均衡的组件 3)docker:docker,负责本机容器的创建和管理工作
3、Pod k8s为每个Pod分配唯一的IP,一个pod里会包含多个容器,kubernete要求底层网络支持集群内两个任意Pod之间能够通信.牢记:在k8s里,一个Pod里的容器与另外主机上的Pod容器能够直接通信.
4、Event Event是一个事件记录,记录了事件最早的产生时间,最后重现时间,重复次数,发起者,类型,以及导致此事件的原因等信息.Event会关联到具体的资源对象上,是排查故障的重要参考信息.
5、Label 相当于一个标签,给资源对象定一个Label,相当于打了一个标签.随后可以通过Label Selector查询和筛选拥有某些Label的资源对象.Label Selector类比为SQL的where的查询条件.
6、Replication controller 简称RC,定义了如下的期望值: 1)Pod期待的副本数, 2)筛选目标Pod的 Label Selector 也称Replica Set.
7、Deployment 创建一个Deployment对象来生成对应的Replica Set来完成副本的创建过程.
8、StatefulSet Pod的管理对象RC,Deployment.daemon和Job是无状态的服务, Mysql集群,mongoDB集群是有状态的服务.有状态的有以下共同点: 1)每个节点有固定的身份Id 2)集群的规模比较固定 3)节点是有状态的,会持久化数据到永久存储 4)磁盘损坏,节点无法正常运行,集群功能受损. 特性: 1、statefulSet每个Pod有稳定,唯一的网络标识. 2、StatefulSet的pod的启停顺序是受控的.操作第n个pod时,前n-1 个已经运行且准备好的状态. 3、Pod采用稳定的持久化存储卷,通过PV/PVC来实现.删除Pod,不会删除与Stateful相关的存储卷
更多技术文章请关注公众号:架构师Plus, 扫码添加
