00:00
各位同学大家好,下面呢咱们继续来学习red的集群,之前呢给大家介绍了什么是集群,集群能解决什么问题,以及red中集群的特点,那咱们下面呢,我们就来实际搭建一个集群,让大家感受一下red集群的搭建过程。这个集群呢,我们就按照这个场景,咱们用六台服务器来搭建出一个ready的集群,我现在呢,还是在一台这个一六系统中,咱们来模拟一下这个效果,那集群怎么搭建,下面给大家详细演示一下。首先我们先在进入到我们这个目录中来,因为咱们的操作应该都是在这个买red里边进行操作。啊,这里边我先记住啊,写错了啊MY。然后咱们记住大家看啊,这里边是不是有很多文件,首先第一步呢,咱先把之前这个RDB这个文件先都给它删掉,要不然对我们会有干扰,那我现在我们先删一下,咱们用RM-RF,然后叫dup。
01:13
6379当做内容,我们加上一个星号,它表示以DOP63开头的内容都给它删掉,然后咱们删掉之后,我们来看一下里边内容,现在这个文件是不是都已经删掉了,所以这是我们的第一部分。好,文件已经删除了,那咱们进入到下一步,因为咱们之前呢,里边有这么几个配置文件,但是这个文件配置文件呢,我们目前不能用了,因为里边有很多其他配置,咱需要把配置文件改一下,那怎么改呢?给大家说一下啊,比如说我们现在呢,要创建六个就是ready服务,咱们就按照这么一种端口号进规划,比如我们用63798081,然后加上899091,注意啊,端口号不一定是我这个名字,只要你端口号不一样,没有冲突可以了,我这么写呢,为了各位更好区分,比如说我们的七九是主机,八九是从机,八零是主机,九零是从机,八幺主机九幺从机,我们按照这种方式咱们做一个配置,这是我的这么一个约定,所以咱们一会儿就创建这么六个配置文件,在里边写入相关的配置就可以了,那咱们下面来创建一下啊。
02:33
给大家强调啊,就这个创建配置文件的过程呢,并不复杂,只是里边的文件比较多,所以各位在创建的时候呢,一定要特别的小心,特别的细心,就是你可以创建的慢一点,但是绝对不能出错,所以咱们来创建,那怎么创建呢?我现在这么来做啊,现在有这么多配置文件,那我就用第一个6379改一下,改完之后咱们复制这么五份就可以了,就一共有六个配置文件,那我们来改一下啊,red6379.conig把这个文件打开大家看啊,这个文件中的有一些就是下面的这些配置,这些配置呢,是咱们之前比如说我们做那个就是。
03:17
包括蛀虫,包括里边的这个哨兵等等配置,所以咱们现在把这些配置需要都给它删掉,就是这些我们先都给它删掉。这部分,然后保留咱们一个最基本的部分大家看啊,比如说包含这个公共部分,然后你现在这个就是PID值6379,包含你端口号,包括你这个就是DRRDB这个文件的名字,这些咱们给它要保留出来啊,当然这里边咱这个play a only已经关掉了啊,这个日志可以没有,这是第一部分,然后第二部分呢,在里边咱们需要加上这么三个配置,那我们来看一下啊,第一个配置叫cast e等于yes,表示开启基模式,然后第二个设置你节点的配置文件名字,比如我们起名叫NODS6379CONIG,然后第三个设置节点的失联时间,就是超过这个时间基金会自动进行主从的切换,所以咱们需要加上这么三个配置。
04:23
那这三个配置我就不再敲一遍了,给各位直接复制过来,首先第一个就是这个配置,我们叫做开启这个集群cluster I yes,然后里边的第二部分设置你这个当前节点,这个配置文件的名字,咱这名字就叫nots 6379 comig,第三个设置你这个失联时间,就是多长时间一直没有,这个就是相关操作或者多长时间没有连上,那我集群会自动进行切换,所以这里边的就这个配置咱们检查一下啊,前面有之前的包括6379,包括这个RDB名字,后面有开启集群配置文件名字,还有你的超时时间。
05:09
然后都写完之后,咱们把它冒号WQ保存退出,现在这个6379就改完了,然后改完之后呢,咱把这两个文件给它删掉,就是这个6380,包括6381给它删除一下杠RF。这个。六三。八零把它删掉,然后再删除这个6381,而大家看现在里边应该就有这么一个6379配置文件啊,但是这两个就放在这里啊,这个肯定需要这个哨兵,我们也先放到这里。所以现在这个6379这个文件我们就创建出来了,然后创建之后呢,咱把6379再复制出来另外的五份,一共构成六份,比如我们就复制638081899091,那下面咱们来做一下操作,这过程应该就是一个重复的操作,但是各位写的时候一定要特别细心,那我们写一下啊,RED6379,然后复制成这个red,咱看一下我这个多少号,6380我们来复制啊。
06:20
6380这个做这个复制,然后复制之后我们再复制一个6381,现在三个就出来了,然后再复制899091,咱们快速做一下啊。这个是八九。然后这个是。九零再加上一个。九幺,然后大家看啊,目前我这里边是不是有这么六个配置文件,798081 899091这个文件就附出来了,但是各位注意啊,咱们并没有完,因为配置文件中798081每个里边这些端口号,包括它的那些内容是不是都有区别啊,所以咱们需要把里边的内容都给他做一下修改,就改成我们具体那个端口号等等这个内容,那咱给他就是来改一下啊,6379不需要变,咱就先改这个6380。
07:18
那我来自我修改啊,然后把这个打开大家看啊,这里边其实就是把里边这个6379改成6380是不是就可以了,那咱们怎么做呢?我们给他直接来一个替换吧。百分号S。6379改成这个。6380咱们回车,大家看直接替换是不是替换成6380,咱检查一下啊,这是PID的值,端口号RDB名字,这是6380,现在这个文件我们就改完了,改完之后咱们冒号WQ退出,然后用同样的方式改这个八幺,包括这个后面的这些配置文件,那我们来改一下啊,咱再改一下这个八幺,用同样的方式冒号。
08:09
M号S。6379改成6381,咱们回车,然后冒号WQ保存退出,那我们看啊,这个应该是没有问题,所以现在八幺也改完了,改完之后咱再改那个八九这个配置文件。这个改一下啊,然后到里边抽样的方式冒号。S。6379改成这应该是6389。咱们回车,然后大家看这些值应该都改过来了,咱最后把它退出,改完之后再继续往下改,咱们改这个六三。就聊。然后到里边也是替换一下啊。
09:00
6379。改成六三。啊6390,然后咱们回车这个应该是可以了。改完之后还有最后一个,那就是这个6391啊,咱们给他快速把这个改完。然后到里边同样。百分号S6379改成六三。九幺应该是,就是咱看下这个端口号啊,6391啊,应该没问题,然后咱们回车,现在呢,大家看啊,我们用同样的方式把里边这些配置文件中内容,咱现在是不是都改完了,包含63798081 899091,所以这是我们改配置文件过程,也是我刚才一直说到的,改的过程并不复杂,只说它的里边的操作比较多,各位改的时候一定要特别细心,不要给他改错端口号,不能给它改重复,每个肯定是不一样的,所以这个配置文件我们就完成了。
10:09
然后完成之后呢,下面怎么做呢?咱们看一下课件中啊,就是下面的,咱就把这个六个ready的服务都给它启动起来,然后启动之后呢,把六节点合成一个集群,那下面我把这个六个RA字符给它先启动起来,那咱们就快速启动一下啊。启动应该很简单,各位同学应该都会啊,Red-server,然后里边加上配置文件,咱第一个是这个6379扛把它记住,然后第二个是这个6380。第三个是这个6381。包括下面还有三个,咱看下这个端口号啊,就是899091,我们给它快速启动一下啊。
11:01
这个是八九。然后这个是。九零。还有一个是。九幺。所以大家看现在呢,咱们把这个六个red服务应该都进行了启动,启动之后咱们看一下啊,要保证六个服务都是正常的使用状态,那咱通过命令查看一下它这个进程。RA,然后大家看啊,六个服务是不是都有了798081 899091,目前他们都已经正常听起来了,这是我们做的这个事情啊,然后在启用过程中,大家看啊,这里边它的这个就是节点的配置文件是不是也都生成出来了,咱们刚才在写这个配置中,每个配置中应该都加了就是这段配置。设置节点的配置文件名称,所以现在这些文件也正常生出来了,证明咱的服务就启动了,然后启动之后咱看下一个操作啊,咱们需要将六个节点合成一个集群,就是变成一个集群模式中的这么一个操作,那怎么让六个节点变成一个集群的,这里写到啊,首先确保所有right实例都启动,然后这些文件都能正常生成,咱刚才这些应该都做到了,然后下面呢,我们用个命令来最终做到,那我们来看一下啊,这里边我们用什么命令?
12:30
那往下找,这里边呢,就是在redit中呢,大家注意啊,如果说你用的是之前的版本,因为咱们目前用的是最新版本6.2.1,所以这里边的问题它已经帮我们解决了,但是如果你用的是一些比较低的版本,你需要额外装上一个环境,这个环境叫做Ruby的环境,但是现在在我们的6.2.1中,这个环境不需要咱们装了,咱们直接用就可以了,它已经帮咱们装好了,各位注意这个特点啊,新版本中不需要再单独装rub比环境,因rub环境是你进行集群中一些相关操作的这么一个环境,之前低版本中需要新版本中帮咱们封装了,不需要咱们再做了,那这个操作怎么做的?咱们首先呢,虽然说他帮我们装了,但你要进入到它那个环境的目录中去,咱们现在进入到啊,我们red最开始那个安装的src中,那我们先进入啊,咱们找一下。
13:30
大家注意啊,我们red呢,最开始应该是放到了OPT中吧,是不是这个6.2.1,然后咱们记住6.2.1,在这里边有个目录叫做src,咱就进入到S2C下,然后在src里边呢,有你的经会内容啊,比如咱这么看有你的内容,所以咱们这里边通过这个src目录才能用到我们这个就是生成继续这个环境,在里边用什么呢?大家看啊,就这个。
14:03
Red现外里边呢,把那个rub比环境,其实就这个,你看啊叫rb Ruby环境已经帮我们封装了,所以用它直接集成,咱直接用就可以了,这个位注意啊,你志用这个就是集群,这个命令需要在我们这个src目录下进行执行,在别的目录下不能执行,那怎么做呢?里边就是这么一段命令。我把这个给各位复制过来,咱给他改一下,然后说一下这里边它都是什么含义,那我们来比如说我复制到这么一个就是文件中啊,咱给它改一下啊,首先第一个里边用RA-set y杠杠cluster表示集群操作嘛,然后create create表示创建嘛,就创建你的集群,然后集群后面这里边叫replace case表示你集群的方式。我们写了一个一一什么意思呢?就表示啊,以最简单的方式配置集群。
15:02
因为咱目前是有六台服务器,那我们最简单方式怎么样?那就是一个主机一个从机,一个主机一个从机,六台服务正好有三组,这个叫一的特点,以最简单的方式配置集群,后面加上就是你这个集群中服务器的IP地址和端口号,这过程给大家强调啊,因为咱们目前呢,是一个模拟的效果,在实际中你每个部分肯定都是一个独立的一个IP,就是独立的一个V6系统,咱是在一个系统中装多个多少号,只是为了模拟效果啊,实际中肯定都是多高,因为我们一台电脑嘛,如果你装六台虚拟机,那你电脑压力太大了,可能你电脑承受不住,所以咱们学习阶段,咱只是模拟效果,实际装每个肯定是一个独立的服务器,那我们改一下啊,这里边呢,你就不能写你的127.0.1,或者你的localo house需要写上你的实际IP,我这IP是四四点。
16:02
168,那我给他就改一下啊,就是里边这个地方我给他改一下。四四点。168。注意啊,别写错,写上你那个IP啊,你别写我的IP,这是我电脑IP,然后这里边同样,比如咱们对照看啊,第一个4.1686379,第二个6380,然后第三个6381,包括下面的第四个就是。这个啊,6389后面是6390。还有最后一个叫6391。所以现在这里边就是由我们相关这些配置,这个各位改的时候一定要改正确,不能改错,然后这个改完之后,咱们现在呢,把这个命令我给它复制出来,然后在我的S2C下这个目录中,咱们来做个执行,就是来实验一个集群的一个叫合体操作,把你六个节点合成一个集群,就是做到一组一从,一组一从,正好有三组的效果,那现在我把它咱们就来执行一下啊,我把命令先复过来,注意不要写错啊,包括特别是这个杠杠这特点,因为你在word中复制啊,有的时候那杠杠可能他给你做一个转换可能就不对了,所以咱们最好在一个TP文件中给他再写一遍,让他会有什么格式问题,IP地址端口号要改正确,然后这个我们复制之后,下面再来回车把它做执行,大家看啊,这里边应该没有报什么错,它这里边给你做了。
17:40
这个操作啊,就是里边你看啊,798081都是主服务器,然后这几个是从服务器,他问你啊,说你是否接受这种分配方式,你看他告诉我们给我们做好了分配,他帮我们做到机群,那我们肯定是接受嘛,咱来一个yes表示接受,这描述很准确啊,这三台机器是主服务器,然后它下面有它的从服务器。
18:06
最后我们输入yes,然后咱们一会车现在就帮我们做这个分配,这个就给我们完成了,完成之后呢,里边有个值,这个值呢,我们先复制出来,因为后面咱会提到什么意思,一会儿咱来说我先拿出来啊,主要是一个值叫做16384什么意思,一会儿解释,但是现在我们通过这个过程,当你看到这个效果,那表示我们这个ready的集群就已经完成了搭建这过程咱们就做到了。所以大家啊,要按照流程把这个集群能搭建出来,这是我们完成的过程,然后过程给大家再总结一遍啊,最后咱再做一个测试。然后怎么做的呢?首先第一部分咱们操作中肯定你把这些RA先给它停掉,然后第一步呢,先删除里边的所有RDB文件,删除之后咱们里边创建六个配置文件,就是里边的七九,一直到896个配置文件,在每个配置文件中加入不同内容,刚才咱们都加过了,然后加完内容之后,下面咱们把六个read服务给它都启动起来,启动之后我们能看到启动的服务,包括它生成那个节点的配置文件,这个做到之后,下步操作咱把六个节点进行合体,合成一个ready的集群,那怎么合体进入到ready的这个安装目录的src下进行这么一个操作,因为它本身需要依赖一个Ruby环境,这个环境呢,我们在六的版本中是不需要在单独安装,如果你是一些低版本,那需要安装在这版本中不需要了,但是我们也需要在S2C下。
19:52
才能用这个环境,然后里边用咱们刚才的就是这个命令,大家看一下啊,就是在里边的这个位置。Red在外里边集成rub比,然后咱们创建集群,用最简单的方式进行分配,后面加上你集群的IP地址端括号,这里边不能加127.0.1,只能加实间IP,然后这里边当咱们分配之后,他问我们是否接受这种方式,我们输入yes,最终就完成了,所以这是关于集群的这么一个搭建,这咱就做到了,然后搭建之后呢,咱们可以做一个简单的测试。
20:29
怎么测试呢?给大家说一下啊,比如说啊,咱们之前呢,连接RA,咱们肯定是写一个RA-set y-P加上端口号,是不是进行连接呀,但是这种连接呢,只是普通方式连接,并不是集群,集群什么特点,大家看这张图上,之前咱解释过。它是不是叫无中心化,也就是我一直提到的啊,任何一个节点可以作为集群的入口,然后它们之间是不能互相访问呀,所以咱们在连的话,要用集群方式连接,怎么连接就加上一个参数叫杠C,就是这杠class,通过它连接就表示集群的这么一个操作,就是ready s-C-P,加上你这个端口号,就可以用集群方式进行连接,连接的话用任何一个节点都是可以的,就是你637963806381都是可以的,那我现在比如说我连接一下哈。
21:31
Red杠再杠C-T,比如说咱就用6379了,8081都可以,现在咱们回车大家看啊,目前呢,我们就通过集群方式连接里边去了,就是连到了这个集群中去,那离完之后呢,咱可以看一下集群的信息,用这个命令。Not,那我来写一下啊,这个命令咱看一下。No,这是查看你集群中节点的信息,那我们看一下这个节点啊,里边描述的很准确啊,首先咱们看啊,有slave。
22:10
Master是不是从和主,所以大家告诉你啊,哪个是主,哪个是从,比如说咱们找这么一个啊,这叫myself master。Self什么意思啊,是不是自己的呀,比如我当前连接的6379,它的主机是这个主机啊,就是当前你自己这个主机是它,然后这个主机我们怎么找它的从机呢?大家看啊,这里边6379主机是它。然后它的ID是这个就是1C8,加上这个叫64F,那我们找到是这个1C864F,这就是我们这个当前master的从机,然后这里边一样有主机有从机,有主机有从基,这是我们看到的这个节点的一个分析情况,一组一从,一组一从,它们一共有三组。
23:01
所以现在咱就把这个集群给各位就完成了一个搭建,所以各位能按照我刚才的流程完成搭建,最终你通过这个杠C的方式能连到集群,并且能看到当前集群的分类情况。
我来说两句