天天看点

redis 集群搭建碰到的问题

make PREFIX=/usr/local/redis install

把编译好的redis 安装到指定目录下。

redis.conf文件从源码目录拷贝到/usr/local/redis(安装目录)下。

redis:address already in use 解决方法:

1.ps -ef |grep -i redis

2.kill -9 进程ID。

3.启动redis-server

redis 前台运行改成后台运行

daemonize no->daemonize yes

redis集群环境初始条件:

yum install ruby

gem install redis

 执行gem  install redis 提示ruby版本过低的解决方法。

 ~]# 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    //查看安装版本

然后执行gem install redis就完成了

ERROR: Could not find a valid gem 'redis' (>= 0), here is why:

Unable to download data from https://rubygems.org/ - timed out (https://api.rubygems.org/specs.4.8.gz)的解决方法:

这是因为国内的GREATE WALL的问题,需要替换gem 镜像源地址:

https://gems.ruby-china.com,这里可以找到答案。

然后就可以执行gem install redis -V 了,-V是Verbose的缩写,可以查看安装过程。

redis.conf 文件中启用集群cluster-enabled yes (默认为不启用)。

新建一个目录,目录里面6个子文件夹对应6个集群,分别命名为当前REDIS的端口号从9001到9006.,并把之前的bin文件夹复制6份到这6个文件夹里面,修改每个文件夹的redis.conf文件的默认端口(默认为6379)

cp -r /study/redis-installed/bin 9001

cp -r /study/redis-installed/bin 9002

......

进入这6个目录,然后分别执行 ./redis.server ./redis.conf执行这6个命令,启动6台redis服务器,并用ps -aux|grep redis查看redis服务的启动情况。

root 20927 0.0 0.1 153888 2884 ? Ssl 10:42 0:00 ./redis-server 127.0.0.1:6379 [cluster]

root 21111 0.1 0.1 153888 2880 ? Rsl 10:44 0:00 ./redis-server 127.0.0.1:9001 [cluster]

root 21225 0.1 0.1 153888 2900 ? Rsl 10:45 0:00 ./redis-server 127.0.0.1:9002 [cluster]

root 21323 0.0 0.1 153888 2888 ? Ssl 10:46 0:00 ./redis-server 127.0.0.1:9003 [cluster]

root 21369 0.0 0.1 153888 2884 ? Rsl 10:46 0:00 ./redis-server 127.0.0.1:9004 [cluster]

root 21417 0.0 0.1 153888 2888 ? Rsl 10:46 0:00 ./redis-server 127.0.0.1:9005 [cluster]

root 21457 0.0 0.1 153888 2888 ? Ssl 10:46 0:00 ./redis-server 127.0.0.1:9006 [cluster]

root 21511 0.0 0.0 112716 940 pts/1 R+ 10:47 0:00 grep --color=auto redis

服务的启动情况如上面所示,表名服务已经启动。

因为我用的5.0以上的redis,所以采用下面的方式把上述6台机器加入到一个集群中:

redis-cli --cluster create 127.0.0.1:9001 127.0.0.1:9002 127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005 127.0.0.1:9006 --cluster-replicas 1

然后用redis-cli连接到集群中的任意一台机器:

./redis-cli -c -h 127.0.0.1 -p 9002,并用cluster nodes 查询集群节点:

127.0.0.1:9002> cluster nodes

98450c9595407666abedd8f75e3c51620ce18c6d 127.0.0.1:9005@19005 slave 7bbc29dbe82ae9fe427a8116ace2c1c838a91808 0 1553828724441 5 connected

7bbc29dbe82ae9fe427a8116ace2c1c838a91808 127.0.0.1:9001@19001 master - 0 1553828723437 1 connected 0-5460

22b89c572209a6ea974763f02952ae80e45336d5 127.0.0.1:9003@19003 master - 0 1553828721428 3 connected 10923-16383

1fd885060f4333afe6198e3aec0eaab6c74ce4e0 127.0.0.1:9006@19006 slave b13147c4d1fd92379cd329904943b937108fab8c 0 1553828722433 6 connected

0ff92f832c69498c4c7fb74fcfdd5d7919c9460f 127.0.0.1:9004@19004 slave 22b89c572209a6ea974763f02952ae80e45336d5 0 1553828723000 4 connected

b13147c4d1fd92379cd329904943b937108fab8c 127.0.0.1:9002@19002 myself,master - 0 1553828722000 2 connected 5461-10922

redis 集群搭建碰到的问题

作者:

KMSFan

出处:http://www.cnblogs.com/kmsfan

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

欢迎大家加入KMSFan之家,以及访问我的优酷空间!