redis集群搭建(个人测试)

1.安装redis

解压redis-3.0.5.tar.gz
$ tar -zxvf redis-3.0.5.tar.gz

进入到redis-3.0.5目录,执行make命令

$ make

redis.conf是redis的主要配置文件,在src/下redis-server,redis-cli是redis的服务端和客户端

2.启动多个实例

为了方便,新建redis目录,将redis-3.0.5移动到redis下,并重命名redis-6379

$ mkdir redis
$ mv redis-3.0.5  ./redis/redis-6379

再在redis目录下,创建文件夹redis-6380,redis-6381,redis-6382,redis-6383,redis-6384,在每个目录下,创建logs文件夹

将redis-6379下的redis.conf都拷贝一份到这五个目录下

$ cp ./redis-6379/redis.conf  ./redis-6380/redis-6380.conf

修改redis.conf文件,按照下面的配置,配置6379,6380,6381,6382,6383,6384六个端口

daemonize yes                                            #设置redis后台启动
pidfile /home/icore/redis/redis-6380/redis_6380.pid      #redis的pid存放文件,集群时,每个redis的pid必须不同
port 6380                                                #redis的端口号
bind 127.0.0.1
logfile /home/icore/redis/redis-6380/redis_6380.log      #redis的日志文件
dir /home/icore/redis/redis-6380/logs/                   #redis的数据文件存放路径
appendonly yes                                           #开启redis的aof
cluster-enabled yes                                      #开启集群配置
cluster-config-file nodes-6380.conf                      #redis的集群节点配置
cluster-node-timeout 15000                               #redis的节点访问超时时间

启动实例

$ ./redis-6379/src/redis-server  ./redis-6379/redis.conf
$ ./redis-6379/src/redis-server  ./redis-6380/redis-6380.conf
$ ./redis-6379/src/redis-server  ./redis-6381/redis-6381.conf
$ ./redis-6379/src/redis-server  ./redis-6382/redis-6382.conf
$ ./redis-6379/src/redis-server  ./redis-6383/redis-6383.conf
$ ./redis-6379/src/redis-server  ./redis-6384/redis-6384.conf

启动成功后,查看进程

$ netstat -ntlp | grep redis

3.集群环境配置

Redis3.0以上的集群方式是通过redis安装目录下的./src/redis-trib.rb脚本搭建,这个脚本使用ruby编写的,尝试运行

$ ruby ./redis-6379/src/redis-trib.rb

如果报错,说明需要安装ruby环境

以下环境安装,需要切换到管理员账号,并且连接外网

yum -y install ruby ruby-devel rubygems rpm-build
# gem install redis

此处如果报redis requires Ruby version >= 2.2.2. 错误,需要升级ruby版本

安装curl

# yum install curl

安装rvm

# curl -L get.rvm.io | bash -s stable

此处可能会报错,根据提示,执行

# gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

再重新执行,安装成功

# curl -L get.rvm.io | bash -s stable

然后,source环境,让rvm可用

# source /usr/local/rvm/scripts/rvm

查看ruby可用版本,选择一个版本安装

# rvm list known
# rvm install 2.4.4

此处可能会报错,curl: (35) SSL connect error,需要升级网络安全服务

# yum update nss

重新执行,即可升级ruby版本成功

# rvm install 2.4.4

安装gem redis接口, 成功

# gem install redis

安装rubygems, 成功

# yum install -y rubygems

4.开启集群

# ruby ./redis-6379/src/redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384

--replicas 1表示为集群的master节点创建1个副本。那么6个实例里,有三个master,有三个是slave。

后面跟上6个实例就好了,形式就是ip:port

5.验证集群状态

登录集群客户端  -c标识以集群方式登录

$ ./redis-6379/src/redis-cli -c -h 127.0.0.1 -p 6379
127.0.0.1:6379> cluster info
127.0.0.1:6379> cluster nodes

猜你喜欢

转载自blog.csdn.net/big_ananas/article/details/80979968