NoSQL数据库 Redis主从集群环境搭建

1.集群(负载均衡)master(slave忽略)

集群中各个Master节点彼此相连,某个节点的fail通过半数投票决定(奇数个节点),节点之间通过ping-pong彼此连接

cluster负责对整个集群的维护,设置16384个哈希槽平均分配到,通过crc 16算法对连接进行计算同时对16384取余,在集群中,将16384个slot(哈希槽)平均分配到每个master中,根据算法获取连接值决定由哪个master节点处理该连接

客户端连接到集群中节点都代表连接集群成功

2.投票
1) 节点fail

超过一半的节点无法访问该节点,则该节点fail

2)集群fail

①某个master fail,但是该master没有slave则集群fail(slot丢失)

②超过半数的master节点fail,不管是否有slave整个集群都会fail

3.搭建集群
1)搭建6个redis服务器(3个master和3和slave) 6379-6384
cluster-enabled yes
2) 创建文件夹(/opt/redis) --> cluster

将6个数据库(配置文件)放置在cluster中

将src的redis-trib.rb文件复制到cluster中

cluster 目录下:

redis-trib.rb

mkdir 6379
cd 6379
3)修改配置文件并拷贝配置文件

redis.conf ----> vim 修改 cluster-enabled yes

cp -r 6379  6380 6381 6382 6383 6384
vim redis.conf

修改redis.conf的端口

4)启动6台redis-server
redis-server     xxxx/xxx/xxx/6379/redis.conf
redis-server     xxxx/xxx/xxx/6380/redis.conf
redis-server     xxxx/xxx/xxx/6381/redis.conf
redis-server     xxxx/xxx/xxx/6382/redis.conf
redis-server     xxxx/xxx/xxx/6383/redis.conf
redis-server     xxxx/xxx/xxx/6384/redis.conf
5)安装ruby(通信接口的程序是ruby写的)
yum install -y ruby

yum install -y rubygems

集群管理器和redis之间通信,安装接口 redis-3.2.1gem

在线安装:gem install redis (要求ruby版本在2.2.2以上)

离线:gem install redis-3.2.1gem

6) 创建集群:
./redis-trib.rb create --replicas 1 192.168.2.101:6379 192.168.2.102:6380 192.168.2.103:6381 192.168.2.104:6382 192.168.2.104:6382 192.168.2.105:6383 192.168.2.106:6384
7) 连接集群:
redis-cli -h 主机 -p 端口 -c
8) 客户端进入后查看集群信息和节点命令

cluster info

cluster nodes

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值