Redis三主三从集群搭建

一、环境准备

  • 服务器2台
  • 安装docker
  • 下载镜像
docker pull redis
docker pull ruby

二、集群搭建

1、创建配置文件
vim redis-cluster.tmpl
port ${PORT}
#是否禁止公网访问redis cache 开启条件 没有bind IP  没有设置requirepass访问密码
protected-mode no
#是否开启守护模式
daemonize no
#aof日志 每次写操作都记录一条日志
appendonly yes
#目录
dir /data/redis
#是否开启集群
cluster-enabled yes
#集群配置文件
cluster-config-file nodes.conf
#超时时间
cluster-node-timeout 5000

                                          
#创建配置文件
for port in `seq 7000 7002`; do
    mkdir -p ./$port/ && mkdir -p ./$port/data \
    && PORT=$port envsubst < ./redis-cluster.tmpl > ./$port/redis.conf;
done

启动容器
#2、启动容器
for port in `seq 7000 7002`; do
    docker run -d \
    -v $PWD/$port/redis.conf:/data/redis.conf \
    -v $PWD/$port/data:/data/redis \
    --restart always --name redis-$port --net host \
    redis redis-server /data/redis.conf;
done

#进入容器
docker exec -it redis-7000 /bin/sh
3、搭建集群
#进入容器
docker exec -it redis-7000 /bin/sh
#搭建集群
redis-cli --cluster create 192.168.108.20:7000 192.168.108.20:7001 192.168.108.20:7002 192.168.108.21:7000 192.168.108.21:7001 192.168.108.21:7002 --cluster-replicas 1

#连接redis测试
redis-cli -p 7000 -c

4、设置集群密码
#设置密码 主从服务器都需要执行(其中一个节点)
docker exec -it redis-7000 /bin/sh
redis-cli -p 7000 -c
#xxxxx替换为你需要设置的密码
config set masterauth xxxxx
config set requirepass xxxxx
auth shenpu2019
config rewrite

你可能感兴趣的:(Redis三主三从集群搭建)