- 解压安装Redis压缩包
https://download.csdn.net/download/xukaixun005/10962188
将上面链接中的压缩包上传到linux服务器解压:
[root@CLOUD172 opt]# unzip redis-3.2.9.zip
Archive: redis-3.2.9.zip
creating: redis-3.2.9/
creating: redis-3.2.9/bin/
inflating: redis-3.2.9/bin/redis-cli
inflating: redis-3.2.9/bin/redis-sentinel
inflating: redis-3.2.9/bin/redis-server
inflating: redis-3.2.9/bin/redis-trib.rb
creating: redis-3.2.9/conf/
inflating: redis-3.2.9/conf/redis.conf
creating: redis-3.2.9/cluster/
creating: redis-3.2.9/cluster/7000/
inflating: redis-3.2.9/cluster/7000/appendonly.aof
inflating: redis-3.2.9/cluster/7000/nodes-7000.conf
inflating: redis-3.2.9/cluster/7000/nodes.conf
inflating: redis-3.2.9/cluster/7000/redis.conf
inflating: redis-3.2.9/cluster/7000/redis.log
creating: redis-3.2.9/cluster/7001/
inflating: redis-3.2.9/cluster/7001/appendonly.aof
inflating: redis-3.2.9/cluster/7001/nodes-7001.conf
inflating: redis-3.2.9/cluster/7001/nodes.conf
inflating: redis-3.2.9/cluster/7001/redis.conf
inflating: redis-3.2.9/cluster/7001/redis.log
inflating: redis-3.2.9/bin/start.sh
inflating: redis-3.2.9/bin/stop.sh
inflating: redis-3.2.9/bin/redisClusterBuild.sh
[root@CLOUD172 opt]# cd redis-3.2.9
[root@CLOUD172 redis-3.2.9]# ll
总用量 12
drwxr-xr-x. 2 root root 4096 11月 5 17:22 bin
drwxr-xr-x. 4 root root 4096 2月 15 14:28 cluster
drwxr-xr-x. 2 root root 4096 11月 5 17:22 conf
修改根目录下所有文件的权限:
[root@CLOUD172 redis-3.2.9]# chmod -R 750 *
[root@CLOUD172 redis-3.2.9]#
- 修改配置文件,启动集群(默认配置了两个实例,端口分别为7000和7001)
1、查看端口7000和7001是否被占用,如果被占用,则按如下2操作修改端口;否则直接进入步骤2;
(1)查看端口占用情况:
[root@CLOUD172 bin]# netstat -tunlp | grep 7000
tcp 0 0 10.10.1.33:17000 0.0.0.0:* LISTEN 32595/./redis-serve
tcp 0 0 10.10.1.33:7000 0.0.0.0:* LISTEN 32595/./redis-serve
[root@CLOUD172 bin]#
(2)修改被占用的端口
以端口“7000”被占用为例,查看哪些配置文件都引用了该端口:
[root@CLOUD172 redis-3.2.9]# grep -r '7000' *
bin/start.sh:./redis-server ../cluster/7000/redis.conf
bin/start.sh:./redisClusterBuild.sh 10.10.1.33:7000 10.10.1.33:7001
cluster/7000/redis.conf:port 7000
cluster/7000/redis.conf:dir ../cluster/7000
cluster/7000/redis.conf: cluster-config-file nodes-7000.conf
[root@CLOUD172 redis-3.2.9]#
将上面中这几处引用端口“7000”修改为新端口“7002”,并且将文件夹名称“7000”修改为“7002”:
[root@CLOUD172 7000]# cd ../
[root@CLOUD172 cluster]# mv 7000 7002
[root@CLOUD172 cluster]# ll
总用量 8
drwxr-x---. 2 root root 4096 2月 15 15:00 7001
drwxr-x---. 2 root root 4096 2月 15 15:00 7002
[root@CLOUD172 cluster]#
2、修改配置文件中绑定的IP:
将下列配置文件中绑定的“10.10.1.33”修改为现场待部署redis的服务器IP。
[root@CLOUD172 redis-3.2.9]# grep -r '10.10.1.33' *
bin/start.sh:./redisClusterBuild.sh 10.10.1.33:7002 10.10.1.33:7001
cluster/7001/redis.conf:bind 10.10.1.33
cluster/7002/redis.conf:bind 10.10.1.33
[root@CLOUD172 redis-3.2.9]#
3、启动集群:
确保所有实例的端口都没有被占用,并且绑定服务器的IP正确,启动实例,脚本会自动配置集群信息。
[root@CLOUD172 bin]# ./start.sh
创建redis实例成功
将端口7001集群到端口7002上:
OK
给端口7002分配槽:
OK
给端口7001分配槽:
OK
创建redis集群成功:masterId1=6d807896208d2f7e29f57fe06343ba6b1517b61d masterId2=19822e583640fa348130801a244ba88402afa4e1
[root@CLOUD172 bin]#
- 测试集群配置是否成功
连接redis,写入数据,然后测试是否能读取到。
[root@CLOUD172 bin]# ./redis-cli -h 10.10.1.33 -p 7002 -c
10.10.1.33:7002> set k v
OK
10.10.1.33:7002> get k
"v"
10.10.1.33:7002>
[root@CLOUD172 bin]# ./redis-cli -h 10.10.1.33 -p 7001 -c
10.10.1.33:7001> get k
-> Redirected to slot [7629] located at 10.10.1.33:7002
"v"
10.10.1.33:7002>
- 修改程序的redis配置
打开配置文件redis.properties,将上面部署好的redis集群替换默认的集群,多个实例之间用逗号分隔
[root@CLOUD172 prjConf]# grep '10.10.1.33' redis.properties
redis.alarm.url=10.10.1.33:7001,10.10.1.33:7002
redis.url=10.10.1.33:7001,10.10.1.33:7002
[root@CLOUD172 prjConf]#
- 停止redis服务
在bin目录执行stop命令,后面需要写上待停止的redis集群IP和端口,可以写多个。
[root@CLOUD172 bin]# ./stop.sh 10.10.1.33:7001 10.10.1.33:7002
stop cluster1 10.10.1.33:7001
stop cluster2 10.10.1.33:7002
[root@CLOUD172 bin]#