这是我参与「掘金日新计划 · 8 月更文挑战」的第25天,点击查看活动详情
前言
Redis集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数据分布存储在N个节点中,每个节点存储的数据为总数据的1/n。通过分区来提供一定程度的可用性:即使集群中一部分节点失效或者无法进行通讯,集群也可以继续处理命令请求。可以解决单个redis服务容量不够以及并发写时的流量分摊,而且主从模式,薪火相传模式,主机宕机,导致ip如果发生变化应用程序就没办法链接到服务这个可以使用代理主机,在3.0之后redis提供了无中心化集群配置。
集群搭建最少需要6个节点
下面我们来搭建一下
1.先获取镜像
docker pull redis:6.2.6
2. 创建配置文件
6379 6380 6381 6389 6390 6391 六个服务的
port 6379
cluster-config-file nodes-6379.conf #设置节点配置文件名称
cluster-node-timeout 15000
cluster-enabled yes
port 6380
cluster-config-file nodes-6380.conf #设置节点配置文件名称
cluster-node-timeout 15000
cluster-enabled yes # 打开集群模式
都是一样的就不重复往出贴了
3. 下面我们将这六个容器创建出来 这里就只贴一个ssh的命令了
docker run -p 6379:6379 --name redis6379
-v /mydata/redis6379/data:/data
-v /mydata/redis6379/redis6379.conf:/etc/redis/redis.conf
-d redis:6.2.6 redis-server /etc/redis/redis.conf
容器创建成功之后我们随便进入一个容器内部 执行合并命令
docker exec -it redis6379 /bin/bash
redis-cli --cluster create --cluster-replicas 1 192.168.1.13:6379 192.168.1.13:6380 192.168.1.13:6381 192.168.1.13:6389 192.168.1.13:6390 192.168.1.13:6391
-- cluster-replicas 1即采用最简单的方式配置集群 ,一台主机 一台从机。
执行完成可以看到 当然实际开发中集群肯定不是在一个服务器上面这里只是用来演示基本步骤在本的虚拟机中完成的
使用命令 cluster nodes查看 节点信息
实践是检验真理的唯一准则,感兴趣的可以去试试呀!明天见咯 😃😃😃😃