redis之单机多节点集群

一、创建六个redis实例:

1.在/usr/local下创建redis_cluster目录

2.把redis目录下的bin目录下的所有文件复制到/usr/local/redis-cluster/redis01目录下

cp -r redis/bin/ redis-cluster/redis01

3.将redis.conf复制到bin目录下:

4.修改配置文件redis.

先复制一份配置文件到7001目录下

修改配置文件:

port 7001 //六个节点配置文件分别是7001-7006

daemonize yes  //redis后台运行

pidfile /var/run/redis_7001.pid  //pidfile文件对应7001-7006

cluster-enabled yes //开启集群

cluster-config-file nodes_7001.conf  //保存节点配置,自动创建,自动更新对应7001-7006

cluster-node-timeout 5000  //集群超时时间,节点超过这个时间没反应就断定宕机

appendonly yes //存储方式,aof,将写操作记录保存到日志中

bind 192.168.40.142

5.将redis-cluster/redis01文件复制5份到redis-cluster目录下(redis02-redis06),创建6个redis实例,模拟Redis集群的6个节点。然后将其余5个文件下的redis.conf里面的端口号分别修改为7002-7006。分别如下图所示:

启动六个节点的redis

 ./redis01/redis-server redis01/redis.conf

 ./redis02/redis-server redis02/redis.conf

 ./redis03/redis-server redis03/redis.conf

 ./redis04/redis-server redis04/redis.conf

 ./redis05/redis-server redis05/redis.conf

 ./redis06/redis-server redis06/redis.conf

查看redis进程:

表示创建成功

二、创建集群

1.安装ruby

redis官方提供了redis-trib.rb工具,第一步已经放到bin下:

但是在使用之前,需要安装ruby,以及redis和ruby连接

yum -y install ruby ruby-devel rubygems rpm-builder

gem install redis   连接redis

连接redis时,遇到报错:

[root@localhost 7006]# gem install redis
YAML safe loading is not available. Please upgrade psych to a version that supports safe loading (>= 2.0).

Fetching: redis-4.1.4.gem (100%)
ERROR:  Error installing redis:
        redis requires Ruby version >= 2.3.0.

原因是ruby的版本太低,要求2.3.0以上

解决办法:

换yum源安装

~]# yum install centos-release-scl-rh    //会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源

~]# yum install rh-ruby23  -y    //直接yum安装即可  

~]# scl  enable  rh-ruby23 bash    //必要一步

~]# ruby -v    //查看安装版本

再次连接redis,成功

上一步中已经把ruby工具所需要的运行环境和ruby包安装好了,注意5.0之后,不用redis-trib.rb创建集群

2.创建集群:

 ./redis-cli --cluster create --cluster-replicas 1 192.168.40.142:7001 192.168.40.142:7002 192.168.40.142:7003 192.168.40.142:7004 192.168.40.142:7005 192.168.40.142:7006

代表为每个创建的主服务器节点创建一个从服务器节点

三、验证集群:

1)连接任意一个客户端即可:

./redis-cli -c -a xxx -h 192.168.5.100 -p 8001

 提示:-a访问服务端密码,-c表示集群模式,指定ip地址和端口号

./redis-cli -c -h 192.168.40.142 -p 7001

连接7002的redis服务器,创建name

在7001中访问name:

重定向到了7002

2)进行验证: cluster info(查看集群信息)、cluster nodes(查看节点列表)

关闭集群中的一个主节点:

./redis-cli -a xxx -c -h 192.168.40.142 -p 7001 shutdown

 我们发现原来的从节点升为主节点

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值