00:01
各位大家好,刚才内容中呢,我们详细讲到了pod的基本概念,以及里边一些细节操作,那我们下面还是继续来研究这个pod,咱下面要讲一下关于pod中这个叫调度策略,那什么叫调度策略呢?给各位说一下啊。比如说我现在啊,我在这里边,假如咱先来一个清楚一下,我在这里边呢,用这个库ctl,比如说我们创建这么一个pod,咱用run,或者用这个play。杠F加上就是这么一个样文件建这么1POD,咱之前用过,那这里边我们现在在我这个节点上是不是能创建出一个pod,那创建之后我们可以做个查看,比如Co ctl get。POS。包括啊,咱查看的详细点,来一个杠O。Y。然后大家看我创建的pod是不是会给我们分配到某一个note节上,比如当前在我的NOTE2里边,但是它可能在NOTE1里边,所以我做一个分配,而这个过程在我们KS中,它是怎么进行这种调度分配,就是怎么把我这个pod分配到某个节点中,或者说我现在我建个pod,它的流程怎么样,所以我下面给各位来做讲解。
01:24
咱们首先先看一下我这里边创建一个pod,它这个流程怎么样,就按照什么过程把这pod把这个创建,先讲解这么一个工作流程,那我们来看一下,我这里边呢,给各位提前画一张图,这张图是一个叫序列图,通过这个图里边就标注到了我们创建P的一个完整一个过程,那咱们来一个个看一下啊,看它是怎么创建出来这个pod。首先我们看到啊,就是在这里边呢,我们的第一部分,当我们要创建一个pod,就是create一个pod,那怎么做呢?首先它会先进入到我们这个叫API server里边,因为这咱之前说过,在master节点中有一个API server,它首先到这个API里头来。
02:16
然后在API server中,我们进行这么一个po的一个机关操作,并且把它这过程在我们的etcd里边进行这么一个存储,所以这是里边的第一部分,创建一个pod,然后进入到我们的API server,并且把它一些相关信息存储到我们的etcd里面去,这是它的第一个过程,这各位知道,然后在这过程之后,我们现在把这po做了一个操作,或者做了一个创建,然后创建之后呢,进入到第二部分,就到这个筛掉里边来。那我来写一下第二部分,在我们的筛掉里边。然后schedule中怎么做呢?它的做法就是啥,首先也会先到我们的API。
03:03
Server里边通过if serve过程中呢,他会做件事情,什么事情呢?大家看这词叫watch,就是它会啊,监听到在里边有没有新的这个pod的创建,当里边有新的pod创业,他就会知道,他就实时监控到里边是不是有新的pod创业,当他看到这里边有新的pod创建,然后他怎么做,它也是通过etcd去读取到创建出那个pod,然后读取之后把它就是根据这一个调度算法进行这个节点的调度,就是把pod分配到某一个节点中,比如我们有NOTE1,有NOTE2,所以它里边筛是这个过程,那我来写一下啊。首先它监控到API server里边,看里边有没有新的pod的创建,如果有的话,它就通过etcd进行读取处理pot,然后读取之后它会通过一个就是调度的这么一个算法,把我们的pot给的就是调度到某个这个node。
04:11
节点上面去,他会做这个过程,所以这个筛会做这个事情,所以各位注意,现在APISO也好,包括筛好,它都是在我们的master节点上做这个过程,然后这个做到之后,通过etcd进行我们的存储,那这个做到之后下面到我们的note节点。比如我现在通过调度算法把这pod分配到NOTE1中,那就在NOTE1上做操作,分配到NOTE2上,那我在NOTE2上做操作,那怎么做?我们来说一下啊,就是现在我们在node节点上。里边做操作,首先呢,它里边用一个组件叫light。通过kup light干什么呢?也是先去访问我们这个API server,因为API server是做统一管理的,先访问它,访问之后呢,因为它是存到了ECD中,所以它也会通过读取ECD就是。
05:08
这么写啊,写的详细点,读取etcd拿到,就是分配给当前节点的这个pod把它拿到就当前,比如分配这个节点中,那pod把它拿到,如果没有分配,那肯定它不会拿到,分配给当前节点,No把这个拿到,然后拿到之后他会通过这个docker。来创建我们这个容器,当它创建之后呢,把这个创建之后的状态也会返回给这AP server,包括你看筛掉他在做完之后,把这个就是分的节点的过程也会。返回给这个API server,然后在ECD中进行存储,比如说里边啊都是这个过程,ECD做存储,然后他们都是统一经过API server完成这个基本的过程,所以这个啊就是我们一个创建。
06:01
也是一个。泡的一个这么一个过程。这各位都知道啊,我再重复一遍啊,它里边有两个地方,第一个就是在我们的master节点上,首先第一个如果说我们建一个新的一个pod,它首先先到API server,通过它进行创建,创建之后把你创建出来东西在ECD中存储它的信息,然后反应给API server,说它已经创建好了,然后创建之后第二部分到筛掉,筛掉呢,它会实时监控apis server,看里边有没有新的pod创建,如果他发现当前有新的pod创建,他会怎么做,通过API server,然后读取这个ECD,然后到里边根据调度算法把读取出来po给它调度到某个noe节点上,比如调度到NODE1上,或者调度到NODE2上,然后把这个就是最终的结果也是返回给API server,并且存储到etcd中啊,这是master节点做的事情。然后做完之后再。
07:05
去node节点上,它会继续往下做,那node节点上做什么呢?首先在node节点上通过Co light,它会到API server中进行这么一个查看,然后也会读取ECD,读取到就是分为给它的这个pod这么一个内容,比如说当前NOTE1分析给他po,那把这读到没分给它不会读到,然后读到之后通过刀口把这容器创建,创建之后再返回给这个就是API server,并且在etcd中进行存储,所以它里边是这么一个流程,通过这个流程就完成一个po的这么一个创建,所以咱们创建炮的一个流程,那就是我这里说这一点。然后在过程中呢,你注意啊,因为咱们讲的是一个调度的这么一个策略,也就是说我现在。通过这个调度算法,那我怎么把这个就是pod分为到NOE1上,或者说NOE2上,这里边会有一个调度的过程,这咱们一会儿像你说到各位先知道目前这么一个创建po的一个完整流程,它就是在master节点上通过相关组件,在我们的note节点上通过校园组件,然后它这过程中都是通过API server进行,这为统一管理etcd做存储,最终把一个pod。
08:24
做一个最终的创建啊,所以这次就是pod创建一个完整的流程,各位把这过程给他,要知道我这里边做了一个说明。咱们就说完了啊。
我来说两句