00:00
好。紧接着呢,我们继续往后去看,我们先看第一个我们的方式对吧,也就是我们的class的IP,好,这里也给class IP呢做了一个定义,说classsh IP主要在每一个node节点上使用我们的IP tables将发向classsh IP对应的端口的数据转发至我们的process中,然后Co process自己实现内部实现我们的负载均衡的方法,并可以查询到这个SVC下对应的port和端口。进而把数据转发给对应的port的地址和端口,好,那这里呢,有一个一些信息需要给大家更新一下,第一个就是使用IPS,那由于我们现在使用的方案呢,是。Ipvs对吧,所以在这里在我们的环境中,那它就是使用ipvs,能理解我的意思吗?由于你的由于你在这里的采用的我们的代理模式不一样,它的底层使用的方案也是不一致的,那这里默认说法是说的是APP tables需要大家注意一下,好,那并且下面有一张图我们可以看一下。
01:10
那首先这边呢,是我们的客户端,相当于是一个客户端对吧,那这边呢,相当于是我们被访问端。就是访问者就是被访问者对吧?好,那中间呢,这些访问者你会发现有很多个,所以我们可以通过创建一个SVC的方式将这个服务进行维稳。好,那就意味着这个class的IP会去绑定至后端的这三个不同的pod之上,那如果我们N访问到这个SVC的IP加po的时候,相当于就是代理到第一个,代理到第二个,代理到第三个Rubin的算法,对吧?我们之前给大家说过。那为了实现图上的功能,需要几个组件的协同?我们先看一下第一个IPSSO,用户通过库波ctl命令向IPSSO发送创建SVC的命令,对吧?要把这个SVC创建出来IPSSO接入到请求以后,将数据转存到后端的etcd之中。
02:10
注意哈,IPSO并没有直接操纵它去完成,对吧?好,库的每个节点都有叫的进程,这个进程负责感知SVC的变化,并将变化的信息写入本地的IP规则,也就是它有这么一个流程,这是我们的I。这是我们的etcd,这是我们的。他先将把信息写到etcd,他去监控监测etcd里发生了变化,得到变化以后,得到变化范围以后会写入到我们的IP boss规则。当然这里的IPS规则说的是本地的,为什么说是本地的呢?因为每一个节点都会有自己对应的。进程存在对吧?好,那当然这里写的是IP,其实也不太合理,原因是什么?在我们的环境中是不是就是IPS啊,那当然还可以是我们的user name userpa,对吧,Userpa,好。
03:15
有这么几种方式。那最后一个就是IP实现nat技术,将我们的微IP、虚拟IP转至我们in po中,也就是后端的真实服务的断定信息,那当然在我们的环境中呢,就是通过我们的什么ipvs,对吧?Ipvs实现这里的转发,当然这里的ipvs的模式呢,工作方式呢,依然是我们的nat模式,需要大家注意一下,好,那既然我们都知道这么多东西了,我们接下来可以去创建一下,那为了演示我们的实验效果呢,我们先创建了一个deployment。然后呢,再给这个deploy呢,去绑定了一个SVC,那接下来呢,我们去创一个deployment。我们去创建一下。
04:03
嗯,S VC em,好。没复制成功是吧。好,我们过来看一下,首先我们的主持IPIPS主版本是V1版,然后看的类型是我们的deploy元素信息,这个deploy呢叫map deploy以及它的名称空间是我们的ault名称空间,当前的副本数目为3MATCH levels进行了一个匹配,只要有I map APP APP等于APP releases等于sta的即可。好,那创建这个deploy的模板呢,第一个元素信息。袁素一,印尼写了一个标签,他们有三个标签对吧?第一个标签是P,值是我们的map,第二个标签是我们的值,是我们sta以及GV支,是我们test,好,Spark我们的容器创建了一个容器,容器名称为map。
05:10
好,Image使用的镜像是我们的VI Linux map v镜像的下载策略是我们的,如果有就不下载。释放了一个端口,名称为I ptp端口是八零的这么一个方案,好,那接下来呢,我们就可以把它给创建一下保存,推出库珀C啊呢,对吧,它是一个声明式的,所以我们up类杠FSVC,好酷CTR get已经在运行了,对吧?好,那我们知道这么多的容器在运行它的地址呢,我们要想访问的话,必须要借助一个SVC,对吧,不然的话比较费劲,并不说不可以访问到它,完全是可以的,我们可以通过这里的地址信息直接访问过去,对吧。
06:00
102441.66完全没有问题对吧,但是这么多的炮的每一个都有自己的地址,并且如果这里的炮死亡以后会出现新的pod,新的po的地址跟之前还是不一致的,对吧?所以为了进行一个可靠的访问,那我们可以借助到我们的SVC,那我们看一下我们的SVC模板,首先接口信息主是我们的核心组,版本是我们的V1版,那看的类型为s services类型那。也就是它的原数音信息对吧?Name APP,这个SVC叫MYAPP,那name space呢,是放在我们的默认名称空间下的,也就是SVC,它依然是一个名称空间级别的资源,我们之前给大家说过,对吧?好,类型为class IP选择I malist。那你还记得我们之前在给大家讲我们的SVC类型的时候,我们画过一张PPT对吧?
07:04
我们画过一张PPT,在在这里对吧?SVC如果想去访问或者想去匹配到后端的pod的话,是通过这里的标签选择器的标签选择器的,对吧?看这里标签一致以后,这些pod才会被加入到他自己的端点队列里去,好,那在这里也是一致的,我们在之前创建我们的deployment的时候,你会发现我给他添加了两个。添加三个是吧,添加三个不同的标签,那在这里呢,它需要匹配到这两个标签以后才能正常被访问,如果不是一直的话会出现问题,也就是访问不到,需要注意一下,好pod放了一个端口,端口是80TARGET portt,也就是我们后端的这些真实服务,它使用的是什么端口,使用的是八零端口对吧?好,那我们过来我们去创建一下。
08:00
YMSVC.emf那我们可以故意给它改一下,比如这里的F等于MY1,我们看能不能访问到酷ctl啊,Play杠,F SV c map,好,创建成功了,Ctl GI s VC这里呢,已经创建出来了,并且我们之前说过对吧?SVC的类型呢,是我们的class的IP,因为在这里已经指定了,其实你不指定的话,它默认也是一个SVC,因为这是它的默认选项,好,那这里我们因为声明他的访问,访问的目标端口是八零,所以在这里也会显示出来一个八零的概念,那接下来呢,我们可以访问一下这个IP,我们看一下Co这个IP。仿不到对吧,原因是什么呢?虽然这个SVC被创建了,但是这个SVC我们可以拿这张图去看一下。
09:00
但是这个SVC,比如这里IV叫一,它匹配的D根本没有IP等于一的,所以这里的后端节点视为空的,它只创建了这么一个自己的端点,并没有真实的后端端点,并且我们可以通过我们的ipvs看一下我们这里的信息,它的访问地址是115,对吧?33.115,好,33.115。看一下。空的。下面是另一个对吧,好,那这里你也可以看到了,只要是这种我们的。所谓的label标签,选择不到的,匹配不到的,它只是创建了一个空的集群,真实服务器并没有。能理解我的意思吧,好,那我们再把它改回来的,创建一个正儿八经的对吧。我们去把它给删一下,突破C里啊,Delete,杠FSVC点麦,那我们再打开SVC.email我们去把这里的标签给改回来,大家其实也看到一个操作了,对吧?也就是我拿这个email文件,我可以在创建的时候使用,包括我在删除的时候也是可以通过指定文件的方式去删除对应的资源,这也是为什么建议大家去把一些系统中重要的一些资源是不是把它保存下来,比如我是不是保存了一个in install k8S啊,在这里是不是会有一些常见的一些压ma文件,包括我们安装的时候一些文件是不是都被保存下来了,以便于后期的集群的维护以及更新等等,需要大家注意一下。好,回来继续,那我们再去库CPL啊play,杠FSVC等于键麦库克CPLGIS。
10:59
VC,我们看一下10.103IPVIDM杠大文10.103看到了吗?访问10.103的八零端口,第一个是1.6680 2.6980 2.7080,那我们可以酷波c PL get portt,我们看一下杠。
11:24
102442070。102442070。102442.69。102442.661.661.66能看明白吗?也就意味着其实我们访问这个,访问这一个我们的SVC的IP地址,其实相当于把我们通过ipvs模块代理到了后端几代节点之上,那我们再去访问这个集群的地址SVC的地址Co肯定是没有问题的。并且我们访问它的po的name host name,对吧,House name对还什么呀,好一个轮巡的看到了吗?对吧?其实对于我们的SVC来说呢,这种类型只是我们的class s VC的一个标准类型,也就是通过我们的这里的ipvs模块或者是IP tables模块进行所谓的附带均衡,去实现我们的代理的方案,这是没有问题的。
12:25
但其实我们的SVC的class类型,Class IP类型,还有另一种叫做less,那这个也是我们后面在讲我们的seat的这么一个基础。也就意味着对于我们的来说,这里有一个特殊点,它叫无头服务,对吧?那这里有个特殊点,就是有时不需要或者不想要负载均衡,以及单独的10万CP,听明白了吗?不需要,不想要负载均衡,不需要。SVP也就虚拟IP,在这种情况下,可以通过指定我们的class的IP叫Spark class IP的位now来创建我们的无头服务。这类的service并不会分配class IP pro并且不会处理它们,而且平台也不会对他们进行负载均衡和路由。那这里主要有什么特点呢?
13:15
那你说为什么还需要我们的kindless,也就是我们的无头福位吗?那主要是想给大家说的是通过这种方式去解决我们的所谓的cost内和我们的po内的变化问题,也就通过它去进行绑定。好,那我们可以给大家看下效果对吧,我们去创建一个无头服VM,然后呢,是我们的。SVC,那给。这里呢,APP等于MYAPP即可,对吧,保存书库波CT啊。
14:00
Play,杠,Fn now,爷们。好,那我们库波CT啊get。Get还VC对吧?什么get part get还VC好,你会发现这里的地址是为空的。没问题吧,这里的地址是为空的,好,那如果我现在访问这个地址,我们看会发生什么情况,或者访问这个服务,我们看会发生什么情况。那对于SVC呢,一旦创建成功以后呢,它会写到我们的cox中去,叫做get po-n Co s。那我们的SVC的创建会有一个主机名,也就是FQ名称会被写入到我们的car DS,它的写入的格式就是我们的SVC的名称加上我们的当天的名称,空间的名称加上我们当天集群的。集群的域名,那我们的集群域名就是s VC class的,我们没有去更改对吧?好,那去通过我们当前的,通过我们当前的这么一个IP地址,也就是我们的cos的IP地址进行解析,解析这么一个域名,我们看下什么效果。
我来说两句