00:00
好,前面呢,我们实战了一下酷fair的多租户系统,接下来我就使用任意一个这个账号,比如第位兆来登录进系统里边,我们再来看一下如何在酷平台上部署一些应用,我们呢先会以这个中间件为例,比如我们该如何部署一些中间件上去,比如我们的my circle red等等等等,接下来呢,我们会以一个若1CLOUD这个为例,这个呢是一个典型的Java写的一个分布式的小应用么?这个应用呢,你再来看怎么部署上去。那我们先登录进来,第一上好登录进这个系统以后呢,我们进入我们自己的项目,点进来,我们现在负责的是这个his商银通项目,那这个项目里边,如果我们想要给整个平台里边部署应用。这一块呢,是我们整个项目的总揽,我们部署的好多东西呢,都是零个,所以我们想要部署呢,都是来操作左边的这些菜单,当然这些菜单咱们后续的操作里边,我就会知道每一个都是什么意思,然后呢,我们现在得思考一下,我们整个在云上部署应用该是一个什么样的方式,该应用部署成什么样子,我们部署应用要考虑哪些呃问题,所以我们先来考虑一下这个图,首先我们在云上想要部署应用,你得想清楚你的这个应用呢,将会以什么样的方式部署,所以在cooper s在这边呢,会有一个东西叫工作负载,这个工作负载呢,其实就对应我们cooper ne,我们以前讲的K8S里边的工作负载,工作负载里边呢有三个,一个叫部署,一个叫有状态副本集,一个叫守护进程机,其实呢,对应的就是我们以前讲解K8S的deployment部署,以及有状态副本级state for set和守护进程器DEMO set,然未来我们想要部署应用。
01:52
我们优先可以进工作服在里边,如果我们想要部署一些微服务,我们自己开发的微服务程序,我们可以在切到部署这一块,我们点击创建开始来部署我们的微服务,所以这是第一种微服务呢,我们也是把它常见于我们说是无状态应用,无状态应用,所以呢,我们当我们部署一些微服务,一些无状态应用,那我们就来使用这个deployment在部署章节,如果我们想要部署一些中间件,比如my circle等等这些有状态应用,所谓的有状态应用,那就是如我们这个my circle部署起来,它的这个数据呢,存到了一个地方。
02:35
在别的机器,如果他死了,重新拉起以后,这个数据呢,应该还是在的,它能记录我们之前的一些状态信息,所以呢,我们把这个叫有状态应用,一般我们的中间件都属于有状态应用,所以我们的中间件我们后来呢可以使用有状态副本及部署,所以如果我们想要部署中间件,那就应该来到工作负载的有状态副本集,我们点击创建来开始部署。其次呢,还有一种应用叫守护进程机,它呢也对应的是K8S里边的另外一个叫DEMO,什么叫守护进程机,比如有一些应用在我们K8S集群里边,假设我集群里边呢,现在有五台机器,我们呢想要做一个日志收集工作,收集每一台机器自己的日志,所以呢,我们的日志收集器就有可能在每一个机器是不是都要运行一份。
03:26
所以呢,在每一个机器运行一个我们的日志收集器,这样我们这个日志收集器呢,负责收集我们当前机器的所有日志,然后呢,把他们收集到一个我们的整个比如大数据的日志平台,所以针对于这些日志收集器,在每一个机器都要部署一份的,我们可以使用这种叫守护进程机,所以呢,相当于机器一启动,那这个应用呢,就在当前机器有且仅有一份我们在这儿部署着,所以我们在部署之前,我们先想清楚工作负载是什么,我们以什么样的形式部署到云平台。
04:00
所以呢,在这一块做的三种这种工作负载对应的就是K8S里边的deploy,我们部署无状态应用在这儿和state for set,有状态应用我们在这儿和DEMO set,我们的守护进程集我们在这儿部署好,这是我们考虑的第一个问题,我们如果想要部署应用,部署成什么样的,但我们这个部署完以后呢,应用长什么样?我们以前说过,无论是有状态应用还是无状态,这是我们的无状态应用,还是呢,你的有状态副本机,最终呢,部署的应用是不是都是以pod的形式,是不是启动起来,比如我无状态应用呢,我要部署三份,或者有状态呢,我要部署五份,它呢相当于会有启动五个pod在各个机器,所以呢,最终我们在这一块操作的部署,我们在这一旦一创建我们这个应用呢,相当于就部署上去了,操作的部署呢,最终会以pod的方式运行在底层,Pod呢就是这个容器组点进来。所以我们在容器组里边呢,其实就是我们K8S里边的什么pod,所以当你的这个应用呢,一部署上去以后,你也可以使用命令行,你在你的整个K8S里边你来检查。
05:10
比如我们这,然后呢,你使用酷边ctrl get pod,你来检查部署了多少应用,当然我们目前呢是负责上一通项目,其实这个上一通项目是一个名称空间,名称空间呢叫his,所以呢你可以检查我这个his名称空间下有部署哪些东西,我们可以检查一个一个的pod,所以呢我们这无论使用什么样的部署,最终呢会产生pod,就是我们容器组,容器组呢在我们库S平台里边,那就是这个界面,你可以点进去看一下你的整个容器组工作有没有正常好,这是我们考虑的,我们应用该以什么样的方式部署,你是无状态的,有状态的还是守护镜成绩,然后呢,你部署完以后呢,就会有容器组在这儿呢,相当于在底层真正的运行这些pod,而你在部署完了以后呢,还要考虑一件事情,就是我们的这个服务,所谓的服务就是我们以前讲解K8S的时候,它的网络。
06:10
就是这一块,因为部署的这个应用,最终无论呢,我们谁要访问,比如集群内想要访问,或者呢,我们集群外大家呢都想要访问,所以这就牵扯到我们以前说的这些网络,而我们以前讲的这个网络呢,两种方式,一个是克拉IP,只相当于暴露在集群内,集群内呢,大家通过集群的集群内的地址来进行访问,和第二种noteport给每一个集器都开一个指定的端口,这样呢大家访问公网IP,当然机器的公网IP加上端口,这样集群外也能访问,所以在我们的库fair平台里边也一样。来看一下你的这个应用呢,部署完了以后呢,接下来你就得部署一个服务,所谓的服务,那就是在这服务就是我们K8S里边的service,你在这儿可以来进行创建,创建呢你的应用不同,你可以创建不同的服务,这个服务呢,相当于就告诉我们接下来这个应用将会以什么样的方式被访问,是集群内访问还是我们集群外访问,但后来我们部署的时候,再说这一块的整个服务呢,我们想要创建其实还有很多种方式。
07:18
啊,这就是我们的cooper fair平台里边几个关键的东西,首先我们的服务,这是相当于配置我们K8S service负载均衡网络的和工作负载,就是K8S里边的几个核心deploy和以及容器组,最终每一个应用呢,都在这个容器组里边,而这个应用路由其实就是我们以前讲解的K8S的ince网络。就是我们可以配置哪一个从哪一个域名来的,这个请求打给哪个服务,那我们后来配的时候呢再说。所以这是我们说的应用路由,而任务呢,就是一些定时任务,这个东西呢,我们没讲过,我们在这儿呢,也暂时不做什么实战,如果想要深入了解的也可以关注我们大厂学院里边详细的讲解,然后呢,那就是我们的整个部署,就是参照我们应用负载这个章节,从服务我们部署一个负载均衡网络,到我们使用工作负载,哪种工作负载我们来部署应用,部署出来的应用呢,最终是一个容器组,然后呢,我们可以给它添加网络,对吧?
08:25
当然如果你呢,想我们的这一连串操作,我得呢先部署,部署完以后呢,再来添加服务,呃,然后呢,我再添加应用路由,我想可能一次部署呢,我要点好几个,你嫌太麻烦了,在酷fair里边呢,还有一个这个叫应用,这个应用呢,你点一个部署性应用,嫌一键的方式可以帮我们,呃帮我们做一个什么事呢?当然这是自制应用啊,部署一个自制应用,相当一键的方式帮我们来部署出所有的应用,它呢相当于帮我们自动创好啊服务负载均衡网络,自动创好工作负载,自动创好应用路由,还有呢,这些容器组它都有了,所以呢,在这是一个一键式的操作。
09:06
这一块呢,我们后来再用,我们先玩转我们这个底层的部署,所以我从工作负载我来部署一个应用,最终产生pod,然后呢,我们自己再在可视化界面里边创建它的负载均衡网络,这就相当于我们把库用成了K8S的一个默认的可视化界面。但是呢,仔细再来考虑,我们无论是你部署什么样的应用,有状态的,无状态的,还是守护竞争机,我们在应用部署期间,我们还要关注更多的东西,比如存储和配置,什么是存储和配置?举一个例子,我的这个运行中的容器组,以我们马SQL为例,马SQL最终的数据是不是要存到一个地方,这个数据呢,我们学过K8S的PVC,我们是不是应该挂载出去,所以呢,如果你的一个文件目录数据要挂载出去,那你就应该在库fair平台的存储管理里边,这有存储券,我们可以提前创建一个存储券,让他呢绑定一块存储地方以后呢,我来启动pod的时候,那我就将我pod里边的数据指定到我一个地方,所以存储卷这一块就对应K8S的PVC的概念存储卷,那存储卷创建出来以后呢,最终咱会有一个真实的地方来存我们的数据啊,那我们这个应用部署数据有存的地方,那其实还有一个核心。
10:27
更关键就是应用的配置,比如MYSMYSQ呢有自己的配置文件,Red有自己的配置文件,甚至于我们自己的微服务也有自己的配置文件,所以我们这个配置文件呢,我们也可以挂载出来,因为我们配置文件有可能经常要修改的,而我们微服务的这些配置文件自然可以使用微服务的整个解决方案,比如nacos他们的配置中心,当没学过的同学也可以不用管这个事情,那我们呢,如果想要把这个配置抽取过来,那可以在我们K8S的平台,如库片可视化界面里边的配置这个章节,如果我们要部署一些应用,要挂载抽取一些配置,我们在这儿呢继续创建,而这一块的配置就是K8S里边的con菲map配置集,这个配置集呢,我们以前也做过,所以呢,相当于我们要部署一个应用,就要考虑这么多的问题,在我们的可视化界面里边都有,我们整个要部署应用。
11:24
捋一下思路,首先我们来选一种工作负载,我们这个应用到底是无状态的还是有状态的,还是守护进程机,当我们这个应用部署完了以后呢,就会产生一个一个的pod,当然我们在部署期间,这个pod的数据要挂载到哪个地方,配置文件要挂载到哪个地方,我们就得考虑到。所以呢,整个部署的三要素,第一个以什么样的形态部署,选工作负载,第二个我们的这个数据和配置文件要挂在在哪个地方数据,数据呢?当然包括它真正的存储的数据,以及配置挂载到哪和第三个我们最终部署的这个应用网络该如何访问,有了这三个模板以后。
12:04
我们把这三个呢总结给大家写到这儿,部署应用的三要素,第一个我们的应用的。部署方式好,我们到底是有状态无状态还是什么?第二个就是我们这个应用的数据挂载,数据挂载呢,包含我们的数据,我们应用比如马SQ数据存到哪,以及配置文件,配置文件挂到哪,所以这是我们的第二个,然后呢,接下来第三个要素就是我们应用的可访问性,就是我们应用的最终的负载均衡网络该怎么办?所以我们接下来部署中间价,我们也是来思考一下这三步每一步在做的时候该如何在可视化界面里边配置就行了。
我来说两句