创建redis-cluster集群
1、创建多台redis实例
这里我们就创建六台redis来举例,这我偷懒直接for循环创建了,同时我这里只列举了集群的配置信息其他配置信息根据自己需要添加。docker创建redis
for port in $(seq 7001 7006); \
do \
mkdir -p /mydata/redis/node-${port}/conf
touch /mydata/redis/node-${port}/conf/redis.conf
cat << EOF > /mydata/redis/node-${port}/conf/redis.conf
port ${port}
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 192.168.56.10
cluster-announce-port ${port}
cluster-announce-bus-port 1${port}
appendonly yes
EOF
docker run -p ${port}:${port} -p 1${port}:1${port} --name redis-${port} --restart always \
-v /mydata/redis/node-${port}/data:/data \
-v /mydata/redis/node-${port}/conf/redis.conf:/etc/redis/redis/redis.conf \
-d redis:6.2.7 redis-server /etc/redis/redis.conf; \
done
使用docker命令查询,可以发现已经创建成功了。
2、创建集群
2.1 随便进入一个redis容器
docker exec -it redis-7001 bash
2.2 创建集群
这个命令是指定每一个主节点有一个副本,那么这样就会产生3主3从。
redis-cli --cluster create 192.168.56.10:7001 192.168.56.10:7002 192.168.56.10:7003 192.168.56.10:7004 192.168.56.10:7005 192.168.56.10:7006 --cluster-replicas 1
执行之后会让我们确认,我们需要输入yes
就可以了
这样就说明我们就创建成功了,同时他还说明了那些节点是主,那些节点是从。
需要注意的是,我们进入redis控制台的时候需要使用集群的方式,即加-c
redis-cli -c -h 192.168.56.10 -p 7001