Docker部署Redis Sentinel高可用集群

1、创建目录

mkdir /usr/local/docker
cd /usr/local/docker
mkdir redis sentinel

2、创建Redis配置文件

nano工具自行安装

cd redis
nano docker-compose.yml

输入以下内容

version: '3.1'
services:
  master:
    image: redis
    container_name: redis-master
    ports:
      - 6379:6379

  slave1:
    image: redis
    container_name: redis-slave-1
    ports:
      - 6380:6379
    command: redis-server --slaveof redis-master 6379

  slave2:
    image: redis
    container_name: redis-slave-2
    ports:
      - 6381:6379
    command: redis-server --slaveof redis-master 6379

保存并退出

ctrl + o
Enter
ctrl + x  

启动Redis服务

docker-compose up -d

3、创建Sentinel配置文件

cd ../sentinel
nano docker-compose.yml

输入以下内容

version: '3.1'
services:
  sentinel1:
    image: redis
    container_name: redis-sentinel-1
    ports:
      - 26379:26379
    command: redis-sentinel /usr/local/etc/redis/sentinel.conf
    volumes:
      - ./sentinel1.conf:/usr/local/etc/redis/sentinel.conf

  sentinel2:
    image: redis
    container_name: redis-sentinel-2
    ports:
      - 26380:26379
    command: redis-sentinel /usr/local/etc/redis/sentinel.conf
    volumes:
      - ./sentinel2.conf:/usr/local/etc/redis/sentinel.conf

  sentinel3:
    image: redis
    container_name: redis-sentinel-3
    ports:
      - 26381:26379
    command: redis-sentinel /usr/local/etc/redis/sentinel.conf
    volumes:
      - ./sentinel3.conf:/usr/local/etc/redis/sentinel.conf

保存退出

nano sentinel.conf

输入以下内容

port 26379
dir /tmp
sentinel monitor mymaster IP 6379 2
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
sentinel deny-scripts-reconfig yes

IP处填写你自己的IP
复制出三个配置文件

cp sentinel.conf sentinel1.conf
cp sentinel.conf sentinel2.conf
cp sentinel.conf sentinel3.conf

启动Sentinel服务

docker-compose up -d

4、打开Redis客户端

输入名字、地址、端口号,点击下面测试连接,连接成功
在这里插入图片描述

发布了39 篇原创文章 · 获赞 47 · 访问量 4879

猜你喜欢

转载自blog.csdn.net/qq_42520112/article/details/103399193