Linux服务器redis单机版和集群版搭建

1.linux下下载redis源码

Redis下载官网:Redis

Linux的下载命令,根据需要版本进行下载即可:

[root@localhost bin]# wget http://download.redis.io/releases/redis-4.0.8.tar.gz

2.linux下redis单机版搭建

         2.1 redis需要c语言的编译环境,如果没有gcc请在线安装,可用$gcc命令测试是否已经安装,如果没安装请执行$yum  install gcc-c++命令安装。

        2.2 上传redis源码到目录/root/myInstall/redisCluster/,执行解压命令$tar -zxvf redis-3.0.0.tar.gz

进入redis源码目录,cd /root/myInstall/redisCluster/redis-3.0.0,执行$make命令对redis源码进行编译。

       2.3 安装redis,执行命令$make install PREFIX=/usr/local/redis,即指定把redis安装到/usr/local/,此时可以看到/usr/local/redis文件下生成的bin目录下有redis服务端和客户端。即redis单个实例生成,其实PREFIX指向路径可以自定义。

前端启动:

       在bin目录下可以直接执行$./redis-server命令直接启动前端redis,但是此时会占用一个线程。

守护线程启动:

       把源码里面的/root/myInstall/redisCluster/redis-3.0.0/redis.conf文件复制到redis安装所在的bin目录下/usr/local/redis/bin目录下

命令:cp  /root/myInstall/redisCluster/redis-3.0.0/redis.conf ./

修改配置文件: daemonize修改为 yes

然后带配置文件启动:

[root@localhost bin]# ./redis-server  redis.conf

查看redis后程进程,可以看到默认端口就是6379已经启动。

[root@localhost bin]# ps aux|grep redis

Redis客户端的启动:

[root@localhost bin]# ./redis-cli

127.0.0.1:6379> set age 11

OK

通过ip端口的方式启动redis,其实跟上面方式是一样效果的,远程连接可用此方式:

[root@localhost bin]# ./redis-cli -h192.168.206.150 -p 6379

192.168.206.150:6379> get age

"11"

Redis正常关闭服务端:

192.168.206.150:6379> shutdown

not connected>

 

3.redis集群的搭建

 把单机版生成的/usr/local/redis/bin下的文件复制到redisCluster的7000目录下

[root@localhost bin]# cp  -r  /usr/local/redis/bin/* /root/myInstall/redisCluster/7000

若有dump.rdb脏数据,则删除

[root@localhost 7000]# rm  dump.rdb

修改配置文件

[root@localhost 7000]# vim redis.conf

把cluster-enabled yes的集群注释去掉,同时修改端口port 6379


 

把实例再复制5分,即另外5个结点到当前redisCluster目录

[root@localhost redisCluster]# cp -r 7000 ./7001

[root@localhost redisCluster]# cp -r 7000 ./7002

[root@localhost redisCluster]# cp -r 7000 ./7003

[root@localhost redisCluster]# cp -r 7000 ./7004

[root@localhost redisCluster]# cp -r 7000 ./7005

分别修改每一个redis的端口分别为7001,7002,7003,7004,7005其他配置类同第一个redis实例。

创建启动脚本:

[root@localhost redisCluster]# touch startRedisServer.sh

[root@localhost redisCluster]# vim startRedisServer.sh

写入脚本内容:

[root@localhost redisCluster]# vim startRedisServer.sh

cd 7000

./redis-server  redis.conf

cd ..

cd 7001

./redis-server  redis.conf

cd ..

cd 7002

./redis-server  redis.conf

cd ..

cd 7003

./redis-server  redis.conf

cd ..

cd 7004

./redis-server  redis.conf

cd ..

cd 7005

./redis-server  redis.conf

授权startRedisServer.sh并运行:

[root@localhost redisCluster]# chmod 777startRedisServer.sh

[root@localhost redisCluster]#./startRedisServer.sh

查看redis是各个实例是否启动成功:

[root@localhost redisCluster]# ps -aux|grep redis

root      4234  0.0  0.2 140848 10012 pts/0    Sl  2月08   0:04 src/redis-server127.0.0.1:21344

root      8741  0.0  0.1 140848 7480 ?        Ssl  00:59  0:00 ./redis-server *:7000 [cluster]

root      8875  0.0 0.1 140848  7476 ?        Ssl 01:02   0:00 ./redis-server *:7001[cluster]

root      8747  0.0  0.1 140848 7480 ?        Ssl  00:59  0:00 ./redis-server *:7002 [cluster]

root      8749  0.0  0.1 140848 7476 ?        Ssl  00:59  0:00 ./redis-server *:7003 [cluster]

root      8753  0.0  0.1 140848 7476 ?        Ssl  00:59  0:00 ./redis-server *:7004 [cluster]

root      8755  0.0  0.1 140848 7476 ?        Ssl  00:59  0:00 ./redis-server *:7005 [cluster]

root      8887  0.0  0.0 112680  980 pts/0    R+   01:03  0:00 grep --color=auto redis

 

4.redis集群ruby环境搭建

 4.1使用yum安装ruby

[root@localhost redisResource]# yum install ruby

[root@localhost redisResource]# yum install ruby gems

上传redis-3.0.0.gem(可以在redis源码中寻找),安装ruby脚本运行使用的包。

[root@localhost redisResource]# gem install redis-3.0.0.gem

Successfully installed redis-3.0.0

执行redis-trib.rb脚本

redis-3.0.0源码的src目录下找到redis-trib.rb脚本

[root@localhost redisCluster]# cd redis-3.0.0/

[root@localhost redis-3.0.0]# cd src

[root@localhost src]# ll *.rb

-rwxrwxr-x 1 root root 48141 4月   1 2015 redis-trib.rb

复制到集群所在的目录下

[root@localhost src]#cp *.rb  /root/myInstall/redisCluster/

执行redis-trib.rb脚本,(replicas 1是一个备份机的意思)

[root@localhost redisCluster]#./redis-trib.rb create --replicas 1 192.168.206.150:7000 192.168.206.150:7001192.168.206.150:7002 192.168.206.150:7003 192.168.206.150:7004192.168.206.150:7005

可以看到3个主机分别是7000,7001,7002,看到Can I set the above configuration? (type 'yes' to accept)输入yes,同意完成分配,看到[OK]All 16384 slots covered即集群搭建成功。

 

集群客户端的启动测试,其中最后-c是表示集群方式启动

[root@localhost redisCluster]#./7000/redis-cli -p 7000 -c

127.0.0.1:7000> set age 11

OK

127.0.0.1:7000>

[root@localhost redisCluster]#./7005/redis-cli -p 7005 -c

127.0.0.1:7005> get age

-> Redirected to slot [741] located at 192.168.206.150:7000

"11"

关闭集群脚本编写,在redisCluster文件夹下创建stopRedisServer.sh并授权,执行即可。

[root@localhost redisCluster]# vim stopRedisServer.sh

7000/redis-cli -p 7000 shutdown

7001/redis-cli -p 7001 shutdown

7002/redis-cli -p 7002 shutdown

7003/redis-cli -p 7003 shutdown

7004/redis-cli -p 7004 shutdown

7004/redis-cli -p 7005 shutdown




 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值