准备三台主机并且安装了docker

192.168.31.132
192.168.31.134
192.168.31.144

linux 版redis6.0.8 下载

下载地址:https://download.redis.io/releases/

干啥用:拷贝出redis.conf文件,在此文件里配置主从关系,最好不要使用不同版本的配置文件,防止出现配置文件的参数不兼容问题

安装步骤

在三台主机上分别建立目录/home/docker/redis,并且把redis.conf文件都复制过去,132作为master,134以及144作为salve。

在132修改配置./redis_master.conf文件,134以及144的配置文件分别为./redis_slave1.conf、./redis_slave/redis_slave2.conf

  • redis_master.conf文件修改
# 注释这一行,表示Redis可以接受任意ip的连接
# bind 127.0.0.1 # 关闭保护模式
protected-mode no # 让redis服务后台运行
daemonize no
# 设定主库的密码,用于认证,如果主库开启了requirepass选项这里就必须填相应的密码
masterauth 123456
# 设定密码(可选,如果这里开启了密码要求,slave的配置里就要加这个密码. 只是练习配置,就不使用密码认证了)
requirepass 123456 # 配置日志路径,为了便于排查问题,指定redis的日志文件目录
logfile "/data/redis.log"
  • redis_slave.conf 文件修改
# 注释这一行,表示Redis可以接受任意ip的连接
# bind 127.0.0.1 # 关闭保护模式
protected-mode no # 让redis服务后台运行
daemonize no # 设定密码(可选,如果这里开启了密码要求,slave的配置里就要加这个密码123456)
requirepass 123456 # 设定主库的密码,用于认证,如果主库开启了requirepass选项这里就必须填相应的密码
masterauth 123456 # 设定master的IP和端口号,redis配置文件中的默认端口号是6379
replicaof 198.168.31.132 6379 # 配置日志路径,为了便于排查问题,指定redis的日志文件目录
logfile "/data/redis.log"
  • master配置文件修改之后,执行docker 安装命令
docker network create --driver bridge redis-net

docker run -it --name redis-master  --network=redis-net -p 6379:6379 -v /home/docker/redis/redis_master.conf:/usr/local/redis/redis.conf  -v /home/docker/redis:/data -d redis:6.0.8 redis-server /usr/local/redis/redis.conf

docker run -it --network=redis-net -d -p 6379:6379 -p 16379:16379 -v /home/docker/redis/redis_slave1.conf:/etc/redis/redis.conf -v /home/docker/redis/data:/data   --name redis-slave1 redis:6.0.8 redis-server /etc/redis/redis.conf

docker run -it --network=redis-net -d -p 6379:6379 -p 16379:16379 -v /home/docker/redis/redis_slave/redis_slave2.conf:/etc/redis/redis.conf -v /home/docker/redis/redis_slave/data:/data   --name redis-slave2 redis:6.0.8 redis-server /etc/redis/redis.conf

  • 容器启动成功之后,进入容器查看redis信息,

docker ps -a
docker exec -it 容器id /bin/bash
redis-cli
auth 123456
info
  • 验证一主二从是否搭建成功,使用info命令查看,出现如下信息



哨兵集群准备

在redis6.0.8里拷贝出sentinel.conf文件,这里在144主机上搭建,目录准备

  • 修改redis_sentinelx.conf文件
# 让sentinel服务后台运行
daemonize no # 修改日志文件的路径
logfile "/data/sentinel.log" # 修改监控的主redis服务器
# 最后一个2表示,两台机器判定主被动下线后,就进行failover(故障转移)
sentinel monitor mymaster 192.168.31.132 6379 2
# 主数据库密码,需要将配置放在sentinel monitor mymaster 192.168.31.132 6379 2下面
sentinel auth-pass mymaster 123456
  • 安装步骤
docker run -it --network=redis-net -d -p 26380:26380 -v /home/docker/redis/redis_sentinel1/sentinel.conf:/etc/redis/sentinel1/sentinel.conf -v /home/docker/redis/redis_sentinel1/data:/data   --name redis-sentinel1 redis:6.0.8 redis-sentinel /etc/redis/sentinel1/sentinel.conf

docker run -it --network=redis-net -d -p 26381:26381 -v /home/docker/redis/redis_sentinel2/sentinel.conf:/etc/redis/sentinel2/sentinel.conf -v /home/docker/redis/redis_sentinel2/data:/data   --name redis-sentinel2 redis:6.0.8 redis-sentinel /etc/redis/sentinel2/sentinel.conf

docker run -it --network=redis-net -d -p 26382:26382 -v /home/docker/redis/redis_sentinel3/sentinel.conf:/etc/redis/sentinel3/sentinel.conf -v /home/docker/redis/redis_sentinel3/data:/data   --name redis-sentinel3 redis:6.0.8 redis-sentinel /etc/redis/sentinel3/sentinel.conf
  • 验证
docker exec -it 容器id /bin/bash
redis-sentoinel

docker 安装redis 6.0.8哨兵集群(一主两从三哨兵)的更多相关文章

  1. centos安装redis 5.0版本的集群

    我在本地VM-Centos里安装5.0.5时安装遇到了些问题,参考了Blog:https://www.cnblogs.com/shawhe/p/9548620.html 顺利安装完成. 安装redis ...

  2. redis(一主两从三哨兵模式搭建)记录

    转自:http://www.cnblogs.com/fly-piglet/p/9836314.html 目的: 让看看这篇文章的的人能够知道:软件架构.软件的安装.配置.基本运维的操作.高可用测试.也 ...

  3. 【运维技术】redis(一主两从三哨兵模式搭建)记录

    redis(一主两从三哨兵模式搭建)记录 目的: 让看看这篇文章的的人能够知道:软件架构.软件的安装.配置.基本运维的操作.高可用测试.也包含我自己,能够节省对应的时间. 软件架构: 生产环境使用三台 ...

  4. 实践 - 搭建Redis一主两从三哨兵

    实践 - 搭建Redis一主两从三哨兵 原因: 最近在复习Redis的时候,学习到了为了提高Redis集群的高可用性,有一个模式为哨兵模式.哨兵模式的作用是为了在主节点出现阻塞或者错误,无法接收数据的 ...

  5. docker安装redis 5.0.7并挂载外部配置和数据

    环境 CentOS Linux release 7.7.1908 (Core) 拉取redis 5.0.7 镜像 docker pull redis:5.0.7 创建挂载目录 mkdir -p /ho ...

  6. redsi一主两从三哨兵

    1.前提准备 防火墙,selinux,主机名解析,所有主机安装gcc [root@localhost ~]# vim /etc/hosts 192.168.122.135  redis_master ...

  7. Docker搭建Redis一主两从三哨兵

    作者:oscarwin juejin.im/post/5d26b03de51d454fa33b1960 这次实验准备了三台云主机,系统为Debian,ip分别为:35.236.172.131 ,35. ...

  8. docker镜像创建redis5.0.3容器集群

    拉取redis5.0.3镜像 # docker pull daocloud.io/library/redis:5.0.3 [root@localhost ~]# docker pull daoclou ...

  9. Redis哨兵集群创建脚本--v2

    1. 基础环境 操作系统版本  CentOS Linux release 7.6.1810 (Core) Docker 版本  19.03.11, build 42e35e61f3 Redis  版本 ...

  10. 11.Redis 哨兵集群实现高可用

    作者:中华石杉 Redis 哨兵集群实现高可用 哨兵的介绍 sentinel,中文名是哨兵.哨兵是 redis 集群机构中非常重要的一个组件,主要有以下功能: 集群监控:负责监控 redis mast ...

随机推荐

  1. 关于 OAuth 你又了解哪些?

    作者罗锦华,API7.ai 技术专家/技术工程师,开源项目 pgcat,lua-resty-ffi,lua-resty-inspect 的作者. OAuth 的背景 OAuth,O 是 Open,Au ...

  2. 用PHPstudy nginx 配置tp6 隐藏访问链接中的index.php

    在server 里面加上如下这个判断就好了 if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; 配置在对应网 ...

  3. linux syslog.d日记操作记录-小节

    以下记录在学习LDD3时调试处理打印的一些操作 syslog 不同的发行版,不同的脚本文件,如fedora18中为rsyslog的名称 1:配置文件 /etc/syslog.conf(fedora r ...

  4. [OpenCV-Python] 7 把鼠标当画笔

    文章目录 OpenCV-Python: II OpenCV 中的 Gui 特性 7 把鼠标当画笔 7.1 简单演示 7.2 高级一点的示例 OpenCV-Python: II OpenCV 中的 Gu ...

  5. [ZJOI2020] 序列 线性规划做法/贪心做法

    线性规划做法 同时也作为线性规划对偶的一个小小的学习笔记. 以下 \(\cdot\) 表示点积,\(b,c,x,y\) 是行向量. \(A\) 是矩阵,对于向量 \(u,v\) 若 \(\forall ...

  6. cryptohack wp day (2)

    接着昨天的题目 第五题 看题目,一道简单的xor题,就是将"label中每个字符与13进行异或处理",直接上代码: s="label" result = &qu ...

  7. AspNetCoreRateLimit应用于MVC项目求助

    AspNetCoreRateLimit应用于MVC项目求助 前言 之前发过一篇文章: .NET Core WebApi接口ip限流实践 - 妙妙屋(zy) - 博客园 (cnblogs.com) 然后 ...

  8. 2022-07-29:一共有n个人,从左到右排列,依次编号0~n-1, h[i]是第i个人的身高, v[i]是第i个人的分数, 要求从左到右选出一个子序列,在这个子序列中的人,从左到右身高是不下降的。

    2022-07-29:一共有n个人,从左到右排列,依次编号0~n-1, h[i]是第i个人的身高, v[i]是第i个人的分数, 要求从左到右选出一个子序列,在这个子序列中的人,从左到右身高是不下降的. ...

  9. 2022-05-02:给定一个数组arr,一个正数num,一个正数k, 可以把arr中的某些数字拿出来组成一组,要求该组中的最大值减去最小值<=num, 且该组数字的个数一定要正好等于k, 每个数字只

    2022-05-02:给定一个数组arr,一个正数num,一个正数k, 可以把arr中的某些数字拿出来组成一组,要求该组中的最大值减去最小值<=num, 且该组数字的个数一定要正好等于k, 每个 ...

  10. vue全家桶进阶之路32:Vue3 WatchEffect和watch 监听

    在 Vue 3 中,watchEffect 是一个用于监听响应式数据变化的 API.它可以在函数内部自动跟踪数据的依赖,并在依赖变化时重新运行函数. watchEffect 的作用以及各个参数的功能讲 ...