redis集群搭建,三台服务器,6个redis服务

三台服务器搭建redis集群
安装redis
1. 安装redis 下载redis-4.0.6.tar.gz
2. 上传至/home路径,解压:tar –xvf redis-4.0.6.tar.gz
3. 进入目录 cd  /home/redis-4.0.6
4. 编译安装 make  会在/usr/local/bin/生成连接


安装ruby环境
1. 运行ruby –v查看ruby是否安装
2. 若已安装但版本低于2.2.2则卸载重装 yum remove ruby
3. 下载ruby
redis4要求ruby版本高于2.2.2 不能用yum安装(此时最新的只到2.0)
4. 下载ruby-2.2.7.tar.gz
5. 上传至/home路径,解压:tar –xvf ruby-2.2.7.tar.gz
6. 进入目录 cd  /home/ ruby-2.2.7
7. ./configure
8. make && make install
9. gem install redis

配置集群
1. 配置服务,一台机器启动两个redis端口为6379和7379
2. 每台机器创建路径/home/redis-cluster/6379和/home/redis-cluster/7379
3. 拷贝6个redis.conf修改如下配置,并分别放在上面第二步的路径中
port 9001(每个节点的端口号)
daemonize yes(开启后台启动)
bind 192.168.1.1(绑定当前机器 IP)
dir /home/redis-cluster/6379/(数据文件存放位置)
pidfile /var/run/redis_6379.pid(pid 6379和port要对应)
cluster-enabled yes(启动集群模式)
cluster-config-file nodes.conf(集群配置会放在dir下,集群失败需要删除重启redis)
cluster-node-timeout 15000
appendonly yes
4. 每台机器分别启动redis:
redis-server  /home/redis-cluster/6379/redis.conf
redis-server  /home/redis-cluster/7379/redis.conf

5. 设置集群软连接 ln -s /root/redis-4.0.6/src/redis-trib.rb  /usr/local/bin/redis-trib.rb
6. 启动集群:redis-trib.rb create --replicas 1 192.168.1.1:6379 192.168.1.1:7379 192.168.1.2:6379 192.168.1.2:7379 192.168.1.3:6379 192.168.1.3:7379
注:--replicas 1是指master设置一个子节点


7. 测试
Redis-cli  –c  -p 6379
注:-c是指集群方式连接
8. 遇到的错误:

1. 配置完所有主节点后,报" ERR Invalid node address specified"
由于redis-trib.rb 对域名或主机名支持不好,故在创建集群的时候要使用ip:port的方式
redis-trib.rb create ip1:port1 ip2:port2 ip3:port3
2. 创建集群时报某个err slot 0 is already busy (redis::commanderror)
这是由于之间创建集群没有成功,需要将nodes.conf和dir里面的文件全部删除(注意不要删除了redis.conf)
3. 创建集群时一直处于"Waiting for the cluster to join...................................."的状态
这个问题原因不知,但解决方法是在redis.conf文件中把bind 127.0.0.1本地环回口改为物理接口.
4. 安装ruby redis时长时间没响应
这是由于天朝网络,解决办法是改ruby源(请自行baidu)或手动安装

相关推荐