- 创建专门的文件夹,(非必须专门,只为弄好位置)
cd /usr/local/redis
#创建一个专门的文件夹
mkdir cluster
cd cluster
mkdir {data,log,node,pid}
cd data
mkdir redis_{6379,6380,6381,6382,6383,6384}
- 改动配置文件(这里只给1个节点,其余节点同理)
#拿一份原本的配置文件
cp ../redis.conf ./
mv redis.conf redis6379.conf
vi redis6379.conf
修改以下节点(这里只给1个节点,其余节点同理)
#本机ip
bind 192.168.1.104
#端口
port 6379
#开启集群
cluster-enabled yes
#pid存储目录
pidfile /usr/local/redis/cluster/pid/redis_6379.pid
#日志存储目录
logfile /usr/local/redis/cluster/log/redis_6379.log
#数据存储目录,目录要提前创建好
dir /usr/local/redis/cluster/data/redis_6379
#集群节点配置文件,这个文件是不能手动编辑的。确保每一个集群节点的配置文件不通
cluster-config-file /usr/local/redis/cluster/node/nodes-6379.conf
#持久化
appendonly yes
#守护进程
daemonize yes
- 创建启动脚本
cd /usr/local/redis/cluster
vi start-cluster.sh
#redis服务
for port in {6379..6384}
do
#关闭已经启动的服务,删除临时文件
redis-cli -c -p $port -h 127.0.0.1 shutdown
done;
#start redis
for port in {6379..6384}
do redis-server /usr/local/redis/cluster/redis$port.conf
done;
#create cluster
echo yes|/usr/local/redis/src/redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 --cluster-replicas 1
其它参数解释:
–cluster-replicas 1:表示希望为集群中的每个主节点创建一个从节点(一主一从)。
–cluster-replicas 2:表示希望为集群中的每个主节点创建两个从节点(一主二从)。
- 启动集群
sh ./start-cluster.sh
- 查看集群如下:
#命令的方式
redis-cli -c -h 127.0.0.1 -p 6379 cluster info
redis-cli -c -h 127.0.0.1 -p 6379 cluster nodes
#进程的方式
ps -ef|grep redis
注意:
实际情况是不同机器不同节点,它们首先必须要互相ping通,开放端口,不可能关闭防火墙,其次它们的总线通讯端口是redis端口+10000,这个端口也需要开放出来,不然是启动集群后一直waiting cluster nodes,
在启动集群失败后,要先
1、关闭各节点redis-server
2、删除nodes.conf
3、删除dump.db,aof
4、启动各节点redis-server
参考:
Redis——6.0集群安装部署
网友评论