Docker容器--部署Redis集群

Redis集群部署实战

拓扑图:

在这里插入图片描述

部署步骤:

1.准备一台干净的docker,或者清空之前所有的容器

docker rm -f $(docker ps -qa)

2.创建redis集群自定义网络。

docker network create --subnet 172.38.0.0/16 --gateway 172.38.0.1 redis

docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
0a89a821a5ae   bridge    bridge    local
6a92fb7176ad   host      host      local
f1e490a31f74   mynet     bridge    local
7092207adda3   none      null      local
61b7c675593f   redis     bridge    local

3.通过脚本创建六个redis配置

[root@localhost ~]# ls /mydata/redis/
node-1  node-2  node-3  node-4  node-5  node-6

4.通过脚本启动容器

for port in $(seq 1 6); \
do \
docker run -p 637${port}:6379 -p 1637${port}:16379 --name redis-${port} \
-v /mydata/redis/node-${port}/data:/data \
-v /mydata/redis/node-${port}/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.1${port} redis redis-server /etc/redis/redis.conf
done

通过命令查看
在这里插入图片描述
5.进入redis-1:

[root@localhost ~]# docker exec -it redis-1 /bin/bash
root@4cab74ee7258:/data# ls
appendonly.aof	nodes.conf

6.创建集群

redis-cli --cluster create 172.38.0.11:6379 172.38.0.12:6379 172.38.0.13:6379 172.38.0.14:6379 172.38.0.15:6379 172.38.0.16:6379 --cluster-replicas 1

7.连接集群

root@4cab74ee7258:/data# redis-cli -c             #连接集群

127.0.0.1:6379> cluster info             #查看集群信息
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3                               #3个主从
cluster_current_epoch:7
cluster_my_epoch:1
cluster_stats_messages_ping_sent:6942
cluster_stats_messages_pong_sent:6986
cluster_stats_messages_fail_sent:5
cluster_stats_messages_auth-ack_sent:1
cluster_stats_messages_sent:13934
cluster_stats_messages_ping_received:6981
cluster_stats_messages_pong_received:6942
cluster_stats_messages_meet_received:5
cluster_stats_messages_fail_received:1
cluster_stats_messages_auth-req_received:1
cluster_stats_messages_received:13930


127.0.0.1:6379> cluster nodes       #查看节点
#可以看到三组三从的信息

127.0.0.1:6379> set a b              #设置一个key-v
-> Redirected to slot [15495] located at 172.38.0.13:6379
OK                       #redis-3写入

8.然后关闭redis-3测试是否能过够达到负载均衡的效果。

docker stop redis-3

9.测试高可用,获取key值

127.0.0.1:6379> get a
-> Redirected to slot [15495] located at 172.38.0.14:6379
"b" 
#此时显示redis4提供值,说明高可用配置成功
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值