首先安装redis-3.0.0
安装步骤如下:
- 先将编译环境搭建好:yum install gcc-c++
- 将redis源码包上传至linux
- 解压缩redis-3.0.0
- 编译。进入redis-3.0.0目录。 make
- 安装。make install PREFIX=/usr/local/redis(PREFIX参数指定redis的安装目录。一般软件安装到/usr目录下)
- 一般这个时候已经可以启动redis,但是启动的redis是前台启动,所以这里我们可以改变其启动方式
- 将解压缩后的文件redis-3.0.0下的redis.conf复制到redis的bin中
[root@localhost redis-3.0.0]# cp redis.conf /usr/local/redis/bin/
修改配置文件 /daemonize可以进行搜索
8.然后就可以启动了
[root@localhost bin]# ./redis-server redis.conf
9.使用redis-cli进入数据库
[root@localhost bin]# ./redis-cli
默认连接localhost运行在6379端口的redis服务。
[root@localhost bin]# ./redis-cli -h 192.168.25.153 -p 6379
-h:连接的服务器的地址
-p:服务的端口号
关闭redis:[root@localhost bin]# ./redis-cli shutdown
如上就是redis的安装
下面就是伪分布式集群的搭建(伪分布式需要6个redis实例,)实例就是上面中的的make install到某目录下六份,当然这样子会有多余的目录,为了避免目录过多,我们选择直接将bin目录拷贝到rediscluster目录下六份即可,下面描述具体步骤
第一步:创建6个redis实例,每个实例运行在不同的端口。需要修改redis.conf配置文件。配置文件中还需要把cluster-enabled yes前的注释去掉。
在redis同级下创建rediscluster文件 然后将redis/bin 分别重命名redis01.conf复制到/rediscluster/redis01
cp -r redis01 redis02
一共需要六份
修改conf port分别为7000 7001 7002 7003 7004 7005
去掉cluster-enabled yes的注释
去掉cluster-config-file nodes-6379.conf 的注释,并把6379改为7000-7005[很重要]
第二步:启动每个redis实例。可以使用批处理一次性启动,如下图创建一个startall.sh文件
touch start.sh #创建test.sh文件
vi test.sh #编辑test.sh文件
加入内容
#!/bin/bash
cd redis01
./redis-server redis.conf
cd ..
cd redis02
./redis-server redis.conf
cd ..
cd redis03
./redis-server redis.conf
cd ..
cd redis04
./redis-server redis.conf
cd ..
cd redis05
./redis-server redis.conf
cd ..
cd redis06
./redis-server redis.conf
cd ..
chmod u+x start.sh #给test.sh可执行权限
保存退出。
然后./start.sh启动如下
注:这一过程中可能会有端口不是我们想要的7000-7006,如果出现其他端口,则代表在该conf配置文件中,我们没有修改成功或者配置了多个port ,仔细检查下即可发现错误.
第三步:这个时候你需要将redis-3.0.0下src下的 redis-trib.rb (make操作后在src目录下)拷贝过来cp redis-trib.rb /usr/local/redis-cluster
然后搭建ruby的运行环境
yum install ruby
yum install rubygems
上传文件redis-3.0.0.gem到服务器,然后敲下面命令解压(文件链接在文末)
[root@GodIsPY ~]# gem install redis-3.0.0.gem
第四步:使用ruby脚本搭建集群(ip为虚拟机代表的ip)
./redis-trib.rb create --replicas 1 192.168.8.101:7000 192.168.8.101:7001 192.168.8.101:7002 192.168.8.101:7003 192.168.8.101:7004 192.168.8.101:7005
此时集群搭建成功
Connecting to node 192.168.8.101:7000: OK
Connecting to node 192.168.8.101:7001: OK
Connecting to node 192.168.8.101:7002: OK
Connecting to node 192.168.8.101:7003: OK
Connecting to node 192.168.8.101:7004: OK
Connecting to node 192.168.8.101:7005: OK
Using 3 masters:
192.168.8.101:7000
192.168.8.101:7001
192.168.8.101:7002
Adding replica 192.168.8.101:7003 to 192.168.8.101:7000
Adding replica 192.168.8.101:7004 to 192.168.8.101:7001
Adding replica 192.168.8.101:7005 to 192.168.8.101:7002
M: 5cb389c576e9b49492a2c6e16badf7ffe898c9ea 192.168.8.101:7000
slots:0-5460 (5461 slots) master
M: 13c24517ee032bba148071ea4886e29323b0496d 192.168.8.101:7001
slots:5461-10922 (5462 slots) master
M: 5e3e4e653006632fa2ea8dc8bd5aa62d5495aeac 192.168.8.101:7002
slots:10923-16383 (5461 slots) master
S: 80707523352027e17b7a7ae7cfc087ba67e187d2 192.168.8.101:7003
replicates 5cb389c576e9b49492a2c6e16badf7ffe898c9ea
S: 5cb389c576e9b49492a2c6e16badf7ffe898c9ea 192.168.8.101:7004
replicates 13c24517ee032bba148071ea4886e29323b0496d
S: 5cb389c576e9b49492a2c6e16badf7ffe898c9ea 192.168.8.101:7005
replicates 5e3e4e653006632fa2ea8dc8bd5aa62d5495aeac
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
提示最后搭建成功
Can I set the above configuration? (type 'yes' to accept): yes
接下来使用redis-cli 来操作集群
Redis-cli连接集群。
[root@LENOVO01 redis01]# ./redis-cli -p 7001 -h LENOVO01 -c
LENOVO01:7001> set name 'andy'
-> Redirected to slot [5798] located at 192.168.8.101:7002
OK
192.168.8.101:7002> get name
"andy"
结束任务
可以使用批处理一次性结束,如下图创建一个end.sh文件
touch end.sh #创建test.sh文件
vi test.sh #编辑test.sh文件
加入内容
#!/bin/bash
cd redis01
./redis-cli -p 7000 shutdown
cd ..
cd redis02
./redis-cli -p 7001 shutdown
cd ..
cd redis03
./redis-cli -p 7002 shutdown
cd ..
cd redis04
./redis-cli -p 7003 shutdown
cd ..
cd redis05
./redis-cli -p 7004 shutdown
cd ..
cd redis06
./redis-cli -p 7005 shutdown
cd ..
chmod u+x end.sh #给test.sh可执行权限
保存退出。
文中安装所用到的文件下载地址:https://download.csdn.net/download/haobindayi/10641183