时间:2022-10-04 10:51:50 | 栏目:Redis | 点击:次
三台机器 201、202、203,每台机器装两个 redis 实例,构建 redis cluster 集群。
添加 redis-cluster 目录,将 redis 压缩包拷贝到该目录下,解压压缩包。
解压完后,将文件夹 redis-5.0.3 重命名为 redis1。
[root@test201 redis-cluster]# mv redis-5.0.3 redis1
需要在 redis1 目录下使用 make 命令进行编译。
[root@test201 redis-cluster]# cd redis1 [root@test201 redis1]# make
然后再执行 cp 命令拷贝另一份 redis2。
删除对应的压缩包。
其他两个服务器也是按照上面的操作来一遍。
在 redis-cluster 目录下创建数据文件夹 redis-data。
再在该文件夹中建两个文件夹 7001 和 7002,分别存放两个 redis 的数据。
创建一个配置文件 redis-1.conf。
编辑配置文件内容:
# 添加端口号 port 7001 # 设置为守护进程,配置 redis 后台运行 daemonize yes # pid 文件,会自动创建的,直接指定目录 pidfile /var/run/redis_7001.pid # 数据保存位置 dir /opt/yidian/redis-cluster/redis-data/7001 # 关闭保护模式 protected-mode no # 开启集群 cluster-enabled yes # 集群配置文件,不需要我们维护,首次启动的时候会自动生成 cluster-config-file nodes_7001.conf # 请求超时时间 cluster-node-timeout 10100 # 开启 AOF 日志 appendonly yes
复制一份 redis-7002.conf 配置文件,把刚才那个 redis-1.conf 文件改名为 redis-7001.conf,接下来修改 redis-7002.conf 配置文件中对应内容为 7002。
编辑配置文件 redis-7002.conf 内容:
# 添加端口号 port 7002 # 设置为守护进程,配置 redis 后台运行 daemonize yes # pid 文件,会自动创建的,直接指定目录 pidfile /var/run/redis_7002.pid # 数据保存位置 dir /opt/yidian/redis-cluster/redis-data/7002 # 关闭保护模式 protected-mode no # 开启集群 cluster-enabled yes # 集群配置文件,不需要我们维护,首次启动的时候会自动生成 cluster-config-file nodes_7002.conf # 请求超时时间 cluster-node-timeout 10100 # 开启 AOF 日志 appendonly yes
创建 redis 服务的启动脚本 start-all.sh,并且修改执行权限:
脚本 start-all.sh 内容:
/opt/yidian/redis-cluster/redis1/src/redis-server /opt/yidian/redis-cluster/redis-7001.conf /opt/yidian/redis-cluster/redis2/src/redis-server /opt/yidian/redis-cluster/redis-7002.conf
同样的方式可以创建 redis 服务关闭脚本 stop-all.sh:
/opt/yidian/redis-cluster/redis1/src/redis-cli -p 7001 shutdown /opt/yidian/redis-cluster/redis2/src/redis-cli -p 7002 shutdown
其他两台服务器上重复上述配置过程。
在三台服务器上分别执行启动脚本:
启动完后分别查看,可看到如下进程:
随便找一台服务器登录,这里登录 201,然后执行下面的命令:
./redis-cli --cluster create 192.168.57.201:7001 192.168.57.201:7002 192.168.57.202:7001 192.168.57.202:7002 192.168.57.203:7001 192.168.57.203:7002 --cluster-replicas 1
可以看到开始初始化创建集群了。
中间的一些询问输入 yes。
到这里 redis cluster 集群就创建完毕了。我们可以登录查看集群信息。
登录集群(-c 表示以集群模式登录):
./redis-cli -c -h 127.0.0.1 -p 7001
查看集群信息:
127.0.0.1:7001> cluster info
查看节点信息:
127.0.0.1:7001> cluster nodes