docker 配置redis主从复制

一、安装Redis

1.拉取官方镜像

[[email protected] /]# docker pull  redis:5.0.7

2.下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为redis,标签为5.0.7的镜像。

[[email protected] ~]# docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
docker.io/redis       5.0.7               dcf9ec9265e0        3 months ago        98.2 MB

3.运行容器

[[email protected] ~]# docker run --name redis-6379 -p 6379:6379 -d redis:5.0.7 redis-server

  

二、主从复制

1.运行redis镜像

首先使用docker启动3个redis容器服务,分别使用到6379、6380、6381端口

docker run --name redis-6379 -p 6379:6379 -d redis:3.2 redis-server
docker run --name redis-6380 -p 6380:6379 -d redis:3.2 redis-server
docker run --name redis-6381 -p 6381:6379 -d redis:3.2 redis-server

2.配置redis集群

使用如下命令查看容器内网的ip地址等信息

docker inspect containerid(容器ID)

3个redis的内网ip地址为:

redis-6379:172.17.0.3:6379
redis-6380:172.17.0.4:6379
redis-6381:172.17.0.5:6379

进入docker容器内部,查看当前redis角色(主master还是从slave)(命令:info replication)

127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:0
master_replid:a44f60e68f4d128750c2d09a00c9d4a1b6b643d1
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

可以看到当前3台redis都是master角色,使用redis-cli命令修改redis-6380、redis-6381的主机为172.17.0.3:6379

[[email protected] ~]# docker exec -it redis-6381 redis-cli
127.0.0.1:6379> slaveof 172.17.0.3 6379
OK

再次查看主机info,已经有两个从机了(.4 和 .5)

127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:2
slave0:ip=172.17.0.5,port=6379,state=online,offset=308,lag=1
slave1:ip=172.17.0.6,port=6379,state=online,offset=308,lag=1
master_replid:2392e41f862b441aed8e66c6fe9483e772c671b6
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:308
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:308

至此,redis下的主从配置就ok了。

参考:https://blog.csdn.net/yhk724555508/article/details/85338706?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

原文地址:https://www.cnblogs.com/mengY/p/12545459.html

时间: 2024-10-07 04:50:19

docker 配置redis主从复制的相关文章

配置Redis主从复制

[构建高性能数据库缓存之redis主从复制][http://database.51cto.com/art/201407/444555.htm] 一.什么是redis主从复制? 主从复制,当用户往Master端写入数据时,通过Redis Sync机制将数据文件发送至Slave,Slave也会执行相同的操作确保数据一致:且实现Redis的主从复制非常简单. 二.redis主从复制特点 1.同一个Master可以拥有多个Slaves. 2.Master下的Slave还可以接受同一架构中其它slave的

【Redis】配置redis主从复制

阅读目录 简单介绍 章节1:下载安装 章节2:修改配置文件 章节3:开启主从redis服务 章节4:客户端连接-测试同步 章节5:应用场景 章节6:参考链接 简单介绍 redis的作用,可网上自行搜索,下面将介绍redis的主从复制. 配置redis主从IP和port: master and slave ip port master 127.0.0.1 6379 slave1 127.0.0.1 6380 slave2 127.0.0.1 6381 回到顶部 一.下载安装 下载文件: wget

docker 配置redis并远程访问

我安装的是这个镜像 docker.io/redis docker pull docker mkdir docker cd docker mkdir redis cd redis mkdir data 创建启动容器,配置持久化启动 docker run -d --privileged=true -p 6379:6379 -v /docker/redis/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data --name redis

使用docker配置mysql主从复制

MySQL的主从复制之前也没做过,刚百度了下发现并不算难,但同时开两个虚机挺麻烦,于是我就想到了使用docker来配置MySQL主从复制. 环境:docker,centos,MySQL镜像,这里我直接pull了一个镜像 运行一个master容器 docker run -d --name master -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root mysql docker ps -a 这里将master容器的3306端口映射给主机的3307端口,-e代表设置环境

docker 配置redis主从配置 集群 正式部署

转至 平凡的学生族发表于后端技术 在这篇文章中: 前言 环境 目录 0.确立计划 1. 运行master容器 2. 编写redis.conf 3. 解决WARNING THP 4. 解决WARNING somaxconn 5. 最终的docker run 最后 参考 前言 在正式部署前,你可以先阅读前置准备,对部署过程中用到的docker.redis操作和配置有一个理解,以防在自己电脑上复现时出错. 我们将在一台windows10机器上运行多个docker容器,配置Redis主从集群. 环境 宿

配置redis主从复制、高可用集群

一.安装redis首先下载redis安装包 [[email protected] yasuobao]# pwd /root/yasuobao [[email protected] yasuobao]# wget http://download.redis.io/releases/redis-5.0.5.tar.gz 解压[[email protected] yasuobao]# tar -zxvf redis-5.0.5.tar.gz下载gcc.c[[email protected] yasuo

配置redis主从复制和sentinel模式

测试环境: 机器:192.168.110.132 redis主端口:6379 redis从端口:6380 redis从端口:6381 sentinel端口:26379 操作系统版本:CentOS release 6.5 (Final) redis版本:3.2.6 Linux系统安装redis: 1.下载redis: 登陆redis官网https://redis.io/download,下载最新稳定版源码包redis-3.2.6.tar.gz.解压后进行编译即可. tar -zxvf redis-

Redis主从复制及状态监测

参考链接:http://www.cnblogs.com/morvenhuang/p/4184262.html #配置redis主从复制: #安装redis-2.8.12 master 192.168.1.1 6379 slave 192.168.1.2 6379 #修改slave端的配置(redis.conf) slaveof 192.168.1.1 6379 masterauth master123$ slave-read-only yes #启动 master,slave redis-ser

Redis主从复制失败(master_link_status:down)

今天配置redis主从复制时出现master_link_status:down提示. 首先打开slave的redis.conf配置文件,确定slaveof 和masterauth 两个选项配置是否正确. 然后再把后台进程的选项关闭:daemonize no(应该大多数同学为了方便把它设为yes了) slave再启动时出现如下提示: [10144] 14 May 01:04:22 * Connecting to MASTER...[10144] 14 May 01:04:22 * MASTER <