redis与redis部署服务的安装
下载文件redis-3.0.0.tar.gz
一,redis服务的安装
1.环境配置
Redis是c开发的,因此安装redis需要c语言的编译环境,即需要安装gcc
查看是否安装gcc
gcc -v
如果没有gcc,则需要在线安装。命令如下
yum install gcc-c++
2.redis安装
1)上传redis压缩包到服务器
本文是通过MobaXterm进行操作的,如图
1.png 2)解压redis压缩包
tar zxf redis-3.0.0.tar.gz
3)进入redis-3.0.0目录并查看该目录下文件
2.png
4)制作编译redis源码
3.png
如下则编译成功
4.png
5)安装编译后的redis代码到指定目录,一般存放于/ usr / local下的redis目录,指令如下
make install PREFIX=/usr/local/redis
如下图则说明安装成功,此时查看/ user / local目录,可以发现多了一个redis文件夹
5.png
6)此时可以启动redis了,交替启动模式为前端启动,指令如下
./redis-server
6.png
7)前端启动的话,如果客户端关闭,redis服务也会停掉,所以需要改成后台启动redis
a)将redis解压文件里面的redis.conf文件复制到当前目录
cp ~/redis-3.0.0/redis.conf .
b)修改redis.conf文件,将守护进程否->将守护进程守护进程,这样便将启动方式修改为后台启动了
vim redis.conf
7.png
然后保存修改并退出,指令如下(四步操作)
Esc -> : -> wq -> Enter(回车)
3.启动redis(后台启动)
./redis-server redis.conf
8.png
4.测试
1)查看redis是否在运行
ps aux|grep redis
2)打开redis连接
./redis-cli 或redis-cli -c -p 6379
连接成功,如图所示
9.png
二,redis实施服务安装
1.创建重新分配目录
1)在usr / local目录下新建的redis-cluster目录,用于存放重新分配
10.png
2)复制/ usr / local / redis / bin目录下所有文件
把redis目录下的bin目录下的所有文件复制到/ usr / local / redis-cluster / redis01目录下,不用担心这里没有redis01目录,会自动创建的。
cp -r redis/bin/ redis-cluster/redis01
11.png
3)删除redis01目录下快照文件dump.rdb。
rm -rf dump.rdb
12.png
4)修改redis01目录下redis.conf配置文件
a)修改端口号为6380
13.png
b)将启用群集功能是的注释打开(大概632行)
c)将群集配置文件节点6379.conf的注释打开,并同时将群集配置文件节点6380.conf(大概640行)
14.png
d)打开bind注释,并修改为bind 192.168.0.40(这一步很重要,每个例程都要修改为对应的服务器的ip,下面127.0.0.1的地方都要替换192.168.0.40)
5)创建6个redis实例
a)将redis-cluster / redis01文件复制5份到redis-cluster目录下(redis02-redis06),创建6个redis实例,模拟Redis替换的6个实例。如下所示:
15.png
b)分别修改redis.conf文件端口号为6381-6385
2.启动所有redis例程
1)由于一个启动太麻烦,所以在这里创建一个批量启动redis中断的脚本文件startall.sh,文件内容如下:
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 ..
16.png
2)创建好启动脚本文件之后,需要修改该脚本的权限,使之能够执行,指令如下:
chmod +x startall.sh
3)执行startall.sh脚本,启动6个redis例程
注意:如果出现报“没有那个文件或目录行”的错误,有可能是因为文件格式错误。输入如下命令将文件dos格式转换成unix再启动
dos2unix startall.sh
17.png
4)查看redis是否启动
ps -ef|grep redis
18.png
3.安装Ruby环境
注意:redis需要Ruby版本大于2.2.2
下载文件ruby-2.3.0.tar.gz
1)若存在Ruby,则清除旧版Ruby
yum remove ruby
2)安装依赖
yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel
3)上传ruby-2.3.0到服务器,并解压
tar zxvf ruby-2.3.0.tar.gz
19.png
4)进入ruby-2.3.0目录下,执行以下命令
./configure –disable-install-rdoc
20.png
5)在ruby-2.3.0目录下,执行以下命令
make
make install
6)查看Ruby信息
ruby -v
21.png
7)要支持redis通信,需要下载redis相关包
gem install redis
22.png
4.完善实力
1)切换到redis解压的原始包src目录下
cd /root/redis-3.0.0/src/
2)执行以下命令
./redis-trib.rb create –replicas 1 192.168.0.40:6380 192.168.0.40:6381 192.168.0.40:6382 192.168.0.40:6383 192.168.0.40:6384 192.168.0.40:6385
–replicas 1 表示每个主数据库拥有从数据库个数为1。master节点不能少于3个,所以我们用了6个redis
23.png
3)遇到以下提示信息,手动输入是
24.png
5.测试
1)测试连接
./redis-cli -c -p 6380
25.png
2)查看所需信息
a.查看当前集群信息
cluster info
b.查看集群里有多少个节点
cluster nodes
26.png
6.至此linux下redis部署安装完毕
7.建造多台遇到的问题
配置文件
redis.conf
bind 127.0.0.1 机器ip
将绑定方式修改为:
bind 机器ip
开启集群的配置
#cluster-config-file nodes-6496.conf 将注释打开并将端口号修改,区别自动生成的文件
b问题
Redis集群端口为6491-6496 就需要打开6491-6496的端口号以及16491-16496的端口
c重启服务
重启服务需要将各个端口生成的rdb、nodes.conf 、aof文件删除
d验证
#./redis-cli -c -h 10.10.200.199 -p 6491
10.10.200.199:6491>cluster nodes
10.10.200.199:6491>cluster info
e查询键
查看key对应的slot
cluster keyslot key
查看slot和节点的对应关系
cluster slots
f关闭redis端口
./redis-cli -p 6379 shutdown
用kill -9 进程号,直接杀进程的方法会造成数据丢失
##后续### 1.redis-4.0.11默认会开启绑定127.0.0.1和写保护protected-mode是,配置的时候需要将bind 127.0.0.1注掉,改成protected-mode否