在进行搭建redis3M 集群以前,首先要明白如何在单节点上完成redis的搭建。html
单节点单实例搭建能够参看这个网:http://www.javashuo.com/article/p-rsgpzetn-gb.htmlnode
完成单节点的redis搭建以后,修改配置文件,开启集群模式,修改配置文件生成的目录,修改位对应的端口,便可完成单节点多实例的redis集群搭建。redis
cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7000.confvim
cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7001.conf测试
cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7002.confhtm
vim /usr/local/redis/etc/nodes7000.conf (其余的配置文件按需修改)blog
主要修改的有3个地方(前提是单实例已经搭建成功的redis的配置文件,即daemons已经修改位后台运行模式)进程
修改1:开启集群模式(大约在配置文件的814行左右),须要将配置文件的cluster-enabled yes前面的#去掉,截图以下资源
修改2:添加修改生成的集群配置文件。本例是以7000的实例为例,nodes-7000.conf的配置文件不须要手动建立,改文件会在配置文件所在的目录自动生成(启动节点后生成的)。字符串
修改3:每一个实例对应不一样的端口,因此须要在配置文件中添加相应的端口。Redis默认的端口是6379,本例中是使用的7000端口,因此须要修改
启动时须要指定启动的配置文件,启动后可使用ps查看进程,使用netstat命令查看对应的端口是否监听。出现以下截图表示正常
因此集群节点互通,是指不一样节点之间相互通讯,让彼此明白对方的存在。方便在后期对数据进行处理。槽位分配是方便节点资源充分利用的手段。Redis一共只有16383个槽位,数据是根据槽位进行存储的。若是各个节点的资源不一样,能够考虑个性化分配槽位。
节点互通以前,须要将全部的节点所有启动起来,成功启动后全部的节点以下图所示:
截图中能够看出,不一样的实例启动在不一样的端口,都是以集群的方式启动
登录节点以后,可使用cluster info查看集群信息,从下面的截图中能够看到,目前集群知道的节点就只有一个,咱们须要添加其余两个节点到集群。
登录集群后可使用cluster meet IP port来完成节点的添加,添加完成后咱们一样使用cluster info来查看集群的信息。另外可使用cluster nodes来查看集群中全部的节点的信息。以下的截图所示:
上面的截图中IP地址以前的字符串表示的是节点的id,相似于节点的识别号,咱们在从集群中删除节点的时候会用到。
如下截图是集群添加节点的截图
槽位总共16383个,由于是测试环境,使用的是均分槽位分配。现场可视状况具体分配。
分配的命令以下:
Redis-cli –h IP –p port cluster addslots {xx..xx}
命令执行成功后,会出现ok,以下截图所示。
经过命令从一个节点上链接到集群,而后随便建立一个键值对,而后在从另外一个节点登录集群,获取健对应的值。操做步骤以下截图
单节点多实例的redis集群搭建到此结束。