redis-cluster分布式集群安装部署
一.服务器环境
1.1环境说明
此次演示是3台内网机器,开启6个redis单实例。其中每台机器上按照不同的端redis服务端口开启2个redis实例
环境:机器的内网IP地址:
3台服务器事前先关闭iptables ,开启时间同步,关闭selinux.
服务器的系统环境是centos6.5 X86_64位的 最小化安装
1.2安装redis服务,开启redis实例
以172.168.1.101机器为例来安装redis以及开启2个不同的redis实例
准备redis配置文件:
[root@master conf]# tail -11 /usr/local/redis/conf/10681.conf
[root@master conf]# tail -11 /usr/local/redis/conf/21683.conf
二、部署Ruby环境
/opt/redis-3.2.8/src/redis-trib.rb 这个命令是基于Ruby域名编写的,所以需要有Ruby环境才可以运行,所以要准备redis的Ruby环境。提示:没必要所有的redis实例的服务器都安装ruby环境,安装ruby环境是为了让某台服务器能够使用命令redis-trib.rb 来创建管理cluster集群
第一种方法
1.安装Ruby环境
2.添加淘宝的Ruby
3.安装curl和RVM
安装RVM
4.查看rvm库中已知的ruby版本
[root@git-server ~]# ruby --version
ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
5、查看当前的Ruby的版本
6、安装报错,于是换个redis的版本,安装成功
redis-trib.rb 出现如下帮助信息说明安装成功
提示第一种方法安装的Ruby环境,每次执行redis-trib.rb命令必须先在命令行加载 Ruby环境才可以
[root@git-server ~]#source/usr/local/rvm/scripts/rvm
第二种方法:
如果连接不上gem服务器安装,就手动下载并安装
需要手工下载并安装:
三、开启redis-cluster集群
将6台单独的redis实例加入到redis集群中
此处的–replicas 1 1代表是6个redis实例组建成一个3主3从的redis的分部署集群
提示:下面的命令在只在一台安装ruby环境的机器上运行
[root@git-server src]# ./redis-trib.rb create --replicas 1 172.168.1.104:10681 172.168.1.103:10681 172.168.1.101:10681 172.168.1.103:4683 172.168.1.101:4683172.168.1.104:4683
登录一个节点 查看redis节点的slot的分配情况
到此处集群创建完成
提示:
要求一开始不要配置cluster集群,
注意一:!!!直接开启6个redis实例便可以,千万不要画蛇添足,一开始就给给配置成3组redis的主从复制实例
注意二:可以给集群中的每个redis实例配置密码.但不是直接在redis实例配置文件中添密码后启动redis实例。另外,由于下面我们需要配置集群密码,故之前配置的 requirepass 先删掉,集群配置成功后,登录6个redis实例再对6个实例进行配置密码.
操作命令如下:
给集群设置密码后,但是在后续给就群添加新的节点时,会有问题的,所以不采用这个加密码的方式
注意三:在给6个redis组建集群时,同一机器上的redis实例不要分配主从到同一台机器上,也就是同一机器上的2个实例要和其他的机器上的redis实例交替开
类似于这样的组合:
172.168.1.104:10681 172.168.1.103:10681 172.168.1.101:10681 172.168.1.103:4683 172.168.1.101:4683 172.168.1.104:4683
参考博文:
https://blog.csdn.net/localhost01/article/details/71436801
http://www.656463.com/redis/ZZFVNb.htm
https://www.cnblogs.com/xifenglou/p/9173419.html
https://www.cnblogs.com/ivictor/p/9768010.html