00:00
好,我来给大家确认一下,我刚才呢,把我们的所有的微服务都部署完成,那现在总共有一二三四五六七八九十十一十二个微服务,那这12个微服务呢,在我们这儿部署完成,那这有运行成功的这些流水线,还有我们以前部署成功的,我们现在这点控制台,我们直接来看,要保证我们这个鼓励商城点进来,要没有任何异常的这些容器组。那我们现在看到这一块,只要有任何异常的容器组,我们看一下是什么原因,有两个点进来,15个部署来看一下,15个部署是我们的这个商品服务和second kill,这有问题,当然我们先来看我们的所有服务里边。我们部署成功的这个服务呢,我们来看我们有没有什么问题,我们部署成功的服务端口号从31000,我们的这个100开始,这有一个零三,那就零零,然后呢,应该是那有个03000102030405060708091012个微服务是没有任何问题的。
01:10
大家我们来看一下这一块呢,有几个有问题的东西,是我们的这个商品服务,我们来点进来。看看这个商品服务是什么原因导致了它没有运行它这一块呢?是容器退出来点进来看它的详细原因。诶,那么稍等一会儿呢,他还给成功了,那说明是没有任何问题的,他在这整在这儿尝试,我们来看一下其他包括我们这个容器日志。这块日志呢,这是启动成功的,然后这个商品服务先呢就没有问题,稳定运行,再来到我们的这个部署里边来确认一下,另外一个我们的秒杀服务,好接下来就是我们的这个秒杀服务,那肯定等待一段时间以后,它也会稳定运行,来点进来,好,我们容器呢,退出我们cooper light呢,正在将它重启,那稍等呢,它肯定会重启成功,那由于一些资源分配,网络等各种问题,它可能会尝试多重启几次,重启几次呢,我们去这儿就会成功,只要成功了,我们这儿就会变成绿颜色,我们就来稍等一下。
02:11
而此时呢,诶这一块呢,成功了,此时我们再来监控一下我们整个集群的这个状态,我现在用的in在我火狐里边登录了一个来刷新。那么集群里边我们发现呢,这个NOTE2NOTE3节点内存呢都占的非常多,但是我们整个服务呢,这块是没有任何问题的,来点进部署。包括呢,在他的这个项目里边,现在还是有两个不稳定的服务,我们发现这个秒杀服务,商品服务,然后呢起一次又起一次,排除我们其他没有其他任何问题的话,我们就把它再部署一次,可能是老代码的问题,这个商品服务启动失败的原因来这呢确认一下是这个问题,我们在这儿商品服务那生产环境的时候,我们在这要配数据库地址,那数据库呢却联向了其他的地方,所以们应该联向我们商品服务PMS就行了。
03:02
包括来到秒杀服务,我们也来确定一下,秒杀服务呢,为什么会有问题,秒杀服务的这个生产环境配置来看一下,下边的配置这块呢,应该没啥问题,我们将我们的商品服务的配置我们重新来提交一下,我们把商品服务呢重新来和秒杀服务再来构建一次就行了。好,我呢,就是直接在这儿再来开两个流水线,我们来构建在我们的这个流水线里边,我来准备两个流水线重新来构建我们的这个秒杀服务和商品服务。来到我们的这个阿里云,Get这个流水线。把我们这个商品服务。好,我们把商品服务的这一块修改,我们推上去,把商品服务呢CTRLC复制过来。然后呢,我们来点击运行构建走,那现在商品服务呢,我们V,比如2.1版本。来点击确定。咱们这个版本更替构建成功以后,我们这个商品服务呢,就会自动滚动,包括我们把这个秒杀服务,我们来也构建一下。
04:06
CTRLC来复制过来秒杀服。V2点一来重新都构建一下,来看一下我们最终的效果,以后只要我们有服务升级,那我们呢,就只需要来在这儿创建一个流水线,让他呢构建我们这个服务就行了。那这一块我们就不等了,这块我们就会直接完成。那前面我们这个部署出现故障以后,来点进这个容器日志。这个日志里边呢,我们能提取到这个有效信息,有效信息是前面说我们这个red连接异常是我们这个red,我们导入的这个JA包,它呢连的还是我们的本地的这个reddis环境,所以我们接下来到线上我们reddi的这个地址也得变,实际上呢,们线上这个reddison地址我们在这儿呢,无论是秒杀服务我们用分布式锁,还是我们的商品服务用分布式锁,这块都是写死的。
05:03
所我们应该呢,自动获取过来,来写一个string URL,这个URL呢,我来写一个叫at value6at y6可以获取配置文件里边的值,截Dollar符大括号。我们来取出配置文件里边spring点一个ready,我们会在配置文件中配置一个red的host地址,我们可以来看一下,无论是在在哪个微服务里边,我们都会配置一个red的host地址,那就连上它端口呢默认不变,所以我们这个red呢这一块就得改一下,把来CTRLV复制过来,然后呢接下来整个URL。IP地址这一块呢,我们就来变成动态的就行了,所以代码呢,也得在这我们来稍加合理的修改一下,把这一块呢,我复制过来,所有使用到reddi的地方秒杀我们用到了,然后呢,还有我们的这个商品服务。
06:00
商品服务呢,我们也找到reddison的这一块配置来,这个redson的配置在这,然后呢,商品服务同样的这一块地址拿过来,然后呢,URL我们变成动态的。这样就可以了。我们把这个代码呢提交,然后呢,我们重新拉取,重新构建就行了,好,我先把这个代码提交。提交呢,这是我们这个red red bug,这red的bug我们修改了以后,我们线上直接再来运行一个流水线,把我们这两个服务呢再一更新就行了,其他服务都没有出现任何故障,所以我们就剩这两个服务。来到我们这个流水线工程里边。来点击活动。现在我们这一块的代码呢,保证先都推送到我们的这个马云上。然后接下来我们只需要重新再来拉取代码,构建镜像发布就行,那来到我们这一块来点击运行。现在我们来拉取这两处代码,我们现在构建第一个商品服务,商品服务呢出了问题,好,我们写一个V2.2,那随便写一个版本,点击确定。
07:12
这是商品服务,我们来给它构建了一个流水线,然后呢,我们再来点击。我们运行,我们现在再来构建另外一个服务商品服务完了以后呢,是我们的second kill秒杀服务,这两个服务呢,出现了问题,我们就来写一个V2.2。秒杀服务我们来构建出来,点击确定。然后我们现在呢,两个流水线就会在我们这个队列中排队运行。那么接下来就一一确认就行了,那这一块的流程我就不录给大家了。直接等待到最终的结果就行。现在我们来确认构建product,再来确认发布我们古ma product这个版本镜像,好,那么这一块我们古mail product我们就运行完了,我们再来确认一下我们的秒杀服务。
08:02
全部代码都修改了以后呢,秒杀服务的这个流水线来看,它运行到哪了,我们看到我们这个秒杀项目的流水线这一块呢,有失败。失败的原因,我们在这儿并发构建的时候出现了问题,收纳代码质量分析,我们就把我们这个呢重新运行一下就行了,好14我们这一块呢就出问题,然后呢,我们再来重新构建一下我们的秒杀服务。来到我们这一块商品服务,我们刚才都已经发布了CTRLC来到我们这一块秒杀服务,V2.2好,秒杀服,你点击确定,等待我们这个整个人工确认构建过程就行。好,我们现在呢,确认部署second kill我们的秒杀服务。同时我们来确认发布秒杀服务的版本镜像,那这一块整个流程执行完以后,我们秒杀服务呢,自然就会成功来到我们的项目里边。确认我们现在呢,再没有我们失败的这次部署,那这个部署呢,现在有一个有问题,这个问题我们点进来,肯定呢,就是我们这个秒杀服务正在更替,那就是它了,门前的这个商品服务现在已经稳定运行,这个商品服务呢点进来。
09:13
可以看到他所有的这个信息,他一些监控信息也都是有的。我们现在来到我们的资源状态里边看一下我们商品服务,它这个日志里边保证呢,也没有报错点开。容器日志里边。好,我们确定了商品服务这一块,说是我们这个NEX异常,但是NEX这一块呢,我们能看到这是config相当于我们配置中心的,那我们没有用na斯的配置中心,所以们这一块呢,不用去管NAS配置中心的这个事情。它所有跟NAS配置中心的这一块提示我们都可以呢,忽略掉就行,或者大家配合NAS配置中心的地址,让他呢自己别在这儿报我们这个连接各种HDPS盖这些请求就行了,当然我们现在呢,这个容器是没有任何问题的。
10:05
好,同样的来到我们的这个部署里边,先看一下秒杀服务,秒杀服务呢,先也动态更替上来没问题,这块呢,只要更替上来以后,我们接下来进入我们这个秒杀服务里边,我们首先来看一下它的这个日志,点开那秒杀服务的所有日志这一块呢,都是一个正常反应,那就没有任何问题了,好,我们把这个呢关掉秒杀服务一切都正常,那至此。我们部署的所有服务里边。没有一个运行失败的全部成功。而且一旦有服务宕机。基于我们K8S自己的机制,我们这个服务呢,保证有一个副本,那就一定会有一个副本。所以只要宕机,我们就K8S就会拉起另外一个,除非我们没有任何机器,有资源再来拉起这个副本,那就完全当了。当然如果我们这个机器非常多的话,我们可以随便的调节任何一个服务们,让它的副本多运行上两个,那这样的话呢,我们的整个负载均衡,那就更厉害了。
11:09
那我们只需要在这来调节它的这个副本数量,这样我们就会在NOTE2节点,我们看到NOTE3节点我们都会运行我们这个容器。只要一运行我们的这个吞吐量,那就会有很大的提升,好,那这是我们的这一块的状态。答,我们现在可以让他只来运行一个,或者我们让他就来创建两个也是可以的。那至此我们所有的这一块为服务全部呢是部署成功的,那么后台集群这一块,包括网关流水线,预准备环境全部成功。那接下来我们就把前台的部署完,我们的整个项目就能跑起来了。
我来说两句