Redis 是一个开源的、使用C语言编写、支持网络.可基于内存亦可持久化的日志型, key-value(键值对)数据库,是目前分布式架构中不可或缺的一环。
相比于传统的关系型数据库,Redis具有以下几个优点。
1.具有极高的数据读写速度.数据读取的速度最高可达到110000次/s.数据写入速度最高可
达到81000次/s。
2.支持丰富的数据类型,不仅仅支持简单的key-value数据类型,还支持Strings,Lists、Hashes,
Sets及Ordered Sets等数据类型操作。
3.支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使
用。
笔者将以两台linux虚拟机为实验环境搭建redis-cluster群集,每台linux服务器上部署三个redis节点
一.在两台linux虚拟机上部署redis数据库服务
1.在两台虚拟机安装部署redis
将事先准备好的redis源码包下载到linux的/root目录,编译安装,出现以下字样安装成功。
[root@localhost ~]# tar -zxf redis-3.2.9.tar.gz -C /usr/src
[root@localhost ~]# cd /usr/src
[root@localhost src]# cd redis-3.2.9/
[root@localhost redis-3.2.9]# make && make install
2.启动redis,生成配置文件后关闭redis服务为
[root@localhost ~]# cd /usr/src/redis-3.2.9/utils/
[root@localhost utils]# ./install_server.sh //生成redis的配置文件
出现交互命令行确认redis的配置文件,这里全部默认即可
[root@localhost run]# ss -anpt | grep redis //查看redis运行状态
[root@localhost run]# /etc/init.d/redis_6379 stop //关闭redis
二、部署六个redis节点
1.复制redis命令行工具redis-cli和启动文件redis-server,生成三个独立的redis节点。
创建文件夹存放单独的redis节点,三个节点都放在redis-cluster目录下
[root@localhost redis-3.2.9]# cd /usr/local/
[root@localhost local]# mkdir redis-cluster
[root@localhost local]# cd redis-cluster
[root@localhost redis-cluster]# mkdir 6379 6380 6381
复制redis-cli和redis-server到三个节点的文件夹
[root@localhost redis-cluster]# cd /usr/src/redis-3.2.9/src/
[root@localhost src]# cp redis-cli redis-server /usr/local/redis-cluster/6379/
[root@localhost src]# cp redis-cli redis-server /usr/local/redis-cluster/6380/
[root@localhost src]# cp redis-cli redis-server /usr/local/redis-cluster/6381/
复制redis的配置文件到三个节点文件夹
[root@localhost redis-3.2.9]# cp /etc/redis/6379.conf /usr/local/redis-cluster/6379/6379.conf
[root@localhost redis-3.2.9]# cp /etc/redis/6379.conf /usr/local/redis-cluster/6380/6380.conf
[root@localhost redis-3.2.9]# cp /etc/redis/6379.conf /usr/local/redis-cluster/6381/6381.conf
对三个节点进行配置,以6379为例
[root@localhost redis-3.2.9]# vim /usr/local/redis-cluster/6379/redis.conf
监听端口设置为本机ip地址
开启群集模式
指定节点配置文件名称
修改配置文件名称并启动6379节点
[root@localhost redis-3.2.9]# cd /usr/local/redis-cluster/6379
[root@localhost 6379]# mv redis.conf 6379.conf
[root@localhost 6379]# ./redis-server 6379.conf //启动6379节点
更改6380、6381的配置文件,除了更改配置文件名称和端口号,其他配置参考6379
配置文件名称
端口号
配置并启动三个节点,使用redis-cli进入redis数据库系统中测试能否正常运行
2.在另一台虚拟机上部署另外的三个节点
编译安装redis,,安装完成后启动redis,步骤同上。启动后netstat查看运行情况,确认运行后停止运行,步骤同上。
通过节点传输的方式传输redis-cluster文件到另一台虚拟机
只需要在配置文件中更改监听地址为本机即可
[root@localhost ~]# cd /usr/local/redis-cluster/6379
[root@localhost 6379]# vim 6379.conf
启动三个redis节点
以上步骤完成了六个redis节点的部署
三、部署redis-cluster群集
1.创建群集需要用到ruby 的一个脚本,在创建群集前,需要先安装 ruby 的运行环境和ruby 的 Redis客户端。在任意一台虚拟机上安装ruby,创建redis-clsuter脚本即可
[root@localhost ~]# yum -y install ruby rubygems
[root@localhost ~]# gem install redis --version 3.2.0 //gem命令需要下载redis-3.2.0 .gem 软件包
[root@localhost ~]# cd /usr/src/redis-3.2.9/src
[root@localhost src]# ./redis-trib.rb create --replicas 1 192.168.8.6:6379 192.168.8.6:6380 192.168.8.6:6381 192.168.8.7:6379 192.168.8.7:6380 192.168.8.7:6381
根据提示输入yes,显示ok字样说明群集部署成功
查看群集状态