00:00
好,各位同学,那接下来呢,我们来看一下这个的安装啊,那pre的安装呢,分为两部分啊,一部分是al server的安装,还有一部分呢是press client的安装,也就是一个是服端,一个是客务端,对吧?那现在呢,我们先看它的服务端的安装啊啊,那这个呢是press它的官网地址,那当然呢,这个所有的安装步骤呢,你实际上在它的官网上都是能找到的,都是能找到的啊来可以简单看一下,这就是pre的官网,那完之后呢,我们找谁,你要想找它的安装是不是得找do呀,对吧,找文档。Documents。找到文档之后呢,你就往下翻啊往下翻,那这里边是不是有一个installation啊,对吧,你就点点完之后呢,呃,这里边有一个blowing这个对吧,你点一下。啊,那这里边呢,就是我们price的安装步骤了啊,是这样的啊,里边这个需要配置参数啊啊需要设置的选项还是比较多的啊,当然你正常你照着它这个官网去装,肯定是能装上的啊OK啊那在这儿我们就不再看这个官网了,我们看一下我们自己的文档,文档当中呢,已经给大家整理好了啊啊那现在呢,我们就开始安装啊,那首先我们需要先拿到咱们所需的安装包啊,那咱们现在安装的版本是多少呢?是0.196版本,是0.196版本啊OK,那当然这个包呢,已经给大家准备好了,就不用下载了啊那现在呢,我快速的拿一下啊来我们CD到点点,然后CD到这个make DR啊psto好,那我现在进到这个press好进来之后呢,把这个安装包上传一下。
01:33
呃,这我我在我进到猫队里边了是吗?呃,OK啊,那我进到OT这个software啊,呃,这个make,一个DR,这来一个这个pre,这个sto对吧,那现在呢,我进到这个呃,Pres OK,那我现在把刚才创建那个model下边的路径删一下啊,哎,这个psal。OK啊好,那现在呢,我们把这个所学的安装包给他传一下,嗯。
02:03
来,那现在呢,我们找到我们所需当中包啊,来点到这个位置,点到资料,资料里边呢,应该是有一个preal的对吧,拿过来这里边一共有三个包啊,分别是啥?给大家解释一下,先传过来再说啊。好,我们一起来看一下啊,那这里边一共有三个包,分别是presal的c Li,这其实有一个啥,是不是有一个炸包啊,对吧?啊,这是它那个客户端,但是这个炸包其实它不是一个普通的炸包啊,这里边还是有一些这个东西的啊,后续我再给大家解释,那这个呢,就是它那个server,也就是服务端对吧?那下面这个是啥呢?这个其实就是一个可视化的客户端,就是一个外部应用啊,就是我们启动它之后呢,诶,我们能看到一个外部页面,这个外部页面呢,诶我们能够在上面呢去查询press里边的数据,就这个意思啊OK,好,那这三个包呢,我们就全部都拿到了,拿到之后我们开始部署这个preal,我们先部署它的server啊,那首先我们要做的就是解压啊,套杠这个z X VF pres,然后来个so,然后杠大C到OPT model。
03:02
好,我们快速解压一下啊。好,已经检压完毕了,然后呢,我们C的OPT module,呃,现在检完之后呢,我们给它改个名字啊,把把这个版本号都去掉,只留下好,那现在呢,我们进到进来之后呢,大家注意观察啊,这里边是不是只有一个什么b Le什么还有plug in啊对吧?那跟我们之前学的框架有点区别,之前的框架里边是不是至少会有一个什么ETC啊,会有一个这样一个路径,对吧,他那都没有,没有的话就得怎么办呀,只能我们自己创建了啊,其实官网上也是一样的,他也会让我们去创建,比如说什么啊ETC路径啊,去存放配置文件啊,存放创建什么data路径啊去等等等等,你看这是不是就有,是不是让你自己去创建一个ETC这样一个路径啊,对吧?啊是这样的,那我们就按照它要求去做就行了啊好,那现在呢,我们开始一步一步去进行相应的部署,首先我们先在这个press的根目录下边去创建两个路径啊,一个是什么?一个是date,一个是ETC,这两个路径分别是干啥的啊?ETC不用多说,里边是不是肯定存放的就是配置文件,对吧?那这个date存放的是啥呢?它里边存放的是al。
04:05
在运行的过程当中所产生的一些临时数据啊,比如说我们的一个各种日志啊,都会在这个data路径下边,OK啊,那现在呢,我们把这两个路径都给它装新出来,来我们来到好,那两个路径咱是不是都已经创建出来了呀,对吧?那创来之后呢,我们继续往下进行,那再往下呢,我们首先需要先在ETC这个目录下边去创建一个JVM点啊来注意啊,是在ETC路径下啊,这个路径不要搞错了,进到是不是ETC啊对吧?看完之后呢,右键。来JM的这个JVM的里面放的应该是什么信息啊。肯定是这个家用虚拟机的一些配置参数,对不对,那实际上这些配置参数来自于哪儿啊,也是来自于官网的,官网上有这个相应的要求,就是来自于这些啊,OK啊,那这个内容它配的主要是什么啊,给大家简单解释一下来拿过来来看这儿,那这里边其实主要配的是啥呀?主要就是垃圾回收的一个机制啊,大家可以看一下它使用的垃圾回收算法是谁呀?是G1GC,就是garbage,是first garbage collection啊G是一个垃圾回收一个算法啊,那为什么在这一定要强调一下这个垃圾回收呢?再想想啊,Persal它是一个什么样的计算引擎,是基于内存的一个计算引擎,对不对?那所以说我这个垃圾回收这个性能的好坏,是不是直接影响了这个price的计算性能啊,对吧?那所以说呢,Price这边对垃圾回收做了相应的这个调整啊,就在这儿呢,我们必须得按照它的要求啊,严格的按照它这个相应的推荐参数去进行相应的配置啊,这样一来呢,才能发挥它这个price最大的这个性能啊,OK啊,在这儿主要就是垃圾回收相关的一些参数,好,那咱们给。
05:40
它按照要求配上就可以了啊,那配完之后我们继续往下走啊,那再往下呢,我们需要做的是什么工作啊?哎,他说press可以支持多个数据源,那现在我们要配的是不是就是这个数据源来,对吧?数据源我们前面提到过,在price当中,数据源叫一个什么catalog对吧?实际上catalog最终对应到我们的配置当中啊,就是一个路径啊,那咱们这需要先怎么做啊,先在这个ETC路径下边创建一个catallo这样的一个数据,呃,这这样的一个路径,然后呢,在这个路径下边我们需要去创建啥呀?是不是需要去创建我们每一个数据源的那个connector啊,对吧?就这样一回事啊,那首先我们先把这个catalog创建出来CTRC来,我们这个在ETC里边啊,路径不要搞错了,那完之后呢,我们进到这个catalog进进来之后呢,我们是不是就可以去配置咱们,诶所谓的这个什么那个connector来对吧?啊那些咱配置一下来,首先我们先配置配置一个have啊来咱们拿过来,那have这边是不是就是最终落实到这个这个配置上,就是一个文件对吧,就是一个have proper啊。
06:40
好,那完了之后呢,我们看里边需要写啥内容,来,CTRLC拿过来。来大家一起看一下,是不是就两行,对不?两个很简单,分别是啥?先看第一个这是啥是不是呃,Connect name啊,对吧,就是一个名字啊,这个啥是不是叫做have杠海DO2,没错吧,那接下来再往下走,这是一个啥?是不是叫have ma store.uri等于three,是不是一个协议啊,对吧,完了之后后边HIGH1029083,那这个地址就是谁的地址。
07:10
是不是就是我们have的masto那个原数据服务的地址啊,对吧,然后这块呢,需要给大家去分别解释一下这两个参数啊,我们先看诶第一个这个have海德bar,海德bar呢,这个从字面上来看他是啥意思?是不是应该是基于hi度和二的hi是这个意思吧?啊,那我现在咱们用的是hi度W吗?咱们用的是三对吧?啊,但是这个咱们用用改成三嘛,不用你改了也没,你改了也不行啊,这个是固定的写法啊,那我们基于HIDO2的have跟基于hi of3的have呢,它俩是兼容的,所以在这呢,我们就用这个也没问题啊,那完了之后再解释一下下面这个地方啊,下面这个地方呢,大家自己去写的时候呢,一定要注意一下你的主机名或者端口号是不是可能跟这个是不一样的呀,对吧?那当然端口号大家可能都是9083,因为我们一般情况下没有去改那个maxs store的洞口号,但是主机名这个就不一定了啊,那有些同学可能是你的have,比如说装在了105的节点,对吧?那你起麦star是不是也是在105起啊,对吧?啊,你在哪起这个位置是不是就得写那个主机名啊,这个一定要注意啊,OK,好,这是对接have数据源啊,那大家想想啊,我press是不是除了对接have,我还能对接其他的数据源对吧?那我要想对接其他数据源,我到底应该怎么配呢?这个去哪看是不是还是去官网对吧?那我们在官网上可以找一找啊,这里边。
08:24
而我们找到这个位置,这儿是不是有一个connectors啊,对吧,你就点过来,点过来之后你会发现这里边有这么多的东西,这些都是它所支持的数据源,比如说在这儿呢,我们挑一个大家可能比较熟悉的啊,比如就就卡夫卡吧,卡不卡connect,那这是不是有一个configuration对不对?那我们来看一下这里边我们需要配置哪些东西,其实就这几来看一下,看能不能看懂啊,首先第一个connector name是不是一个名字,这个无所谓,那下边是不是就是咱们重要的参数啊,分别是啥?卡夫卡no,这是不是就卡夫卡集群地址,就相当于我们那个什么bootrup service对吧,那这个还有个啥什么卡不卡table name,这其实就是啥,其实就是topic能理解吧,啊,就是这么一回事啊好,那大家知道呢,怎么去找不同的数据源的配置就可以了啊行,那现在呢,我们就已经把这个have的这个数据源给它配好了,配好之后接下来干啥?接下来它让我们做的是什么?是分发这个pre对吧?那现在我们给他分发一下XYNC,然后OPT Mo来一个pre。
09:21
来这个稍微等一下啊。稍等一下啊。嗯,好,已经这个分发完毕了啊,分完毕之后呢,我们继续往下进行,还没配完呢啊,这个有有有有有点麻烦,这个属属性比较多的啊,咱们一点点来啊,继续往下走,那分发完之后呢,他让我们干啥?让我们是不是分别进入到这个234的每台节点的这个路径下,对吧?OPT modelle press,也就是刚才那个ETC下边对吧?在ETC里边去创建一个什么文件呢?创建一个node点文件,那这个文件又是干什么用的呢?我先给它创建出来,然后呢,我再来解释啊,注意是哪个路径,是ETC这个路径对吧?那我们VM这个node点啊,这个VM粘过来了啊,来回撤,好,那我把这个内容往里边写一下。
10:16
写下之后呢,看一看这里边儿写的是什么属性,来拿过来。啊,那其实这个也很好理解啊,我们看一下第一个参数,一个参数啥是不是no.environment是不是就是环境啊,对吧?什么环境我们写的是啥环境是production生产环境啊对吧?那当然这块也可以写,比如说什么测试环境啊等等等这个诶可以参考一下官网,那在这儿呢,我们正常情况下就写生产环境就行啊OK,那接下来往下走,下边这是不是还有一个什么noe.id啊对吧?其实这个no.ID呃,看起来比较复杂,写的这么一大串对吧?其实在这没必要写这么复杂啊no.ID它的主要目的是。是不是为了标识不同的节点对吧,你只要保证三台节点是不一样的就行啊,那它这儿支持的写法是什么呢?你可以写数字可以写这个字母也可以写啊,这个运算符号啊,只要保证三台节点不一样都行啊,那咱这为什么这么写啊,其实这个其实也没没没有为什么啊,这个官网上的就是这么写的,刚才不知道大家有没有看到啊,那我往上翻官网是不是就这么写的呀,对吧?都在那儿,咱也没有改啊,就照他这个写的啊好,那现在呢,这个第二个参数解释完了,接下来我们再看第三个参数。
11:21
这个参数是是啥?看一下是不是no.date d啊对吧?那刚才说了,那这个,呃,我们刚才是不是创建了一个这样的一个一个date路径啊,对吧?那刚才说了,我们说这个date路径里面存的是什么?是pre在运行的过程当中产生的一些临时的诶文件,对吧?啊是这样的啊,那当然了,这个note的data d指定的就是这个存储临时文件的这个路径啊,就指向我们自己刚才那路径就行了啊好,那这个完事之后呢,我们shift z啊给它关闭,那同样的这个文件呢,我们需要在三台简立里边都创建一下,那当然在这了,我们没必要去一个一个创建了,我们可以怎么做呀,当时可以分发一下,然后再改一下就行,对吧?来改什么,是不是改那个ID对不对,来分发,然后之后呢,我们去改一下ad啊,CD的opd model应该是在EDC里边,对吧,改一下这个no proper,哎,这个shift的你随便改,只要保证它们是不一样的就行,来我们104也去改一下CD的OPT model press ETC,然后VM一个no.proper shift Dollar,那这个呢。
12:21
比如说我给他改一个A啊好了,那到目前呢,我们这个三台节点的noe.proper文件就创建完毕了,好,但是现在还没有完啊,还有一个文件再坚持一下,再往下走,那下边呢,我们还得在每台节点的呃,这个ETC路径下边去创建一个点properties,那这个con.properties又是什么意思呢?来来,我们先创建出来,再给大家解释啊来咱们现在这个102创建啊,来102找到ETC就是这个路径对吧?来我们右键。粘贴一下,好,那把这个我们所需的内容给它放进去啊,来CTRLC。哎,大家一起来看一下啊,那这里边儿呢,有这样的一个参数,我们逐个解释一下,我们先看第一个这个是啥。
13:04
Coordinator等于,诶,这什么意思?是不是相当于是指明102这些节点就是coordinator,大家还记得吧?咱们的server有两个角色对吧?一个是coordinator,一个是worker,对不对?那我这么配是不是就相当于指明102这台节点就是Co奥迪ator对吧?那当然与之对应的103和幺零四一会儿就得怎么配,是不是就得等于false啊,对吧?就这个意思,咱们理解一下就行,这个很好理解啊。好,那接下来我们再看一个下面这个参数吧,看这个吧,那看这个这个参数啥意思?Http server.http.port是什么?就是一个端口号啊,这个端口号啊,然后再往下走,那这儿呢,还有一个什么宽瑞点max memory啥意思,是不是查询的时候我使用的最大内存是多少啊,对吧?那这个最大内存在这是多少,咱们写的是50啊,那当然可能同学会担心我,我这个虚拟界没有这么大的内存啊,会不会说问题啊啊,其实不会的啊,咱们没有那么大数据量,不是说你这儿写50,它就一定会用50,能理解吧,这只是一个上限,只是一个上限啊,那OK,在这儿呢,我想跟大家说的是啥?就是我们在实际的生产环境当中,这个参数应该怎么去配置。
14:12
啊,你比如说我现在有一台服务器啊,它的这个内存呢,是128G的,你说我这应该怎么配。我写多少?写多少,这个得视具体情况而定了,首先你得先搞清楚你这台服务器里边还有没有其他的进程。对不对?如果说我这个服务器就是专门给P去用的,那OK,我是不是可以把绝大多数的内存都分给咱们这个price网,对不对?比如说我给它分个100个G是不是都可以,对不对?但是我们通常情况下,这一个服务器呢,它里边可能会同时部署多个应用,对吧?比如说我可能这个服务器上呢,我除了运行了press server,我还运行了什么啊,比如还运行了这个high当中的node manager,还运行了H的region server啊,Node manager region server,这都是什么?这都是比较吃内存的进程吧,对不对?Note me是不是得把这个内存拿到,然后公去调度啊,对吧,那region server呢?
15:04
Re,里边是不是有什么memory cash,还有什么memory store,这是不是都是比较吃内存的,能理解吧?OK,这个大家也理解一下,OK,那他们都会占用这台节点内存,那这种情况下呢,咱们是不是就得去分配一下啊,对吧?你比如说诶我给note manager分50个G,那比如这个呢,我给它分30个G,那notk剩下的我是不是才可以给这个啊对吧?这个大家到时候真正去配的时候呢,需要去考虑一下这个情况了啊,不能乱配啊,好,那这个呢,就是咱们关于这个内存的事儿,在这儿呢,咱们就50G,没事啊,就这么放着就行,那接着往下走,下边还有一组参数,这一组参数呢,我需要给大家解释一下啊,这个可能大家不知道是啥,我们先看一下这个参数名叫什么啊。Discovery server.enable discovery server.ur这里边是不是突出来的一个一个概念叫什么呀?叫做discovery server对吧?什么叫disc discovery discovery是不是发现的意思对吧?那这个discovery serve是不就是发现服务啊,对吧?这个发现服务指的是啥呀?
16:02
这个给大家解释一下啊,实际上呢,我们的serve端,也就是服务端,除了有我们刚才介绍的coordinator这个角色,哎,还有ER这个角色之外呢,它还有一个,哎其他的角色,另一个角色叫什么呢?叫做discovery server,就是发现服务,这个发现服务指的是什么啊,其实很简单,给大家给大家说一下啊,那我们集群在启动的时候呢,每一个worker呢个worker都会向哪呢?都会向这个所谓的discovery server进行注册,注册之后呢,会一直保持这个心跳啊,是这样的啊完之呢,我们的coordinator它会从这个discovery当中去获取每一个worker的健康状态以及负载情况啊,OK,那他获取这些信息主要目的是啥呀?你说完为啥要获取这些信息啊,很简单,因为我call on是不是得去给这些worker分配任务啊,对吧?那你要不知道这个每个worker的健康情况和负载情况,那你怎么知道我把任务分给你呢?对吧?我是不是得挑一个健康的,然后负载没有没有那么多的去优先分配任务,对吧?是这个意思啊,这就是这个所谓的发现服务啊,那这个发现服务呢,它实际上是coordinator这个服务的一个内置的一个服务啊,是一个内置的服务,它俩呢共用的是同一个端口号,你可以观察一下啊大大家看这那这儿咱们是不是指明了一个8881对吧?这个8881指的是谁?指的就是coordinator的端口号,然后,然后你再往下看下边这个地方呢?
17:32
是不是discovery server的地址也是8881,那也就是说他俩的共用的是同一个号号,这个呢,大家理解一下就行了啊好了啊啊,那也就是在这儿我声明了一个discovery serve的地址,那你说我们一会在103104咱们得干啥?是不是也得给他们配置一下,对吧?咱们得告诉三和四的worker,你的这个discovery server地址在哪,为啥?因为他俩是不是需要向诶这个discovery server进行注册并保持心跳啊对吧?这个要理解一下好了啊,那这个呢,就是102这台节点的相关置,那我们接下来呢,还需要在103和104也做相同的配置,先在103配一下啊,103我们也需要去创建一个肯点purpose,那同样呢,我还是先把这个里边的内容粘出来,然后呢,再给大家解释来CTRLC,然后来。
18:17
来大家一起来看一下这个内容啊啊,这个内容相当于比较简单了,首先第一个Co ordinator等于false,等于false就意味着它是worker对吧,那再往下走,这是不是还是一个端口号啊,那这个呢,还是啥?还是那个最大内存,然后注意观察这这是不是声明了一个discover so的一个地址啊对吧,注意看这是指向的谁,A是不是指向是102对吧?他会去讲它会去向102这台节点进行注册啊这个理解一下啊好,那这个咱们就创建完毕了,那紧接着呢,我们在104也去创建一个诶这样的相同的配置文件,诶咱们右键粘贴。呃。这个没粘过来啊,来我们把这个文件创建出来啊,那其实103104这个文件的内容你说是不是应该是一样的呀,它俩是一样的啊好,那我把这个文件诶给它创建出来,然后呢,把内容粘过来CTRLC,然后来那之后呢,我放在这个位置啊好了,那这个文件咱们就搞定了啊,那至此呢,我们press server所有的配置文件咱们就全都配完了啊,全都配完了啊,那接下来呢,我们就可以尝试着去启动一下这个preto了啊,那当然呢,我们由于由于什么由于我们pressto呢?我们在配置文件当中是不是给它加入了一个have的数据源对不对,Have数据源其实咱加的是一个ma store这样的一个地址,对不对?那所以说我们在启动press之前得怎么样,是掀起MAS对吧?这个要注意一下,当然这个MAS store呢,大家自己起的时候呢,可以使用之前那个脚本,大家都有一个脚本对吧?用脚本起也行,或者说在那呢,使用这个原生的命令也行,原生命令是不是就是杠have,杠service store对吧?OK,那这个no,还有后边这些内容大家知道是啥意思吧?啊,知道,那我就不解释了啊好,那现在呢,我为了看日志。
19:51
啊,那我就让他在前台启动啊,当然在生长完下呢,应该退到后台才行啊,啊,那在这儿呢,我启动还有的mate store啊,那这个应该已经提起来了,然后呢,在启动pre之前,大家一定要注意啊,将与pre无关的进程全部关闭啊,因为pre它是不是也是比较吃内存的呀,对吧?那所以说大家将与press无关的进程全部关闭,那无关的进程啊,无关的进程太多了,对,咱们就说与它有关的进程吧,与它有关的进程在那就就就谁。
20:21
首先hi豆咱得吸起来,那还有谁啊,MAS store得来能理解吧,其余的进程咱们都不需要,不需要的就全部关闭,能理解吧?啊,这个要理解一下啊好了,那这样一来的话呢,我们呃,我这就已经准备好了,那接下来我们就可以启动了,那普启动的时候呢,也是没有群起脚本的,没有群体脚本我们只能单点起,只能单点起,OK啊,那我们启动的时候呢,有两种方式,一种是前台启动啊,那一种呢是后台启动,当然了,前台启动它是怎么做呀?是不是日志打印在控制台对不对,那后台启动呢?日志是不是写到这,呃,这个进程是不是退到后台啊,对吧?那日志跑哪儿去了呢?是不是跑到志文件里去了呀,对吧?日志在哪儿放着呢?在这儿。
21:00
来是在OPT module presal data VAR log里边,这里边有pres的启动日志啊,好,那这个完之后呢,我进来就可以启动一下了啊,那虽然我没有这个,虽然我没有这个群体脚本,但是咱们有一个通用的群体脚本,对吧?是不是有一个X call对吧?在这儿我可以用它启啊,在这儿呢,我可以找到OPT module press来一个B,那它的启动命令是啥呢?Later啊,Later发射器的意思对吧?那laer呢,我们可以传两个参,传哪两个参呢?如你传的是run,那它就是前台启动,如果你传的是start,哎,那就是后台启动,能理解吧?那我现在我应该传谁呀?我我只能穿四三,为啥啊,那如果我要传run的话,那你说他会怎么做?如果我传传的话,我这我我这里边这个艾靠脚本的逻辑大家还记得吧,是不是有一个缝循环对不对,我是不是到102台节点的时候就就怎么就怎么样了,这就阻塞住了,它会往三和四走吗?哎,不会的啊,所以说我这儿呢,只能用start啊,那我现在直接start。好,那现在呢,我们S扣查看一下啊,GPS大家注意观察呃,如果启动成功之后呢,我们这里边应该会出现一个pre server的一个进程,对吧?那103是有的,102是有的,104它也是有的,那就说明我现在这个press server的应该是启动成功了,OK啊,那启动成功之后,那我们接在要干啥是不得你得你得从这个press得使用press去查询我们汉里边数据啊,对吧,那怎么查?
22:23
我现在有法查吗?没法查,那我得有客户端是不是才能查,客户端是我们与这个呃,这个服务端进行交互的一个接口啊,那所以一会儿呢,我们要做的就是安装这个客户端啊好,那我把视频先停一下啊。
我来说两句