redis集群环境搭建

环境

redis版本:redis-5.0.4.tar.gz

操作系统(cat /etc/redhat-release):centos7.4

一台云服务器(https://www.cnblogs.com/uncleyong/p/12694334.html)模拟6个redis节点,3个master,3个slave

步骤

redis安装:https://www.cnblogs.com/uncleyong/p/9882843.html

mkdir /usr/local/redis_cluster

cd /usr/local/redis_cluster/

mkdir -p 7001/data 7002/data 7003/data 7004/data 7005/data 7006/data

cd 7001

cp ~/myfile/redis-5.0.4/redis.conf ./

vim redis.conf

port 7001 # 节点端口号
daemonize yes # 以后台进程的方式启动redis实例
bind 172.16.45.250 # 实例绑定当前机器IP地址,ip addr:172.16.45.250
dir /usr/local/redis-cluster/7001/data/(redis实例数据文件存放位置)
pidfile /var/run/redis_7001.pid # 指定该进程pidfile,和port对应
cluster-enabled yes # 启动集群模式
cluster-config-file nodes7001.conf # 和port要对应,集群中该实例的配置文件,该文件会在data目录下生成
cluster-node-timeout 5000 # 超时时间5s
appendonly yes # 开启aop日志
requirepass test123 # master开启密码保护
masterauth test123 # replica同master交互密码

 

redis中文官方:http://www.redis.cn/topics/cluster-tutorial.html

复制配置文件:

cp redis.conf ../7002/

cp redis.conf ../7003/

cp redis.conf ../7004/

cp redis.conf ../7005/

cp redis.conf ../7006/

批量替换,比如修改7002的配置文件

:%s/7001/7002/g

依次启动redis实例

~/myfile/redis-5.0.4/src/目录包含了redis-server和redis-cli的相关命令脚本,可以将该路径加入到PATH环境变量当中,方便使用;或者用/usr/local/redis/bin/下的命令

./redis-server /usr/local/redis_cluster/7001/redis.conf

或者写一个脚本

vim start-all-redis.sh

cd /usr/local/redis/bin/
./redis-server /usr/local/redis_cluster/7001/redis.conf
./redis-server /usr/local/redis_cluster/7002/redis.conf
./redis-server /usr/local/redis_cluster/7003/redis.conf
./redis-server /usr/local/redis_cluster/7004/redis.conf
./redis-server /usr/local/redis_cluster/7005/redis.conf
./redis-server /usr/local/redis_cluster/7006/redis.conf

添加执行权限:chmod +x start-all-redis.sh

查看进程

创建集群:将redis实例联系起来

./redis-cli -a test123 --cluster create --cluster-replicas 1 172.16.45.250:7001 172.16.45.250:7002 172.16.45.250:7003 172.16.45.250:7004 172.16.45.250:7005 172.16.45.250:7006

--cluster-replicas 1,表示主从复制比例为 1:1,即一个主节点对应一个从节点

连接到集群的某个节点:

./redis-cli -a test123 -c -h 172.16.45.250 -p 7001 

-c,1、连接集群结点时使用,此选项可防止moved和ask异常;2、加上-c,节点之间可以自动跳转

如果不加-c

加-c,set键值对后,直接跳转到7003了

集群节点信息

集群信息

原文地址:https://www.cnblogs.com/uncleyong/p/13196936.html