由于最近在linux环境搭建redis集群,系统是新安装的,比较干净,在安装过程中遇到很多问题,但最后都解决了,来给大家分享下,第一次写,不好请见谅。
版本信息
linux系统:ubuntu-14.04.5_x64
redis:redis-4.0.1
1.首先下载redis安装包redis-4.0.1.tar.gz,解压,编译
test@test-virtual-machine:/develop$ sudo tar -zxvf redis-4.0.1
test@test-virtual-machine:/develop$ cd /develop/redis-4.0.1/
test@test-virtual-machine:/develop/redis-4.0.1$ sudo make
2.建立redis集群目录
test@test-virtual-machine:/develop/redis-4.0.1$ sudo mkdir cluster-redis
test@test-virtual-machine:/develop/redis-4.0.1$ cd cluster-redis/
3.建立6个redis节点端口文件夹6000-6005 与日志目录文件
test@test-virtual-machine:/develop/redis-4.0.1/cluster-redis$ sudo mkdir 6000 6001 6002 6003 6004 6005
test@test-virtual-machine:/develop/redis-4.0.1/cluster-redis$ cd logfile/
test@test-virtual-machine:/develop/redis-4.0.1/cluster-redis/logfile$ sudo touch log.log
4.将redis-4.0.1/redis.conf复制到cluster-redis/6000目录下
test@test-virtual-machine:/develop/redis-4.0.1/cluster-redis/logfile$ cd ..
test@test-virtual-machine:/develop/redis-4.0.1/cluster-redis$ cd ..
test@test-virtual-machine:/develop/redis-4.0.1$ sudo cp redis.conf cluster-redis/6000/
5.修改6000文件夹redis.conf以下内容
test@test-virtual-machine:/develop/redis-4.0.1$ sudo vi cluster-redis/6000/redis.conf
bind 0.0.0.0
daemonlze yes
logfile "/develop/redis-4.0.1/cluster-redis/logfile/log.log"
appendonly yes
cluster-enabled yes
cluster-config-file nodes-6000.conf
cluster-node-timeout 15000
6.改完后,将6000文件夹下redis.conf分别复制到6001 6002 6003 6004 6005文件夹一份
7.复制完毕后,分别修改6001–6005五个文件夹下redis.conf文件port、cluster-config-file两个属性,将6000改为所对应的目录端口号
例如:
(1).修改6001文件夹下redis.conf修改如下
sudo vi 6001/redis.conf
port 6001
cluster-config-file nodes-6001.conf
(2).修改6002文件夹下redis.conf修改如下
sudo vi 6002/redis.conf
port 6002
cluster-config-file nodes-6002.conf
8.都修改完毕后,执行redis的src目录下redis-trib-rb出现如下页面,那么没问题,忽略下面9-12点,直接进入第13点
test@test-virtual-machine:/develop/redis-4.0.1/cluster-redis$ cd ..
test@test-virtual-machine:/develop/redis-4.0.1$ ./src/redis-trib.rb
9.如果提示以下错误,那么需要安装ruby
/user/bin/env: ruby 没有那个文件或目录
这里需要注意,安装的ruby版本必须是2.2.2以上版本
执行以下命令,来安装高版本的ruby,我安装的2.3版本的
sudo apt-get -y install software-properties-common
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get -y install ruby2.3
sudo apt-get install ruby2.3-dev
不要用 sudo apt-get install ruby 来安装ruby,因为这样默认安装的1.9版本的,后面执行第11点安装redis第三方接口会出现下面ruby版本过低错误。
test@test-virtual-machine:/develop/redis-4.0.1/src$ gem install redis
Fetching: redis-4.0.1.gem (100%)
ERROR: Error installing redis:
redis requires Ruby version >=2.2.2.
10.安装完毕ruby2.3版本后,再次运行./redis-trib-rb,会出现以下错误,需要安装第三方接口
test@test-virtual-machine:/develop/redis-4.0.1$ ./src/redis-trib.rb
/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in 'require': cannot load such file -- redis (LoadError)
from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:;in 'require'
from ./redis-trib.rb:25:in ''
11.需要安装redis第三方接口
test@test-virtual-machine:/develop/redis-4.0.1$ sudo gem install redis
12.再次运行./redis-trib-rb出现下图,说明安装没有问题
14.建立redis集群
test@test-virtual-machine:/develop/redis-4.0.1$ cd src/
test@test-virtual-machine:/develop/redis-4.0.1/src$ ./redis-trib.rb create --replicas 1 192.168.241.133:6000 192.168.241.133:6001 192.168.241.133:6002 192.168.241.133:6003 192.168.241.133:6004 192.168.241.133:6005
15.查看redis集群
test@test-virtual-machine:/develop/redis-4.0.1/src$ ./redis-trib.rb check 192.168.241.133:8080
至此,搭建redis集群就完成了,有什么地方不明白的可以给我留言,感谢各位。