00:01
各位大家好,下面呢,我们继续来学习KS,在之前内容中呢,我们讲到了很多相关的操作,然后咱们现在来做这么件事情,咱就在我们的K8S集群中来部署一个实际的一个项目,看这个流程是怎么样的,然后这里边给各位主要来讲这几个内容。在这里边我写一下,咱们就是在我们的K8S。集群里边来部署这么一个实际一个项目,但这个项目肯定有不同类型,咱就以这个Java项目为例,在我们的开S中部署一个加入项目,给各位来演示一下它的一个部署的一个完整流程是怎么样的,这时候我们要讲内容,那这里边呢,在讲这个部署项目之前,给各位先说一下我们这个容器交付一个流程,包括在K8S中部署项目的流程是怎么样的,因为大家知道咱们现在做这个操作用的是不是都是这个容器化技术,所以首先第一个给各位先做个介绍。
01:09
就是咱们一个容器的。这么一个交付的。一个流程怎么样,包括咱们在这个K8S里边。我们部署这么一个Java项目,它的这个流程是怎么样的,所以先把流程给各位做个说明,然后流程做完之后,咱最终再做我们的这操作,那流程怎么样,下面给各位详细说一下,首先第一个咱先说一下我们这个叫容器的一个。交付的流程,这个流程是怎么样的?那各位我来画个图,把这流程咱们详细画一下。就是我们现在比如说我们在容器这个交付过程中,里边涉及到会有很多的环节,那我下面把这个环节给各位画的详细一点,首先里边我们经过第一个环节或者第一个阶段,第一个阶段是什么呢?
02:08
咱可以理解为,比如现在我在里边呢,我要部署一个Java项目,以容器方式进行进行部署,所以首先第一部分咱Java项目是不是要开发代码啊,所以这是第一步,我们一般理解为就是我们本地这个开发代码的一个阶段啊,这是第一个,而在开发代码阶段中,咱们要做什么事情?各位应该能想到,第一步咱是不是肯定要编写代码,肯定要做这个事情,包你代码编写之后,里边你要做这个就是容器化的一个测试,也就是说你测试代码,看这代码到底有没有问题,这肯定要做到,然后包括这之后,因为咱最终这个代码要给它打成这个镜像,然后以容器方式是不是进行交付,所以这里边我们要给他做打镜像一个准备,咱要给他编写一个文件。各位应该学过docker,如果docker不是很熟悉,各位可以关注上硅谷鼓励学院,有docker的详细内容,里边要编辑一个文件,这个文件我们就叫这个docker file。
03:13
通过这个文件,为了咱后面打镜像做准备,Docker fair,所以第一个阶段开发代码阶段,我们主要应该做这个视角编写代码测试,包括编写doer file docker file,为了后面打镜像做准备,所以这是它的第一个阶段,这个各位知道,然后这个阶段之后,我们下面进入到我们的第二个阶段,那第二个阶段要做什么呢?大家注意,比如说我现在我代码写完了,那写完代码之后,它是原始的账号代码,那代码咱是不是要编译啊,编译之后咱要给它构建之后,或者给它制作成镜像,然后把镜像给它,就是上传到或者推送到你那个镜像库里面去,这个位置是不是要做这个事情,那我写一下就是我们的第二个阶段,这一阶段咱可以叫做啊,就是这里边说的官方点,它叫做。
04:08
持续。交付。或者说我们可以说叫持续集成啊,一个意思啊。一般都有这些说法,然后这过程中主要做的事情刚才提到了,给各位写一下咱们代码要进行编译,Java各位应该了解过,Java代码要变成是不是class文件,这个过程要做编译包,把Java代码是不是要打包啊,就是编译。打包给你打成袜包,或者打成炸包,然后这里边你要制作你的这个。镜像就是咱们把打成那个炸包或者袜包制成镜像,然后把镜像上传到你那个镜像的仓库里面去,比如咱传到阿里云仓库,或者get half什么网易等等仓库中去,所以第二部分做这个事情叫持续交付或者持续集成。
05:00
但会我强调啊,这两过程啊,一般来讲在实际中啊,一般都是由开发人员做到的,而如果说你作为运维人员,那咱一般怎么做,你可能是拿到打包好的这个炸包项目,比如炸包,挖包,或者说你拿到这里边的镜像,但是一般来讲,我们经常是拿到这个炸包袜包,你把它打成镜像,然后上升到仓库中去,一般做这事情,而运维阶段一般我们不多代尔编写,因为这些都是由开发人员做到的,但是你知道里边有这过程。然后这里边当我们制作完镜像,并且上传到镜像仓库之后,最终把它是要做这个就是部署了,那我们看我们的下一步骤就给他做最终这个部署,或者说项目的部署,或者说应用的部署。我写到这位置,这过程就叫做应用的一个部署。然后应用部署中呢,那我们做的事情就是咱们之前学到的,比如现在这里边我们要做这个就是我写的详细点啊,比如说我们的环境的准备,假如你搭建一个K8S的机群啊,做这个准备,然后在里边,比如说我们要创建这个pod。
06:10
包括你创建。Service,或者创这个叫in Grace。就等等这些操作,这里边啊,就做环境准备,环境配置,然后里边做那个真正部署,比如创建po的创建容器,然后把它对外暴露端口,这过程就是应用部署,所以这是我们的这个阶段,然后应用部署之后,咱现在就是我们这个。项目或者应用在我的基因中,应该已经完成了部署,然后最后就是我们一些相关的运维工作了,啊,就最后一步就是你的运维工作。运维,运维里边,比如说我们做这个就是。监控包括做什么一些相关的什么错误,或者说故障的一些。排查等等这个事情,另外里边你可能做这个应用的一些升级等等一些操作啊,或者说优化,所以这个啊,就是咱们提到的,我们通过容器交付一个比较完成流程,我们一般做这交付大体上应该都遵循这么一个流程,那我们再重复一遍啊,第一个就是开发代码阶段,你变现代码,测试编写docker file,为了制作进行做准备,第二部分持续集成代码编译打包,制作镜像,把镜像上传到窗库中去,然后第三部分应用部署,就是你环境准备,比如你创建po的service ing Grace等等,把这过程做到对咱之前学到的,然后最后我们做运维,比如你监控故障排查,升级优化等等,所以这是一个容器交付的一个完整的一个流程,大家把这流程给它有一定的了解,因为咱一般。
07:53
用容器交付,大体上都遵循这么一种流程。所以这个啊,给各位做了一个说明,你把这个给他知道。
08:03
这是我们说的第一个制定容器交付流程。然后这个说完之后呢,给大家继续往下来说,比如说我们现在啊,我要在我们的K8S集群上部署一个Java项目,当然你部署别的项目过程类似,现在要讲一下这个部署项目,一个就是更具体的流程是怎么样,比如说现在我们刚才说的这个过程是一个总体上一过程,然后咱们现在说的是里边的细节的部分,比如里边细节就你怎么打镜像,怎么上传,怎么监po in grade等等,把这过程更细致的给大家做描述,所以下面我来说一下。K8S里边部署Java项目里边一个更细节的过程,这个应该怎么去做,咱这里边就以Java项目为例,其他项目的过程跟他应该基本上也是类似的。那各位我来说一下啊,咱们看下一个内容,我给大家讲到这里啊,就是我们现在给大家讲的是在我们的K8S这个机型里边部署一个项目中那个流程,就是里边一些细节的这么一个。
09:14
过程啊,刚才说的是一个总体流程,下面咱说这个细节。那这个过程是怎么样?给各位强调啊,因为咱们现在这个课程叫cor ks专注,于是我们做这个就是运维相关的,所以咱重点肯定不放到怎么写代码阶段,怎么写代码,各位可以关注上归谷谷力学有相关Java的视频,你可以关注,咱主要看后面一部分啊,就是里边这个过程,那咱说一下这个流程是怎么样的。给大家也是画个图再来说明。那我来说一下啊。呃,比如这个啊,你画一条线啊,咱为了区分一下啊。然后咱们往下看啊,这流程怎么样?首先里边的第一步咱要干什么,因为现在我们要部署加入项目,咱是不是要有这个JA入项目,那我这里边一会儿给大家会提供出来一个JA入项目啊,这是一个boot,这么一个JA入项目,它里边就可以直接用ma吻打成炸包,这样就会说这怎么做,就是Java一个过程,给大家也做一个演示。
10:22
就是这里边我们现在关注是这个阶段,比如我现在这代码已经打成了这个包,你可以打成炸包或者袜包,然后这里边你要编写一个叫do fair,当这些都有之后,咱要做的第一个主要过程就是把我这个炸包、挖包,通过do fair,是不是要先给它制作成镜像,所以这是里边的第一步啊,就是制作镜像。单里边肯定要有那个项目,然后这里边就通过我们那个docker file里边编写那种制作镜像,比如说啊,我们这里边Java项目,那Java项目中肯定要有那个JDK的环境啊,包括等等一些相关的一些Java包的一些东西,就是咱会具体说这是第一步制作镜像,咱肯定要做这步,就这里边通过docker file,然后通过docker里边一些命令把镜像制作出来。
11:19
然后在制作镜像过程中呢,这里边因为咱们这个镜像制作好之后,你需要把它呢,还要做件事情,就是上传到这个镜像仓库中去。那我写一下啊,第一步就是通过docker fire,通过docker制作镜像,然后第二部分咱们把这镜像给它,就是上传到,或者说给他推送到定向仓库。这是我们做的第二部分,那这镜像仓库呢,在实际中有很多,比如说有这个阿里云的仓库,有这个网易。云的这个仓库等等有很多,我一会儿给大家就以这个阿云的进行仓库为例啊,咱给它推送到阿云这个里边去啊,就是我们这个位置中去,这咱一会儿会说这怎么操作,所以这是它的第二部分,第一步通过项目打成的炸波啊,包制作成镜像,第二步推动到你的镜像操纵中去。
12:20
然后做到之后,我们看第三步,第三步呢,就是现在我这里边定向在仓库中有了,然后咱们下面怎么做,就是咱今天学到的,在里边咱就给他真正做这个部署,就给他部署这个deployment,给他部署,也就说我们通过那个控制器去部署这个镜像。啊,这是我们的这步啊,我写一下。通过控制器。部署镜像,也就说在里边呢,咱可以写样文件,或者直接创建,就你可以创建一个,比如这个deployment。或者说其他方式,比如说sales for set等等,用这个来部署你这个镜像啊,所以咱们要做这个过程,然后你部署镜像之后,我这个就是相关的这个内容是不是要对外,或者相关的这个容器是不是要对外暴露你的端口,所以咱要给他对外暴露你这个端口,或者对外暴露我们这个应用。
13:20
这是我们的第一步啊,我写一下它就是对外暴露应用。然后对外暴露应用的方式咱都学过,咱可以用那个service里边用note po,或者用那个in格都可以做到,就这位置中我们就创建service或者这个in gra,让它对外暴露你的应用啊,咱要做第五过程,然后这个做到之后,咱下面我这个应该到deep已经完成了这么一个。部署的过程,然后最后咱可以对我的集群,比如做一些监控,做一些什么日常的维护,比如升级啊等等一些操作啊,就是最后这过程咱做这个相关的运维工作。
14:05
我写一下就是运维,比如说在运维里边,咱可以做这个就是集群的一个监控啊,包括你的升级。优化。等等一些内容,所以这个啊,就是咱们在K8S里边部署项目中一个细节过程,总体是这么流程,然后细节里边就是咱通过打成的Java的Java包或者挖包制作成定向,通过doer fair,然后把镜像推送到定向操纵中去,比如咱后面用阿里云为例加的都类似,然后这个镜像有之后咱通过控制器下载仓库中的镜像,通过这deep或者其他方式部署镜像,部署之后对外暴露应用,用service或者inra都可以暴露,然后暴露之后最后做运维,比如咱对里边的内容做监控,包括他做升级优化等一些内容。所以这个啊就是咱们部署项目一个完整的流程给各位就这个说明,也就是说通过我的介绍,各位对在我们的QS进行中如何通过容器交付或者如何部署一个Java项目。你把这过程要一个。
15:16
清晰的认识,咱们一会儿就通过这个流程,把这个给大家实际部署一下,当然这个过程中涉及到这个Java项目,给各位也会做一个演示啊,就是他怎么打包,怎么做这个过程,把这个会给各位详细说道,所以现在咱就把这个过程做一个说明,一会儿咱通过实际操作真正完成一个部署。
我来说两句