创建集群,将这几个节点加入集群。首先进入redis-trib.rb所在目录
进入/usr/local/redis/redis-4.0.14/src/目录
cd /usr/local/redis/redis-4.0.14/src/
执行如下命令:
./redis-trib.rb create --replicas 1 192.169.1.86:7001 192.169.1.86:7002 192.169.1.86:7003 192.169.1.86:7004 192.169.1.86:7005 192.169.1.86:7006
【备注:192.169.1.86是redis所在服务器ip,注意这个ip不能写127.0.0.1,否则只有本机才能连接】
输入yes 回车 ,redis-trib.rb 开始执行 节点握手 和 槽分配 操作,如图所示加入集群成功
说明:M表示是主节点,S表示是从节点】
执行 集群检查,检查各个 redis 节点占用的 哈希槽(slot)的个数以及 slot 覆盖率。16384 个槽位中,主节点Redis7001、主节点Redis7002 和,主节点Redis7003 分别占用了 5461、5462 和 5461 个槽位。
连接集群测试
连接命令:redis-cli -p 其中一个节点的端口 -h 其中一个节点的ip -c
[备注:一定要有-c , -c表示以集群方式连接,没有-c就是单点连接了]
并往redis存一个值进行测试:set a a ,如下图表示成功
3.3 集群环境中每个节点加入密码加入密码有两种方式:
u 方法一:修改所有Redis集群中的redis.conf配置文件
masterauth 123456 //设置master密码,是为了Salve能够连接上Master requirepass 123456 //设置Redis访问请求密码u 方法二:进入各个Redis集群中的实时配置
./redis-cli -c -p 7001 //分别进入各个Redis片机进行各自设置 config set masterauth 123456 config set requirepass 123456 config rewrite注意:各个节点密码都必须一致,否则Redirected就会失败。推荐使用第一种方式。
先关闭所有的redis服务,使用命令 redis-cli -p 7001 shutdown依次将redis实例关闭。经过上面的步骤其实已经生成了相应的节点信息文件(nodes.conf)和数据信息文件(appendonly.aof,dump.rdb)。将所有redis7001 到redis7006的文件夹下的这三个文件都删除,然后修改redis.conf添加密码如图所示
然后找到client.rb文件(可以使用 find / -name “client.rb”命令)然后修改password,如图
然后使用脚本启动所有的集群节点。
再次运行命令 ./redis-trib.rb create --replicas 1 192.169.1.21:7001 192.169.1.21:7002 192.169.1.21:7003 192.169.1.21:7004 192.169.1.21:7005 192.169.1.21:7006 创建集群。
测试集群
使用命令 redis-cli -c -p 7001 设置一个set name song,会提示需要认证 输入auth “123456”即可 ,然后再次set name song 会redirected 到7002,也需要密码 ,当然可以直接再次使用 auth “123456”,这样显得有些繁琐,可以直接使用命令,redis-cli -c -p 7001 -a 123456连接(-a 相当于是输入密码验证),这样就可以直接跳转。如图