redis-linux上安装redis

单机版本

因为redis是c++写的,我们首先需要安装c++环境

1.在linux安装c++源码编译器 需要联网

  linux输入yum -y install gcc gcc-c++

2.官网下载redis源码包redis-4.0.10.tar

3.使用xftp将redis-4.0.10.tar上传到linux  协议用xftp否则连不上

4.解压

如果没有权限 使用

chmod +x  redis压缩包  给可执行权限

5.进入解压目录。看是否有markFile目录 如果没有则自己创建一个

6.执行make进行编译

7.编译完成后将src下面的redis-server、redis-benchmark、redis-cli和redis.conf。然后拷贝到一个目录下。、

8.将redis设置为后台启动  vi编辑器编辑redis.conf  使用/daemonize  收缩找到 改为yes

9. ./redis-server redis.conf 启动

10.使用ps aux|grep redis查看是否启动成功

 

11.使用telnet测试是否能连接

12.开放对外端口

(可能遇到的问题https://blog.csdn.net/csdn_lqr/article/details/53885808)

iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

12.iptables -L INPUT -n --line-numbers 查看是否开放成功

 13.端口改为本机ip

集群版本

架构

 

3台主服务器  

 redis内置16384 个哈希槽   会根据redis集群的数量 将这些hash槽均匀分配到每个集群节点上。
当我们通过命令存取数据的时候   redis  先对  key  使用  crc16  算法算出一个结果,然后把结果对  16384  求余数 算出(0-16384之间的数字)然后通过这个数字知道 值放在哪台服务器上
hash槽也可以根据每个节点的内存 来进行分配 比如一台机器内存比较少 那么槽的数量就分少一点
如果其中一个主节点完全挂掉了 那么整个集群也挂掉了

好处

集群架构模型主要用来缓解写入性能

1.复制单机版客户端6份

2.修改每个redis的redis.conf端口改为不一致 6379  6380 6381 6382 6383 6384  同时取消cluster-enable=yes注释 表示集群节点

3.创建批处理启动和关闭程序脚本

 

 3.给新加的2个文件可执行权限

 chmod +x start-all.sh

4.测试启动执行start-all.sh

5.查看是否启动成功

6.执行批量关闭的sh ./shutdown-all.sh  并查看redis的状态

 7.开放所有端口对外访问权限 

iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

7.安装rvm ruby 

参考https://blog.csdn.net/zzzcl112/article/details/80531792(redis脚本 src目录下 redis-trip.rb是基于ruby写的)

8安装 ruby需要的redis接口gem install redis

 

8 ./redis-trib.rb create 192.168.65.128:6379 192.168.65.128:6380 192.168.65.128:6381

先创建3个主节点(去安装目录src下执行redis-trib.rb)

 9.通过其中一个主节点查看集群节点./redis-trib.rb info 192.168.65.128:6379

 主从复制模型

    在原来的集群架构上 每个主节点增加3个从节点。防止其中一台主服务器挂掉了 导致集群 宕机 ,当主服务器挂了后 从服务器自动提升为主
集群版我们新增了redis4  redis5  redis6   分别对应 redis1  redis2  redis3 的从节点
1.分别修改从节点的redis.conf  指定失联时间 超过时间则为故障节点 一般设置为15秒
还有就是设置多个读 缓解读性能

2.启动所有redis节点

3.将从节使用redis-trip.rb加入到集群

./redis-trib.rb add-node 192.168.65.128:6382 192.168.65.128:6379    6382是从节点  对应主节点是6379  通过他可以找到6379的集群

4.查看集群中的节点

./redis-trib.rb info 192.168.65.128:6379

可以发现多了一个节点 并没有分配hash槽   上面这里只是将从节点加入到了集群 并没有指定主节点

5.使用redis-cli登陆从节点并使用指定他的主节点

./redis-cli -h 192.168.65.128 -p 6382

 输入cluster nodes  找到主节点的id

 6.通过id指定当前节点的主节点 cluster replicate e10dde558fb46fe8ae6fe66e54ef56032fbcce0f

 7.查看是否分配成功

各个集群节点都有一个从节点

8.其他2个从节点重复此操作 

9.最终的各个集群节点

10.使用kill杀死主节点进程

 

关闭6379

15秒后  配置文件配置的15秒。。可以发现6379的从节点切回了主节点

转载于:https://www.cnblogs.com/LQBlog/p/9214517.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值