1.环境介绍
两台内网服务器:192.168.31.110(主)、192.138.31.98(从)
2.拉取redis镜像
docker pull docker.io/redis:4.0
3.运行redis镜像,为了明确区分主从,这里用别名标识
(1)192.168.31.110服务器运行容器:
docker run -d -p 6379:6379 -p 26379:26379 --name redis-master -v $PWD/data:/data redis:4.0 redis-server
(2)192.138.31.98服务器运行容器:
docker run -d -p 6379:6379 -p 26379:26379 --name redis-slave -v $PWD/data:/data redis:4.0 redis-server
4.配置主从
(1)分别进入服务器的redis容器
docker exec -it redis-master
docker exec -it redis-slave
(2)连接redis,查看redis信息
redis-cli
info replication
可以看到信息:
可以看到目前两个容器都是主。
在从redis容器中,运行redis命令:
slaveof 192.168.31.110 6379
再次查看redis信息
自此,redis主从配置完成
5.配置哨兵
(1)添加哨兵配置文件
touch /sentinel.conf
echo "sentinel monitor mymaster 192.168.31.110 6379 1" > /sentinel.conf
(2)运行命令启动哨兵
redis-sentinel /sentinel.conf
至此,哨兵配置启动成功。