00:00
好,咱们现在的时间是晚上的这个八点半,那么咱们就开始今天晚上的这个学习,那么今天晚上呢,咱们来学习一下docker与我们的KSM,那么咱们希望通过今天晚上的这个学习,能够让大家对我们的云原生体系能够有一个了解,为咱们后续的什么呢深入学习奠定一个基础,那大家之前哈,如果听过赵老师的课程,那么应该都知道,赵老师呢,在上课的这个过程当中,会给大家记录一个课堂的笔记,因此呢,今天晚上咱们也会按照同样的这种方式来给大家记录一个课堂的笔记,重点给大家介绍以下三个方面的知识,那么刚刚提到我们的这个do com, 还有K80呢,它是属于云原生技术站体系当中的组成的部分,因此呢,首先。
01:00
将咱们需要对云原生技术站体系要有一个基本的了解,那么了解到了基本的知识以后呢,那么咱们讨论一下do那个什么体系加构,那么当你把do的体系加构掌握以后呢,那么咱们会结合具体的什么DEMO影是看一下如何把咱们的应用程序部署在多cker的容器当中,那么这个地方呢,咱们会给大家演示两个DEMO的示例,首先第一个DEMO示例呢,相对来说比较简单一些,那么咱们直接在多ER容器里面呢,部署一个NGX的服务,当你把NG部署在docker容器里面去以后呢,你通过数组机的。这个端口的转发就能够访问到NGX,什么它的欢迎界面,好这个实例呢很简单,好稍后呢咱们再来演示一个稍微复杂一点的什么DEMOS令,好我们会在我们的什么多cker的这个容器里面部署一个什么,部署一个flink集群,那么既然你要部署一个flink集群,首先咱们就需要对flink的一些基本知识要有一个基本的了解,那么这个flink它是属于大数据的计算引擎。好关于这个里面涉及到的一些知识,放到so后来给大家进行相关的介绍,因此呢,通过这个地方的DEMO眼是相信大家应该能够对我们的do com能够有一个感性认识,那么有了docker以后,到底有什么又是我们的K8呢?K80全称盛我们的CUNE,那通过咱们稍后的学。
02:46
行,大家会了解到K8S上它是一个容器编排工具,那么容器编排工具跟你的这个容器引擎它有什么区别?好,咱们稍后呢,来给大家进行一个详细的介绍,好因此我们介绍到这里的时候呢,那赵老师呢,就带着大家。
03:07
去梳理了一下,我们在今天晚上将会学习到哪些知识,好,咱们现在呢,咱们就按照这样的一个顺序来给大家进行相关的介绍。首先咱们看一下第一个部分,云原生技术站体系的一些基础知识,好整个原生体系当中它包含很多的组,那么咱们使用这么多的组件主要是为了去完成两方面的工作,哪两方面工作呢?首先咱们去开发我们的分布式应用程序,对,好,利用咱们的云原生体系,你能够去开发我们的分布适用程序,这个是云原生技术,但体系它要达到的第一个目的,当你把应用程系开发完以后呢,如何去部署咱们的分布式应用程序,因此呢,整个云原生体系它都是为。
04:07
比绕开发分布适用程序和部署分布适用序,他所提出的一个什么一种解决的方案,那既然是如此的话,那么赵老师呢,问一下各位直播间的同学,你能够把云原生体系里面它所包含的主要的一些组件,主要的一些框架发送到咱们的公屏之上吗?如果说大家都清楚呢,就请积极回答一下赵老师的问题,如果说大家不是很了解,那么就请在公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞,哪些组件属于我们的云原生体系好这个地方呢?我把一些主要的组件都给大家进行一个简单的一个介绍,首先第一个那么就是我们的微服务框架,那么微服务框架。
05:07
当然指的就是我们的嘛,这个spring cloud啊,那通过使用咱们的spring cloud呢,我们能够去开发我们的分布适用程序,那么如果说大家对我们的私奔靠有一定了解,应该知道,那整个我们的私奔靠里面,它一共包含有什么呢?三个组成部分,简单做一个介绍,首先第一个部分是我们的服务的提供者,服务提供者他把它提供的服务通过使用web service的方式注册在我们的微服务的注册中心里面,对因此第二个部分呢,是我们的注册中心,那么SPA code的里面呢,提供一个注册中心叫做ecom。当然你使用其他的注册中心也可以服务提供者,把他的服务注册到注册中心里面,有服务的消费者来进行检索和调用,因此呢,这三个部分共同组成了咱们的是不能靠的微服务的框架,那么有了微服务框架以后,我们就能够去开发我们的分布式用程序,并且开发出来的什么分布式用程序非常适合容器化的部署,那么我们把我们的服务提供者,注册中心服务的消费者分别部署在三个什么这个容器里面,从来部署我们的分布式应用,因此为了解决部署的问题呢,那么我们在云原生体系里面,它就提供了我们的第二个组成部分,那就是我们的嘛,这个容引擎,那什么叫容器引擎呢?你把容器看成是一个虚拟。
06:57
笔记就可以,比如说它的本质跟你所运行的whenre呢是完全一样的,比如说我们什么这个do com, 包括我们的康康定,它都是属于我们的容器引擎,容器引擎本身提供容器,对容器,它就相当于是一个虚拟机,那么从这个操作系统的层面上去看,你所运行的一个一个的容器,本质上。
07:27
就是操作系统的一个进程,那么这个呢,稍后呢,咱们会通过DEMO让大家能够有一个感性认识,但是呢,对于一个复杂的应用程序来说,我们在部署应用的时候往往需要启动多个容器,比如说你把你的微服务应用程序部署在docker容器里面的话,你至少就需要启动三个容器,对不对?一个容器运行服务提供者,一个容器运行我们的注册中心,另外的一个容器运行服务的什么消费者,那么他们共同属于同一个分布适用程序,那因此呢,我们在一个复杂的应用程序里面,为了管理同一个应用程序,它所对应的不同容器,对,因此呢,我们在整个的云原生体系里面。
08:27
免对,它还提供了咱们的容器编排工具,那什么叫容器编排工具呢?通过使用容器编排工具,我们去管理和编排同一个应用程序的不同容器。对容器编排工具。本身并不提供容器,那么因此呢,你在使用这些容器编排工具的时候,首先就需要使用一个容器引擎来提供容器,供容器编排工具管理和编排,那么既然是如此的话,赵老师呢,问一下各位直播间的同学们,你能不能够把一些比较常见的容器编排工具发送到咱们的公屏之上,那如果说大家都清楚都知道,就请积极回答一下赵老师的问题,如果说大家不是很了解,那就请在我们的公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞,好,咱们接着往下来给大家进行相关的介绍,那么目前啊啊,感谢咱们的奋斗青年。
09:45
好,这位谈心啊,谈心同学说了个什么SWM,对,好,这个SWM刚稍后呢会讲到,那么这个M它不是容器编排工具,它是docker里面提供的集群啊,集群和容器编排还是有一定的区别,对,那么关于什么是docker swan稍后呢,我们再介绍到do的体系架构的时候,再来单独的给大家进行相关的介绍。
10:12
哈,感谢我们的这个。出发探寻哈,在好撒老师呢,在这里呢,把主要的容器编排工具给大家写在咱们的课堂笔记上,在好比较常见的是两款,对一款呢,就是刚刚在水一方说的哈,对docker,什么do compose, 那docker compose呢是属于咱们的容器编排工具,还有一款就是大大名鼎鼎的什么我们的CUNE,还有我们的K8S,那么因此呢,从功能上去说哈,从能上去说,你的这个docker compos跟你的这个K8S,那么都是属于容器编排工具,他们本身并不提供容器,那么因此呢,你在使用docker compos或者使用K8S之前,首先就需要使用一个容器引擎,比如说docker compose, 当然使用的是docker,那K8。
11:14
但是呢,它在早清版本里面是使用的docker作为K8S容器引擎,但是呢,顺便提一下K8S它从什么1.24版本开始,K8S逐步在放弃对docker的依赖,转向使用我们的content team作为什么K8S的容器引擎,稍后呢,咱们会结合DEMOS令让大家能够有一个感性认识的,那既然这两款都是属于我们的容器编排工具,它们有什么样的区别呢?那最主要的区别。在于呢,这个docker compos它是一个什么呢?单晶环境上面的容器编排工具,而我们的K8S它是一个什么集群环境下面的容器编排工具,那因此呢,K8S它的功能会更加强大,但是二者的本质都是通过一个什么亚M文件来描述一下,我们即将要部署应用程序,它里面包含有几个容器,如何通过经营项目的创建容器,那这个呢,稍后呢,咱们会结合DEMO影是让大家能够有一个感性的认识,好这接着呢,往下再来给大家进行相关的介绍的,那除了这一些组件以外,那么我们在整个的云原生体系里面,它还提供了我们的什么自动化的。
12:54
构建工具,好,问一下各位直播间的同学们,你能够告诉一下赵老师吗?目前我们在云约生体系里面使用的最主要的自动化构建工具是哪一款工具?你能够把它的零证发送到咱们的公屏之上嘛?那通过使用自动化的构建工具,我们最终的目的是为了去实现CI和CD,那什么又叫CI和CD呢?这些基本的概念大家是不是都清楚?对,这些都是我们在学习云原生体系的时候,那需要重点掌握的内容,对,好,我们这我们讲一下,那我们在整个云原生体系里面,目前赵老师了解的情况是最主要所提供的自动化的构建工具是。
13:54
我们的嘛,这个金对那金它能够跟你的这个代码仓库,跟你的do com跟你的金son跟你的么keep那进行集成,对那通过使用金看,我们能够自动的去拉取代码仓库当中的最新代码程序,拉取下来以后,通过生成docker的镜像,那然后呢,进一步的发布到我们的docker环境,或者发布到我们的什么K8S当中,而你发布到docker。
14:31
或者发布到K8S里面,既可以是你的生产环境,那么也可以是你的什么测试环境,那么通过使用这么样的一个流程,我们来实现我们的CM和CD,好,问一下各位直播间的同学,你能不能够把这个CI和CD的群,它的中文名字,中文含义发送到我们的公屏之上吗?那么你实现了CI和CT以后呢,本质上就实现了我们的什么这个develop的什么方法论,对这些都是我们在云原生体系里面非常重要的一些概念,好,首先咱们解释一下。
15:17
什么叫做我们的CM可CDM,那CI和CDM它表示可持续的什么呢?集成和可持续的开发,通过使用自动化的构建工具就能实现可持续开发,可持续发布和集成,对,而这个cii和CD就是我们develop什么核心,那什么又叫S呢?Develop请大家注意一下,它是一个什么方法论啊,要它是一个方法论,那利用这么样的一套方法论,我们。能够去协调我们的开发团队和运维团队之间的工作,前面的div呢代表我们的开发,后面的OS呢代表我们的运维,因此呢,这些都是我们在整个云原生体系里面,它所提供的一些组件,包括提供的一些解决的一些方案,那么我们利用这些东西最终的目的是为了去开发和部署我们的分布式的应用程序。好因从咱们介绍到这个地方的时候,那么有关云原生技术站体系里面涉及到的一些基本问题呢?那么就给大家介绍到这地方,好问一下各位直播间的同学。
16:47
关于咱们啊,嗯。关于咱们的第一个小节,大家是不识都听明白了啊,如果说这个部分的知识大都听明白了,就请在我们的公屏之上,请给赵老师呢回复一个666,或者给赵老师呢点一个赞,让赵老师能够了解到大家都还能够跟得上老师的节奏,好有的这些基本的知识以后啊,咱们进到第二个部分的学习啊,我们来学习一下我们的这个docker的,那么通过咱们刚刚的这个介绍,大家已经了解到docker它是一个什么呢?
17:35
它是一个容器,引擎容器,它就是一个什么虚拟机,那么我们在学习docker之前,那么重要的就是需要去掌握它的这个体系架构,那么体系架构是非常重要的部分,因为呢,只有把体系架构掌握以后,后面你去安装和部署,管理和维护,整断和优化等等,那么它都是以这个体系架构为基础,那么既然它如此的这个重样,好们通过一张图片来给大家介绍整个多ER体系架构里面它包含有哪些组成的部分,好大家可以截个屏下来哈的这张图片就完整的给大家介绍了一下,整个doer体系架构里面它所包含的组成部分,好,咱们看我们上上面的什么这个方框啊。
18:35
看单独的一个什么dock,那个什么数主基因,那么通过刚刚的这介介绍咱们知道呢,Docker本身它提供的容器就是操作系统之上的一个进程,因此呢,运行docker的这台主叫做数主机,那一般来讲啊,这不绝对啊不绝对,一般来说这个数主机就是我们的Linux操作系统,对,而我们在docker里面最核心。
19:06
也是最重要的部分就是docker的什么守护进程,守护进程它是整个docker体系架构里面最核心也是最重要的部分,通过守护进程我们来管理这一台数主机上所有的镜像和容器,当然他也负责接收客户端的请客户端的指令,那如果守护进程死掉以后,这一台数主机上的docker服那么就死掉了,对,那么通过守护进程刚刚提到我们能够管理镜像和容器,那这个地方咱们解释一下什么叫镜像,那镜像就是打包好的应用程序,重复下镜像就是打包好的应用程序而存储镜像的地方。
20:06
叫做我们的镜像仓库,镜像仓库它可以是公有的,也可以是私有的,好问一下各位直播间同学们,能不能够告诉一下赵老师,多克官方他提供了一个公有的镜像仓库,你能够把这个公有的镜像仓库的名字发送到我们的公屏之上吗?如果说大家知道,那么就请积极回答一下赵老师的问题呢?如果大家并不清楚的话,就请在我们的公屏之上回复一个0,或者给赵老师呢点个赞。Docker官方他提供了哪一个公有的镜像仓库?公有镜像仓库它表示存储在这样的仓库里面的所有的镜像,全世界的任何。
21:07
个人都能够访问,好,感谢各位同学的好多ER,官方它所提供的公有的镜像仓库叫做什么dock com哈布那通过刚刚的介绍做到这个呢,是一个公有的镜像仓库,存储在这个镜像仓库里面的所有的镜像,全世界的任何人都能够访问,但是呢,请大家注意一像目前在国内哈,在国内他把这个什么呢?Docker HUB的公有的镜像仓库给禁用掉了,因此呢,目前你在国内访问这个什么doer HUB呢,可能会有一点点问题,当然你在一个企业的私有环境里面,不可能使用咱们的私公有进像仓库,那么咱们需要搭建私有的镜仓库,私有镜像仓库只能够用于自己访问的,那么一般呢也可以使用。
22:07
什么hober哈,对,那使用hober呢,你能够去搭建什么呢?私有镜像仓库,还存储镜像的地方叫镜像仓库对整个环境准备好以后,对你通过我们这样客户端的地方执行我们的docker per mini, 通过执行多cker普尔命令,我们呢就能够从镜像仓库里面拉取镜像到数组机上,从而形成本地的镜像,那刚刚提到镜像就是打包好的应用程序,对,那么有了本地镜像以后,你在客户端这地方的执行多望指令,那就能够通过使用本地镜像创建容器,而你的应用程器将会运行在容器里面,那么整个容器运行起来以后呢,它通过数组机的。
23:07
端口转发,我们在客户端就能够访问到容器内部的应用程序,那么这个地方你的这个守护进程,包括你所启动的各个容器,从操作系统层面上看,它都是运行在操作系统层,操作系统之上的一个什么进程进程的。但是呢,如果说。你在的环境里面只存在一个多克速度机,如果数主机死掉以后,它会造成运行上这一台输主机上的所有容器都会死掉,那因此呢,我们在实际生产环境里面,一般会建议大家去搭建部署多ER的集群,那什么叫多ER集群呢?多集群就叫多ER swan, 比如说在现在的这个SWM集群里面,它包含两台多克数主机,那当一个数主机,那当一个死掉以后呢,可以由另外一个接着去访问,对因此呢,整个集群它所提供的主要功能无外乎就是两个,一个呢是我们的负载均衡,一个是我们的失败迁移。
24:34
你的任何一个集群都将提供这样的两个功能,好一层讲到这个地方的时候,我们就给大家详细介绍了一下多考的一个什么体系架构,那体系架构是非常非常重要的内容,好问一下各位直播间同学们,关于多克的体系架构们大家是不是都听明白了,如果说这个部分大家都听明白了呢?就请在我们的公屏之上,请给赵老师呢回复一个666,或者给赵老师呢点一个赞,好,咱们接着往下。
25:17
嗯。我们接着往下来给大家进行相关的介绍,那有了这样的一些基本的知识以后,接下来呢,咱们就通过这个具体的什么DEMO的演示,当大家对整个的do com它能够有一个感性认识,首先咱们演示一个比较简单的事例啊,那直接把我们的engineerction部署在docker的什么呢?容器当中,那通过输组机的端口的转发,我们就能跟访问到容器内部的应用程序的,好怎么切换到我们的实验环境里面的,通过执行命令多ER image指令,你能够查看到当前数主机上所有的镜像,好,这个地方我事先从镜像仓库里面把所需要的镜像。
26:19
嗯,都下载到了本地生成的本地的镜像,好呢,做一个简单的一个过滤操作,过滤充有关NGS镜像,当你使用镜像创建容器的时候,如果不指定镜像的版本。默认将会使用最新版本的镜像来去创建这个容器,如果本地镜像里面没有所需要的镜像,它会自动的从镜像仓库里面拉取镜像。对,还有的这些基本知识以后,现在呢,咱们去创建一个多可的容器,对,好通过什么多ER run指令创建一个容器杠D选项表示把容器它所对应的进程运行在我们的什么这样的一个后台的杠P上,参数表示我们需要映射一个端口号,对,因为通过刚刚的这个介绍咱们已经知道了,从操作系统上去看,你所运行的容器就是数主机上的一个进程,因此呢,你要访问容器。
27:39
内部的应用程序需要通过使用输主机的端口的,这个转发后面呢,杠P后面需要写上两个端口号,那这个地方问一下各位直播间的同学,能不能够告诉一下赵老师,杠P后面的两个端口号,哪一个是数主机的,哪一个是容器的,大家能不能够告诉一下赵老师,如果说。
28:10
大家不是很了解呢,就请在我们的公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞,对这些呢操作大家后续都需要慢慢的熟悉起来的,好,咱们解释一下这两个端口号,那前面的1234表示数主机的,后面的80表示容器的,那当把容器启动创建出来以后呢,通过数主机的1234端口,我们就能够访问到容器内部的80的端口,从而呢,我们就能够打开n gix的欢迎界面,后面呢需要写上咱们镜像的名字,对,好,因为咱们这个地方呢,并没有写镜像的版本,刚刚说过不写版本的话,默认将会使用最新版本的镜像来去创建容。
29:11
容器好,容器创建出来以后,从操作系统层面上去看,它就是一个进程的,通过执行docker PS命令,你能够把当前数组机上所有的机容器都列举出来,对这地方咱们做一个简单的一个过滤,过滤从有关NG的什么进这个容器,那通过输出的信息我们就看到呢,你有个容器运行在我们的后台,对它已经启动了21秒,对通过访问。数主机的什么呢?1234端口,我们就能更访问到容器内部的什么80端口,这样子呢,你就能够打开这个n gix嘛,它的这个欢迎的这个界面呢,那既然是如此的话,好们打开咱们的浏览器,访问一下数主机的什么1234端口,好这个请求它将会被转发到容器内部的什么80端口之上,这样子呢,咱们就能够打开整个的欢迎的界面,因此我们通过刚刚的这个demom的演示,当然很简单,对,我们就把这么样的一个应用程序部署到了什么呢?Docker的容器当中,那如果说你要杀掉停止容器呢,直接执行docker,什么I'M-F表示什么强制杀死容器。
30:47
把容器的ID harm写在咱们的后面,对,那通过使用这种方式呢,容器它所对应的进程那就被杀死掉了,对,那因此呢,通过这么样的一个非常简单的一个什么DEMO演示,就把我们在整个docker里面的一些基本的一些用法给大家做了一个什么介绍,好问一下各位直播间的同学们。
31:14
关于赵老师刚刚演示的这样的一个DEMO的一个事例,大家是不是都看明白了啊?如果说大家这个地方都看明白了呢?就请在我们的公屏之上,请给赵老师呢回复一个666,或者给赵老师呢点一个赞,大家都看明白了吗?嗯。大家积极回答一下赵老师的问题啊,跟老师互动一让赵老师呢,能够了解到大家都还能够跟得上赵老师的节奏,对好,咱们接着往下来给大家进行相关的这个介绍,对好,咱们再来给大家演示一个稍微复杂一点的一种,我们去把我们的这个flink的什么集群部署在我们的docker的容器当中,那你要部署这个flink集群的话,首先咱们就需要对fli克的一些基本的知识要有一个基本的了解,好怎么打开flink的什么它的官方网站,就是flink,点阿帕琴点org,好简单介绍一下到底什么是我们的这个弗林卡,那这个弗Lin club, 弗Lin。
32:44
这个弗link呢,它是属于什么?它是属于我们的什么大数据体系里面的什么一个计算引擎,那这地方会涉及到咱们的大数据的一些相关的知识,简单来给大家做一个介绍,那关于大数据的更加系统的知识,赵老师会放到后续的直播课里面,单独的来给大家进行相关的介绍,单独给大家写个笔记,对,那咱们讲目前啊,目前我们在大数据体系里面对大数据的什么计算引擎啊,大数据的什么大数据的计算引擎,还问一下各位直播间同学,目前主要的两个大数据的计算引擎分别是什么,你能够把他们的名称发送到我们的公屏之上吗?如果大。
33:45
加了解,那就请积极回答一下赵老师的问题,如果说大家不是很清楚呢,就请在我们的公平之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞,好,咱们接着往下。
34:03
来给大家进行相关的介绍,目前我们在大数据体系里面,对主要的两个计算引擎,一个是我们的嘛10SPA克,一个是我们的嘛弗Li克,这两个是我们后续你在学习大数据的时候,主要需要学习的两个计算引擎的,那这两个计算引擎它们有什么区别呢?简单介绍一下,它这个18g呢?它是属于什么?它是属于离线计算引擎,那么你在18g里面,你所执行的所有的计算都是属于离线计算,换一句话去算,我们在18课里面并不存在真正的实时计算,所有的18个计算都是离线计算,那什么又是我们的flink呢?Flink它是一个什么?
35:03
执行计算引擎,那么我们在弗克里面的所有计算都是真正的实时计算,因此呢,整个的10SPA克偏向我们理线,Flink呢偏向实时,那了解到了这两种计算引擎的特点以后。那么就可以为我们以后的什么技术选型做一个参考,什么意思呢?就是说在你以后的应用场景里面,如果你要执行大量的离线操作,推荐使用18g反增推荐使用弗Li克,大家呢,可以到弗林克的什么官方网站上看一下,它是如何介绍的弗林克斯巴克的官网是什么?是我们的斯巴克点阿帕奇点啊级得好,关于斯巴克还有弗林克里们刚刚说过更加系统知识,今天晚上不讨论,后续呢,赵老师们会单独给大家介绍有关大数据的知识呢,但是现在的问题是你要把这个什么flink集群部署在大数据的,部署在多ER的容器里面呢?你就需要对flink的什么,它的体系架构要有一个基本的了解。
36:23
给大家介绍一下f clickma它的一个体系架构,那我们在整个的大数据体系里面,它的主要的组件都是一种主从架构,对10巴克是主从架构,弗Li克也是一个主从架构。介绍一下弗Li克的什么主节点,它叫做什么?它叫做我们的job manager, 那这个job manager呢,是fli它的主节点,主节点他负责维护管理整个集群,并且接收客户端的请求,那么真正的计算任务呢?运行在flink的什么重节点上,那整个flink的重节点。
37:11
它叫做什么?塔斯科manager尔因,从整个弗林克集群里面,至少它就包含有这两个部分,对,既然至少包含有这两个部分么?你把它部署在多克的容器里面的话,那么至少就需要启动两个容器,一个容器运行主节点,那另外一个容器运行重节点,对,那通过咱们刚刚的这个学习,大家已经知道我要编排管理同一个应用程序它的不同组成部分,那么是不是需要使用到刚刚介绍过的什么容器编排工具?因此呢,你在docker里面,你将会使用咱们的docker comp, 通过使用一个描述文件来去描述清楚你如何把你的这个flink集群,那么。
38:11
部署在docker容器里面,最终启动成功以后,你至少应该看到两个容器,一个容器它来运行flink的主节点job manager, 另外一个容器运行flink的重节点task manager. 还有了这些基本的知识以后,现在咱们看一下这个描述文件。它是如何书写的,那这地方啊,我事先准备好的,它的描述文件就是大家现在看到的什么,这个描述文件后缀是我们的YML文件,对,那通过这么样的一个描述文件,我们能够去什么呢?我们能够去去干嘛呢?去把我们的flink集群部署在docker容器里面,好这个呢,它是一个文本文件,既然它是一个文本文件,使用咱们VI编辑辑看一下它里面怎么写的,怎么写的,好开一下,打开它看一下来,好,你们把行行给它打开来,它通过这么一个描述文件,诶,它是通过什么定义服务,那定义service的方式来描述一下,哎,我们如何去部署我们的flink集群,最终你所定义的每一个service性都将对应到一个doer的。
39:37
容器,那通过阅读那么这段描述文件,那怎么会发现呢?我在这个描述文件里面,我定义好了两个service,那么一个service的名字叫做我们的什么呢?Job manager, 那另外一个service呢,名字叫做我们的task command manager, 那通过刚刚的介上这正好不就是flink的主节点和重节点吗?那最终呢,它们表现的形式将会是一个一个的容器,好通过使用什么呢?通过使用这个因image的机的镜像创建主节点,创建容器,那么按照同样的这种方式呢,我也使用什么下面的这个镜像创建我的重节点task command manager, 当整个环境部署好以后的,你通过数组机的8081端口就能。
40:37
能够访问到容器内部的8081端口,从而呢,你就能够打开flink集群的dashboard什么仪表盘的监控的工具,通过使用这样的一个仪盘的监控的工具,我们能够去监控弗link的个集群,对,还有了这样的一些基本的知识以后,现在呢,咱们把这个docker的component,它所编排管理的容器,那么给它启动起来,最终咱们去部署一个弗Li克的一个脑集群,对,好,我在当前环境里面。
41:18
我已经什么呢,嗯。我已经安装好了这个doer compose, 它需要单独安装,对好,怎么执行呢?Do com compose, 通过杠F选项指定你的这个描述文件,它是哪一个文件,那就刚刚大家看到的那个文件flink完come do come comp y ML文件后面呢,写上一个up选项,那个up选项表示我们把这个描述文件里面它所定义的容器符务都给它启动起来,后面呢,再写上一个杠定,杠D表示把这些容器运行在我们的后台,对好,那们去执行一下这条命令,请大家注意,当你通过容器编排工具创建容器的时候,它所打印输出的日志,首先它会去什么创。
42:22
创建一个我们的网络,那为什么要创建一个network的网络呢?因为你将会启动多个容器,它们代表了同一个应用程序,不同容器之间它们需要进行相互的通信,既然需要进行通信的话,我当然就需要创建一个网络,这个网络它是一个私有网络,只是提供给docker comp那些容器它内部进行访问的。网络创建成功以后,我就创建两个容器,一个容器运行我的job manager, 另外一个呢,运行我的task manager, 这呢分别对应到什么?Flink集群的主节点,还有它的重接点。那么当整个环境。
43:16
启动起来以后呢,你再去执行docker什么compose PS这一条命令呢,就可以把由docker component它所去管理所编排的容器信息输出在屏幕之上,那通过输出的信息我们会发现,那这个地方呢,它启动两个容器,那就刚刚大家看到的么,主节点和重节点,对,那当然你使用我们的docker compos呢,也能够很方便的进行扩容和缩容功能的好,整个环境启动起来以后,我现在我想去访问一下部署在容器内部的什么这个弗Li克集群,那么应该如何进行访问呢?通过这地方打印输出的信息,那么你就能够呢,通过输主经叫什么8081的端口。
44:16
访问W容器内部的什么8081端口,因为弗link集群它的那个图形化的大细胞的仪表盘空具默认运形在我们的8081端口之上的,那它是个什么基于网页的图化的工具,通过这么样的一个图形化的工具,我们就能够去监控我们的flink集群,既然是如此的话,我们去看一下它长什么样子啊,长什么样子?好,大家看咱们的浏览器访问数主机的什么呢?它的8081端口,对它的请求,它将会被转发到容器的内部,从而打开我们的这个flink的什么仪表盘,那通过现在大家看到的这个仪表盘的这个工具,你就能够去监控我们的这个flink的什么这个集群,当然如果说你有这个,你有这个计算任务运行在集群之上,对通过现在你所看到的什么这个网页的工具,你也能够监控到任务的执行的状态,当然咱们现在这里哈,并没有任何任务呢,在运在运行,如果你有任务呢,运行呢,你能够监控到任务的执行的状态,对好,因为咱们今天晚上重点不是给大家介绍大数据,重点的介绍云院生的do com和我们的K8,因此呢,关于大数据的这个更加系统的知识。
45:52
那请大家呢,关注一下赵老师们后续的什么这个直播的课的内容,对好如果说你通过这个do comp呢,把它给部署啊,因后呢,如何把它停止下来呢?那停止下就很简单,对直接执行什么多come,我们这种come碰后面写成什么down,那通过写上当语境当选项呢,就能够把刚刚由我们doer comp它所编排管理容器都给它停止掉,掉好一层演示到这地方呢,我们就通过了什么两个DEMO的S令,让大家对我们的docker能够有一个感性的认识,好问一下各位直播间同学们,关于我们的第二个部分大家是不是都听明白了啊,如果说这个部分的知识大家都听明白了呢,就请在我们的公平之上,请给。
46:52
赵老师呢,回复一个666,或者给赵老师呢点一个赞,这个部分大家是不是都听明白了就好,大家积极跟老师互动一下啊哦。
47:07
呃,让赵老师呢,能够了解到,大家都还能够跟得上赵老师的节奏,大家这个部分都听明白了没有,对好,咱们接着呢,给大家介绍我们的第三部分,那么有了docker的这个基础以后,你再来学习我们的这个K8S呢,那相对来说呢,就会比较简单,那么通过咱们刚刚的这个些上,大家已经了解到这个K8从功能上去去说,它跟我们的什么这个docker compose一样,它也是一个什么容器编排工具,那么再重复一下它们二者核心的区别,核心区别在于呢,这个docker compos, 它是属于当今环境上面的容器编排工具,而我们的K8S呢,它是属于。
48:07
这个集群环境上面的容器编排工具,那因此呢,从功能上去说,K8S的功能会更加强大,那跟咱们刚刚学docker的时候是一样的啊对,那么你要学习K8S的话,首新你就需要知道它的一个什么体系架构,那他们通过一张图片来给大家介绍整个K8S它的体系架构,它长什么样子,看一下它,大家可以去截一个屏啊,这个图片就给大家详细介绍一下整个K8S集群的架构,那通过大体的观察,大家会发现它是一种什么架构呢?它是一种主从架构,主节点叫master,重节点叫no,因此重复一遍K8S它是。
49:08
用什么架构,它是一种主从架构,好顺便问一下各位直播间同学,你刚刚讲的大数据主要的组件不也是主从架构吗?大家能不能够告诉一下赵老师,这种主从式的架构,它所存在的最主要问题是什么问题,如果说大家知道。就请积极回答一下赵老师的问题,如果说大家不是很了解,那就请在我们的公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞,主从架构的最主要问题是什么问题呢?大家是否都清楚啊,都位这些知识呢?那么实际上呢啊,感谢感谢我们的出发探寻单点故障回答的很准确啊,不管是你的K8还是大数据也好,主从是架构单独这个笔记啊,记得咱们课堂比较好,咱们讲主主存啊,那主存架构它所存在的最主要问题是什么呢?就是出发探寻说的啊,单点故障对点指的是什么?单点它指的就是我们的集群的主节点。如果说这。
50:36
本个集群里面,它只存在一个主机点,它就叫做单点,当它死掉以后,它就会造成整个的集群无法正常工作,因此呢,不管你是在K80里面,还是在大数据体型里面啊,我们就需要通过使用什么,通过使用咱们呢高肯用高肯用加杠来实现它的ha的功能,即使主节点宕机以后,通过使用高可用ha也能够保证系统呢,27×24小时不当机,到这里面呢,涉及到的一些更加系统的知识都被包含在了直播间的什么课程里面,对,因为每次直播的时长大概就一个小时左右,那么利用这一个小时仅仅只能够让大家有一个基本的了解。
51:36
点对,因此呢,每次直播的时候,赵老师呢,都会推荐一门课程给大家,当然这些课程都是由赵老师主讲,并且呢,课程还会定期更新,会把更多内容呢包含在们课程体系里面,那那大家派了课以后呢,请通过私信把你的联系方式发送给赵老师啊对好,关于课程内容呢,稍后呢,咱们来给大家做一个介绍,好有的这些基本的知识以后呢,那么当你把整个的K8上启动运行起来以后呢,它所提供的所有东西都是你什么,他所提供的所有的内容都是什么?资源方是提供出来的资源,是我们在K84里面非常重要的一个概念,好问一下各位直播间同学们,能不能够告诉一下赵老师K8S他所。
52:36
提供的资源有哪一些?你能够把他所提供的资源都发送到我们的公屏之上吗?如果说大家都清楚的话,就请积极回答一下赵老师的问题,哪一些是K8S的资源,如果说大家不是很了解。就请在我们的公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞,资源在K8里面非常重要,哪一些是呢?比如说我们的pod对pod是还有我们的control控制节,控制性对它的英文名字叫我们来说么?看错误了呢,还有我们的把我们的服母service啊服务的等等等等这些这些都是什么呢?都是我们在什么K8S里面它所提供的资源,而在这些资源当中最重要最核心的就是我们的这个pod对,那什么叫pod呢?因为我们在K8S里面并不直接操作容器,都是通过pod来操作pod,它是最小的可部署单元,它。
53:59
它由若干个容器组成,通过干干的这个体系加构,大家会发现po的呢,它里面包含有什么若干个容器,那这个容器呢,可以是多抗,也可以是我们的康看r d po的是我们在整个K8的,是我们在整个K84里面最小的可部署可操作的对象,因此呢,你在整个八四里面并不能够直接操作容器,你只能够操作我们的pod。好,那么当你把整个K8上集群部署好以后,它提供的哪些服务呢?他所提供的服务跟大家现在看到的这张图呢,是完全一样的,它切换到咱们实验环境当中去看一下,当你把整个K80集群部署好以后。
54:56
它提供了哪些服务啊,提供了哪些哪些把哪些内容给我们的好,所有K84它所运行的什么系统组件都是运行在什么系统的命名空间下,因此呢,这些组件应该都是running的什么运行状态,通过使用K8它所提供的命令行工具QB control get呢po你能够查看到所有pod的信息,默认将会查看默认命名空间下面的什么信息?刚刚提到所有的系统组件都是运行在系统的命名空间下,通过杠N选项指定你想查看哪一个命名空间项,它所运行的pod的你们查看到吗?系统的命名空空间通过从用这一条语句你能看吗?所有的系统组件都是我们的。
55:56
Running状态,这就表示你的当前的K8S集群,它是一个正常运行状态,那么关于这里面这些组件,它们的功能和作用分别是什么?那么这个呢,跟刚刚大家所看到的这张图呢是一一对应的,所以这里面更加系统,更加系统知识呢,不可能在直播课里面一一的给大家进行相关的介绍,因此呢,如果说大家要系统的去学习有关do com或者是K8更加系统知识呢?那请大家去们看一下直播间赵老师们提供的这一门课程啊,这门课程全程都由赵老师主讲,它包含了我们的do com还有KSM,并且课程还会定期更新,会把更多内容包含在课程体系里面。那么大家拍了课。
56:56
会以后呢,请通过私信把你的联系方式发送给赵老师,赵老师会单独联系你的,会把课程资料和实验环境发送给大家,当然你在学习过程里面,如果遇到任何问题,咱们也提供答疑的服务,那么请大家注意一下,这一门课程已经被包含在了什么赵老师的大数据课程里面,如果说大家拍了赵老师的什么大数据课程,不需要单独拍这门容器课程,因为呢,刚通过刚刚的引示,我们也看到你能够把大数据的什么计算引擎Spark克也好,Fli也好,部署在dock的什么容器当中,通过使用这样的一种方式,我们就能够集成我们的大数据体系,还有语言体系,重复一下,这门课程已经被包含在了大数据。
57:56
嗯,课程里面大家拍了大数据课程,不需要单独拍这门容器课程,对,拍了课以后呢,请通过私信把你的联系方识发送给赵老师,好一层讲到这个地方呢,基本上今天晚上由赵老师要给大家分享的知是大概就是这么多,现在的时间是晚上的9:28,赵老师们点35分下播,剩下的时间答疑,或者大家去拍一下课程哈,排了课的同学。
58:36
请通过私信把你的联系方式发送给赵老师,新进直播间的同学们点点关注好,最后呢,看大家有问题需要问我的吗?要问问题的同学们请把问题发送到公屏之上,要派课程的同学们直接点击直播间的讲解卡,派了课以后呢,请通过私信把你的联系方式发送给赵老师啊好,新进的同学们点点关注,基本上呢,今天晚上由赵老师要给大家分享的这个知识呢,大概就是识这么多,好张老师呢,9:35下播。
59:23
嗯。大家今天晚上有收获吗?如果说大家都有收获呢?就请在我们的公屏之上回复一个有收获,他们希望通过直播的学习哈能。
我来说两句