Redis集群配置(linux)

 *弄了一天,有问题直接问我。qq:137416943
 
1.redis集群的配置和简单使用
 
Redis集群配置
0.首先要配置环境:
0.1 安装c++
yum install gcc-c++
0.2 安装升级ruby到2.2.2以上
*放到末尾
0.3 安装gem( 运行redis-trib集群管理需要)
 
下载redis-4.0.1.gem(连接右下方):
————————————————————————————————————————————————————————————————
安装:
[root@VM_129_126_centos redis-cluster]#  gem install redis-4.0.1.gem
查看:
[root@VM_129_126_centos redis-cluster]# find / -name redis-4.0.1
安装不成功参考末尾的升级ruby方法
./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002
1.安装redis
$ wget http://download.redis.io/releases/redis-4.0.11.tar.gz
$ tar xzf redis-4.0.11.tar.gz
$ cd redis-4.0.11
编译:
$ make
编译到指定目录
# make install PREFIX=/usr/local/redis/redis
启动:
$ ./redis-server
使用指定配置启动:
$ ./redis-server ../redis.conf
后台启动:
$ ./redis-server ../redis.conf &
使用配置文件后台守护进程启动:
daemonize yes
 
2.配置redis集群
大体步骤:
安装redis以后编译到文件夹用来存放redis数据,编译出来的文件夹就是一个rediscluster(redis节点,或者说redis簇),多个redis簇构成redis集群。
然后使用redis-trib.rb创建集群,创建成功即可实现主从节点访问;
切换到redis目录
# cd /usr/local/redis/redis-4.0.11/
编译到指定目录
# make install PREFIX=/usr/local/redis/redis
编译后的文件夹
bin目录,redis.conf从源文件夹下拷贝过来
修改配置文件
# cd redis/bin
# vi redis.conf
 
###############     配置文件redis.conf (以下为需要的基础配置) ####################
#绑定ip(这里是本地配置,其他服务器配置对应的ip)
bind 127.0.0.1
#端口
port 6379
#后台守护启动
daemonize yes
#开启aof模式
appendonly yes
#开启集群管理
cluster-enabled yes
#节点响应超时时间
cluster-node-timeout 5000
###################################    配置文件END    ########################
 
 
创建集群文件夹:
# cd /usr/local/
# mkdir redis-cluster
 
拷贝到集群目录,每个目录为一个redis节点,包含三个主服务器三个从服务器的六个节点集群
# cd redis-cluster/
# cp -r /usr/local/redis/redis redis7000
# cp -r /usr/local/redis/redis redis7001
# cp -r /usr/local/redis/redis redis7002
# cp -r /usr/local/redis/redis redis7003
# cp -r /usr/local/redis/redis redis7004
# cp -r /usr/local/redis/redis redis7005
上面脚本和rb文件是后来创建的;
修改每个节点的port为对应端口
port 7000
port 7001
port 7002
……
写脚本,方便统一启动:
# vim start-all-redis.sh
脚本:
#!/bin/bash
cd /usr/local/redis-cluster/redis7000/bin
./redis-server redis.conf
cd /usr/local/redis-cluster/redis7001/bin
./redis-server redis.conf
cd /usr/local/redis-cluster/redis7002/bin
./redis-server redis.conf
cd /usr/local/redis-cluster/redis7003/bin
./redis-server redis.conf
cd /usr/local/redis-cluster/redis7004/bin
./redis-server redis.conf
cd /usr/local/redis-cluster/redis7005/bin
./redis-server redis.conf
修改脚本权限:
# chmod u+x start-all-redis.sh
查看:
# ll     (ls -l"的别名,两个小写的L)
执行
# ./start-all-redis.sh
启动成功:
查看端口
安装ruby:
安装之前下载的redis.gem文件
这里如果提示redis requires ruby version 2.2.2,请参照文末尾的升级方法:
然后拷贝redis-trib.rb到目录集群目录下(方便使用):
查看在哪:
拷贝:
# cp /usr/local/redis/redis-4.0.11/src/redis-trib.rb /usr/local/redis-cluster/
查看之前启动的集群
# ps aux | grep redis
使用redis-trib.rb创建:
redis-trib位于srcRedis源码目录中,需要安装redisgem才能运行redis-trib,安装redisgem又需要ruby在2.2.2以上版本,所以需要升级ruby
[root@VM_129_126_centos redis-cluster]# ./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
这里使用的命令是create,因为我们要创建一个新的集群。该选项--replicas 1意味着我们希望每个创建的主服务器都有一个从服 其他参数是我要用于创建新集群的实例的地址列表
[OK] All 16384 slots covered.
创建成功!
 
 
使用测试:
 
cd /usr/local/redis-cluster/redis7000
./redis-trib.rb create --replicas 1 119.29.17.188:7006 47.98.50.21:7000
 
 
#cluster nodes 查看cluster信息:
# ./redis-cli -p 7000 cluster nodes 
启动
这里看到端口7000是主节点,端口7002是从节点,数据是可以互相访问的
./redis-cli -c -p 7002
其中如果主节点宕机了,从节点就会自动切换为主节点,然后继续提供服务。等之前的主节点恢复以后它又会变成主节点的父节点。
 
-c访问其他节点
./redis-cli -p 7003 -c
 
 
 
 ======================================================================= 0.2 安装升级ruby到2.2.2以上 =====================================================================================
 
redis requires Ruby version >= 2.2.2.
 
解决:
0.2 安装升级ruby到2.2.2以上(redis requires ruby version 2.2.2的解决方案)
# yum install ruby
安装redis gem(错误,提示ruby需要2.2.2.以上)
CentOS7 yum库中ruby的版本支持到 2.0.0,可gem 安装redis需要最低是2.2.2,采用rvm来更新ruby:
安装RVM:
//具体RVM安装命令地址: http://rvm.io/
[root@linux ~]# gpg --keyserver  hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
[root@VM_129_126_centos redis-cluster]# gpg --keyserver  hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
下载安装:
[root@VM_129_126_centos redis-cluster]# curl -sSL  https://get.rvm.io | bash -s stable
查看rvm安装情况:
[root@VM_129_126_centos redis-cluster]# find / -name rvm -print
指定资源目录
[root@VM_129_126_centos redis-cluster]# source /usr/local/rvm/scripts/rvm
查看rvm库中已知的ruby版本
[root@VM_129_126_centos redis-cluster]# rvm list known
 
选择Ruby的版本进行安装,中间下载二进制文件需要时间
[root@VM_129_126_centos redis-cluster]# rvm install 2.5.1
 
使用并且设置默认的ruby版本,使用-version查看版本信息:
[root@VM_129_126_centos redis-cluster]# rvm use 2.5.1 --default
看到版本说明成功:
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
然后就可以安装redis gem了
gem install redis-4.0.1.gem
卸载已知版本:
[root@VM_129_126_centos redis-cluster]# rvm remove 2.5.1 
 
 
 

猜你喜欢

转载自www.cnblogs.com/meijsuger/p/9461179.html