00:00
欢迎大家继续收看上硅谷的664云计算视频,我是王瑶老师。上节课呢,给大家去描述了在K8S中。资源控制器的类型。以及每种资源控制类型。它的一些特点。一定要先量解这些特点,以后再看我们接下来的视频。那这节课呢,我们主要整理的就是第一个我们的控制器类型。也就是我们的RRC和deploy的这么一种。RRC和我们的deploy有一定的关联性,所以呢,我们把它放在一起去相接。那对于RC来说呢,它已经成为了一个历史版本,对吧,官方呢,已经通过RS去取代它了。做这么一个副本数目的资源控制器。那RS比RC最大的一个进步点呢,就是RS支持集合式的select。更复杂的一些选择标签。
01:01
底下给大家演示了一个RS,创建了这么一个模板信息,我们过来看一下。当然这里呢,只是给大家举了一个简单的例子,对吧,那其实对于R的创建呢,还有更多的一些选项标签,我们可以通过我们的。C条。RS进去查看,那查看它的完整版本的一些模板信息,在这里都会有详细的官方说明解释,好,那首先呢,我们把这些给大家看一下,第一个IP沃。Extension we better。唯一白塔一吧。那看的类型为R对吧。下一个mad元素信息,Name。Spike。我们的详细的一些具体介绍,对吧,CATS3个也就是有三个副本对吧,好select。
02:03
选择标签labels匹配的一个是tar fna。也就意味着它是K,它是values,好time模板。到底是怎么通过怎样的去创建我们的,呃,R的这么一个port啊,Mad date levels tened。也就意味着这两个是不是唯一匹配的,那到时候我可以给大家看一下,到底他们是怎样去与之对应的好Spark呢?也就意味着在我们time light下有个自己的元素信息,有Spark,相当于这个是不我们之前创建pod的时候用到的一些详细字段,那在创建我们的R的过程中,相当于在前面这些属性以后加了一个嵌套了一个portt的属性,你可以这样去理解,也就意味着我们在po里做了那些什么。Post的。Stop,对吧?还有什么read level以及C在我们的S中该怎么用依然怎么用,相当于嵌套了这个字段之下,需要大家注意一下。
03:10
这也是为什么我们先讲我们的最基础的pod的资源类型的原因,后面都是可以去嵌套的,需要大家注意一下,也就没有讲那么细了,对吧?那容器下面呢,有一个容器叫做PP。那这里呢,有一个镜像,官方的一个镜像对吧,谷歌的一个演示镜像好,并且注入了一个环境变量,环境变量的名字叫get host from。那values呢?等于等于DNS。那P呢,释放到端口等于八零对吧,我们过来把它给创建一下,我就复制一下吧。YMRS点经脉。嗯,在这里我们稍微改点东西,比如这个image改成我们之前用到的我们的map。
04:08
不然的话,这个官方的PP镜像下的还是挺慢的。在这里对吧,好。复制一下。冒号唯一吧。好,其他我都没有动对吧,我们保存退书那Q波ctl create-F。回去了。酷city啊,Getch。已经在运行了,对吧,已经在运行了,好。那我们先把之前做的一些给它删掉吧。回波CPR。Delete pouch。杠杠二。大家看一下这条命令。
05:00
删除所有的pod,删除所有的对吧,刚刚off删除所有的portd,当然这个指的是在我们的default名称空间下的回车。我们的是不是也被删除了?Live的port gate也被删除了。以及我们的。Life CY cle也被删除了。那么在一下你会发现。这就是典型的我们的自主式pod和我们的资源控制器控制的pod的一个区别。我一旦删除,像这种自主式pod就没了,那资源控制器的pod依然会随着我们定义的这么一个。什么期望值还在存在?当然他也不是还在存在,而是新建了一些,大家看一下这里的随机值已经不一致了,对吧,说明新创出了一堆的。那我们可以加个选项,叫做杠杠秀。
06:02
Levels。你会发现这里呢,多了一个选择标签,对吧,也就是我们在创建的时候给大家选择的。那我们其实可以对这个标签进行更改,比如R。然后呢,是改的是pod,哪个pod呢,改的是这一个port的,好,我们把这个值给改掉。比如改成一。回车,这里已经告诉我了,对吧,这个标签已经存在了,除非我们把allright现在是false对吧,那我们把它改成。那我们去添加一下。好,等于TE。那这里呢,告诉我labels已经改掉了,对吧,那我们再去get pod,我们去看一下。
07:05
发现了吗?已经出现了四个。有些人就纳闷了,诶,为什么会出现四个呢?给大家讲下原因。我们这里的R控制器,通过模板,这里的模板把这个所谓的pad给它创建出来。他怎么知道哪些pod是属于自己呢?这里多了一个malas匹配它的标签选项。如果你的pod。怕front。是有这么一个标签选择的,就代表我这个RS啊,这个pad是RS。那并且我们可以看一下这里的标签刚才被我改掉了,Front改成了FRONT1对吧,那所以我们的R控制器认为,诶,这个标签已经不是我的了,所以我会新创建出来一个,因为它已经符合我们的副本数目只有两个了。那所以我要再创建出来一个满足我的期望值三。
08:02
这就是原因。所以我们一直在说。对于我们的。Co来说它的很多的一些。所谓副本数目的监控。都是以我们的。标签为技术的。这个概念很重要。那比如我们在这里的RS,它的副本数目的监控是不是就是以标签为主的?没问题吧,包括我们把这个所谓的RS给它删掉,比例RS杠号二,我们把我的RS给删掉,那你会发现。这几个呢,是不是都要退出了,这一个呢,没人管了,原因是这个标签不是我的。我就不把你当自己人了。很好理解对吧。那这个呢,也是我们的RS的一个特点哈,需要大家注意一下。那我们可以把这个固啊给它删掉了,对吧?啊delete pod刚刚啊,那这个呢,就给大家做了一个RS的创建的这么一个演示。
09:00
那接下来我们可以看一下,下一个是我们。那RS和deploy呢?有怎样的关联呢?这里有一张图介绍的非常好,对吧?把这张图给大家摘取下来了好。那development呢,有两个,这里创建了两个不同的,一个叫new,一个叫对吧,好,一个是新的,一个是我们的旧的。那新的呢,你会发现,诶,这里有个山柱线代表已经。干嘛取消了对吧,那这里呢,有三个不同的Y的这么一个副本或者一个pod存在了。那这就是典型的development,通过RS的创建,管理对应的po以及不同的RS的交替完成。这里所谓的。滚动更新。好,那lo面的一些相对于R的一些特点呢,在这里也给大家说明了,对吧,其实上节课我们已经给大家说过了,一直一直在重复,原因就是它真的很重要。
10:05
不仅要会用对吧,也要能理解它的一些概念。那第一个就是deploy是一个声明式的方法,我们可以用play去创建,对吧。当然,我们也可以用create上定,但最好的方案是play好。通过定义R的方案去创建对应的port,支持我们的滚动更新,扩容,说暂停继续等等,对吧,那这里呢,又给大家举了一个例子,怎么去创建一个deployment。你会发现很像很像是吧,除了我们的这里的看的变成deployment。你会发现其他是不是都比较一致啊。看明白了吗?也就意味着,在这个阶段下。依然是可以嵌套我们的的类型的。没问题吧?好,给大家解释一下,第一个IP,沃引用的这么一个ipi接口。它的版本以及啊,它的接口信息以及版本叫主版本对吧,有这么一个概念啊,看的类型为deployment。
11:08
元素信息,这个deployment的名称叫ending-deployment。那详细的一些信息对吧。副本数目为三个。Time模板。Mad的元素信息labels好,给它搞了一个标签,叫inex。那Spark容器。第一个容器的名称叫安尼。号,它的镜像是恩尼斯冒号1.7.9,这里定义了一个我们的po,那它的端口呢,是我们的八零,容器的端口是八零,对吧,声明了一下。好,这里需要注意一下这个声明的八零啊,其实你声不声明其实最终的意义不大,原因是我们整个K8S网络环境能是一个扁平化网络,那里面暴露的端口呢,都可以通过IP地址去访问到,对吧?但这里也做了一个注释,可以这样去理解。
12:02
好,那我们可以把这个所谓的deployment给大家创建一下。那在这里是不是有个说明啊,Create f啊,你在创建的时候加一个选项叫做。的含义就是我们再去更新的时候,它可以去记录你每一步的这么一个状态,每一步用什么命令去更新的,可以记录下来,需要大家注意一下,能加的话最好去把它加上。好,我们就加上吧。首先我们先把这个模板信息给大家创建一下blog。Mouth。这里的镜像我依然用我们的map APP,原因是这个map的镜像我们已经下载好了,对吧,如果再下载一个安宁的镜像会比较慢。就重复的利用这些已存在的镜像了,其他镜像是不是也是一样的,没什么毛病对吧?Development的email文件呢,已经创建成功了,那我们可以出个CPR来play。
13:06
杠F跟上我们的deploy的加ma,我们最好在这里加个对吧。杠杠回车。那这里告诉我们的deployment这一个已经创建了,那我们可以Co CTR deploy。这里是不是已经有了一个好ZD,总共需要有三个准备的,已经准备三个了。更新三个对吧,存活三个,好,那我们现在库city啊get。看到了吗?我们之前说过吧。Deploy创建,它会创建对应的RS出来,这里的RS叫n deployment后面有一个MD5值对吧,随机的MD5值。好,那。并且他后面的一些状态已经显示了。我们的。可用的三个,准备的三个已经就绪了,三个对吧,好,那我们在酷CL。
14:07
已经串联出来了,好,N deploy加上了我们的这一个,看这里MD5值后面再加上了一个随机值,是这样去确定及联立的,需要大家注意一下。当然这里也有对应的标签存在,对吧?也就是我们的APP等于ningx,所以在我们去部署一些应用程序的时候,一定要提前去把每一种应用程序它的标签自己在脑海中把它规划好,或者是建议大家通过书面的方式把它给规划好。不然的话,后期有些标签相互之间比较杂乱,是不太友好的一种方式,需要大家注意一下。
我来说两句