例如搭建一主两从的Redis集群:
准备三台虚拟机,配置好主机名、IP地址以及Redis环境。
1、在根目录中创建rediscluster目录
mkdir /rediscluster
2、复制redis配置文件
cp /etc/redis.conf /rediscluster/redis.conf
3、创建三个文件
三个文件为三个不同端口号的虚机redis配置文件,然后在其中配置。
include /rediscluster/redis.conf # 修改端口号,端口对应其端口 port 6379 # 修改pid文件名,文件对应其文件 pidfile "/var/run/redis_6379.pid" # 修改持久化文件名 dbfilename "dump_6379.rdb" dir "/rediscluster"
4、启动服务
分别启动redis服务器
rediscluster]# redis-server redis-6379.conf rediscluster]# redis-server redis-6380.conf rediscluster]# redis-server redis-6381.conf
5、验证服务是否启动
rediscluster]# ps -ef | grep redis
6、连接服务器
通过使用redis-cli连接三台redis服务器
rediscluster]# redis-cli -p 6379 rediscluster]# redis-cli -p 6380 rediscluster]# redis-cli -p 6381
7、配置主从
假设我们希望 6379 是主服务器,而 6380 和 6381 是从服务器,则需要做如下配置。 命令格式:slaveof <ip> <port>
我们分别在 6380 和 6381 客户端中执行如下命令:
127.0.0.1:6380> slaveof 127.0.0.1 6379 OK 127.0.0.1:6381> slaveof 127.0.0.1 6379 OK
在redis-cli客户端中执行slaveof命令只会对挡墙环境生效,重启后就是小了。如果要想永久生效,需要在redis.conf配置文件中添加
slaveof <masterip> <masterport>
配置。
8、集群测试
6379中添加数据:
127.0.0.1:6379> set k1 v1 OK 127.0.0.1:6379> set k2 v2 OK
然后在从机上查看就可以看到已经同步了。