一. redis集群创建
1,redis集群配置文件
#端口
port 7001
#非保护模式
protected-mode no
#启用集群模式
cluster-enabled yes
cluster-config-file nodes.conf
#超时时间
cluster-node-timeout 5000
#集群各节点IP地址
cluster-announce-ip 192.168.0.1
#集群节点映射端口
cluster-announce-port 7001
#集群总线端口
cluster-announce-bus-port 17001
#开启aof持久化策略
appendonly yes
#后台运行
#daemonize yes
#进程号存储
pidfile /var/run/redis_7001.pid
#集群加密
#masterauth itheima
#requirepass itheima
2,docker启动容器,启动多个redis容器,端口指向不同地址,redis集群需要六个节点
docker run -d -p 7001:7001
-v 上方的配置文件:/usr/local/etc/redis/redis.conf
-v 数据存放地址:/data
--privileged=true
--restart always
--name redis-7001
redis redis-server /usr/local/etc/redis/redis.conf
3,启动容器后,随意进入一个容器,进行集群搭建
ip:端口是各个redis节点,以逗号隔开。 --cluster-replicas 1 代表一主节点会有一个从节点
redis-cli --cluster create 172.17.0.3:7001 172.17.0.13:7002 172.17.0.14:7003 --cluster-replicas 1
看到如下信息,表示集群搭建完成
查看节点信息,需要链接进入redis-cli
cluster nodes
4,哨兵配置文件
表示执行 Sentinel 监控, mymaster 给当前监控取个名字,可以随意取, 172.17.0.3 7001,表示监听该主节点, 2
表示有 2 个 sentinel 主观( sdown )认为该节点宕机了,则该节点就编程下线状态( odown )
port 17001
daemonize no
pidfile "/var/run/redis-sentinel.pid"
logfile ""
dir "/tmp"
sentinel myid b365dd35f434d11f894b59387a8a5c2b56561c5a
sentinel deny-scripts-reconfig yes
sentinel monitor mymaster 192.168.18.204 7001 2
sentinel config-epoch mymaster 0
sentinel leader-epoch mymaster 0
补充:构建redis-sentinel镜像Dockerfile文件
redis-6.0.15.tar.gz 下载地址 Redis
FROM centos:latest
ADD redis-6.0.15.tar.gz /
WORKDIR /redis-6.0.15
RUN yum install net-tools gcc make -y && make && make install && cp ./src/redis-server /bin/
版权声明:本文为qq_26226255原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。