Docker中redis容器的主从、持久化配置(详解)(第二篇)(共五篇)

关于redis的介绍
redis是k-v型nosql数据库,支持字符串(string)、列表(list)、集合(set)、散列(hash)、有序集合(zset:形如member:score的散列集合,其中member为成员,score为成员得分,必须为float型数据)。
综合使用redis的以上5种数据类型,可以将redis应用于各种场景,比如点赞、投票网站、消息队列、分布式锁(使用setnx指令,该指令只有在key不存在的时候,才会执行写入操作)、文件分发(没研究过)、日志记录等等。
redis支持主从配置(拓展读性能,主机负责读取、写入,从机只负责读取,主机自动向从机以rdb快照形式同步数据)、持久化配置(支持rdb快照持久化、aof持久化,旧版redis不支持同时配置两种持久化方式,新版的貌似可以)、发布订阅(pub、sub)、事务、流水线pipeline(减少客户端和服务端往返连接次数从而提高性能)、客户端分片(拓展写性能)等。
本文主要记录下redis中的主从配置及持久化操作
下载redis镜像
镜像中心
推荐使用国内daocloud镜像
镜像地址:daocloud.io/library/
拉取redis镜像
docker pull daocloud.io/library/redis:latest
查看拉取的镜像
docker images
搭建redis集群
运行redis镜像
首先使用docker启动3个redis容器服务,分别使用到6379、6380、6381端口
docker run --name redis-6379 -p 6379:6379 -d daocloud.io/library/redis
docker run --name redis-6380 -p 6380:6379 -d daocloud.io/library/redis
docker run --name redis-6381 -p 6381:6379 -d daocloud.io/library/redis
查看运行
docker ps
在这里插入图片描述
在这里插入图片描述
配置redis集群
使用如下命令查看容器内网的ip地址等信息
docker inspect containerid
在这里插入图片描述
3个redis的内网ip地址为:
redis-6379:172.17.0.2:6379
redis-6380:172.17.0.3:6379
redis-6381:172.17.0.4:6379
进入docker容器内部,查看当前redis角色(主还是从)
在这里插入图片描述
可以看到当前3台redis都是master角色,使用redis-cli命令修改redis-6380、redis-6381的主机为172.17.0.2:6379
SLAVEOF host port // SLAVEOF 172.17.0.2 6379
查看redis-6379是否已经拥有2个从机:
在这里插入图片描述
至此,redis下的主从配置就ok了。
后续的哨兵,等持久化,操作请查看第三篇,第四篇。

猜你喜欢

转载自blog.csdn.net/hjmlyj/article/details/83818231