赞
踩
看问题:
什么是集群
Redis 集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N。
Redis 集群通过分区(partition)来提供一定程度的可用性(availability): 即使集群中有一部分节点失效或者无法进行通讯, 集群也可以继续处理命令请求。
首先需要安装ruby
能上网
拷贝redis-3.2.0.gem到/opt目录下
执行: gem install --local redis-3.2.0.gem
删除持久化数据
将rdb,aof文件都删除掉。
制作6个实例,6379,6380,6381,6389,6390,6391
配置基本信息
修改好redis6379.conf文件,拷贝多个redis.conf文件
使用查找替换修改另外5个文件
例如::%s/6379/6380
启动6个redis服务
cluster 说明是集群启动。
将六个节点合成一个集群
组合之前,请确保所有redis实例启动后,nodes-xxxx.conf文件都生成正常。
执行命令:
cd /opt/redis-3.2.5/src
./redis-trib.rb create --replicas 1 192.168.31.211:6379 192.168.31.211:6380 192.168.31.211:6381 192.168.31.211:6389 192.168.31.211:6390 192.168.31.211:6391
此处不要用127.0.0.1, 请用真实IP地址
–replicas 1 采用最简单的方式配置集群,一台主机,一台从机,正好三组。
一共插槽数量是 16384,分成三段。
普通方式登录
可能直接进入读主机,存储数据时,会出现MOVED重定向操作。所以,应该以集群方式登录。
要采用集群方式登录:
13.9.-c 采用集群策略连接,设置数据会自动切换到相应的写主机
通过 cluster nodes 命令查看集群信息
redis cluster 如何分配这六个节点
一个集群至少要有三个主节点。
选项 --replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。
分配原则尽量保证每个主数据库运行在不同的IP地址,每个从库和主库不在一个IP地址上。
什么是slots
在集群中录入值
不在一个slot下的键值,是不能使用mget,mset等多键操作。
可以通过{}来定义组的概念,从而使key中{}内相同内容的键值对放到一个slot中去。
查询集群中的值
故障恢复
Redis 集群的不足
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。