1.Redis简介
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
Redis
2.下载安装Redis
- rz , 上传到Linux服务器
- tar -zxvf redis-3.2.11.tar.gz , 解压
- mkdir redis-cluster , 创建Redis集群目录
- mv redis1 Java/redis-cluster/redis1 , 移动到指定目录
- make install PREFIX=/app/Java/redis-cluster/redis1 , 编译安装Redis
- redis.conf bin/redis.conf , 复制redis.conf到bin目录
- vim redis.conf , 修改bin/redis.conf,修改端口号和后台启动
- ./redis-server , 在bin目录下启动Redis
- ./redis-cli -h127.0.0.1 -p 7001 , 链接内置客户端
3.配置Redis集群环境
- 安装ruby环境
1:第一步删除原有Ruby
sudo yum remove ruby ruby-devel
2:安装ruby
sudo yum groupinstall "Development Tools"
sudo yum install openssl-devel
wget http://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.tar.gz
tar xvfvz ruby-2.5.0.tar.gz
mv ruby-2.5.0 Java/ruby-2.5.0
cd Java/ruby-2.5.0
./configure
make
sudo make install
3:更新Rubygems 和 Bundler
yum install gem
sudo gem update --system
sudo gem install bundler
4:更新以原有老版本安装的Rubygems
sudo gem update
5:安装Redis(如果提示版本过低 请断开连接再次连接)
gem install redis
- vim redis.conf , 进入Redis1的bin目录,开启集群功能,默认707行 ,修改IP地址
- 复制6根Redis,并修改相应端口
[root@FENGZB redis-cluster]# cp -r redis1/ redis2
[root@FENGZB redis-cluster]# cp -r redis1/ redis3
[root@FENGZB redis-cluster]# cp -r redis1/ redis4
[root@FENGZB redis-cluster]# cp -r redis1/ redis5
[root@FENGZB redis-cluster]# cp -r redis1/ redis6
[root@FENGZB redis-cluster]# ls
redis1 redis2 redis3 redis4 redis5 redis6
[root@FENGZB redis-cluster]# vim redis2/bin/redis.conf
[root@FENGZB redis-cluster]# vim redis3/bin/redis.conf
[root@FENGZB redis-cluster]# vim redis4/bin/redis.conf
[root@FENGZB redis-cluster]# vim redis5/bin/redis.conf
[root@FENGZB redis-cluster]# vim redis6/bin/redis.conf
- 编辑启动脚本,启动Redis
[root@FENGZB redis-cluster]# touch start-all.sh
[root@FENGZB redis-cluster]# vim start-all.sh
cd redis1/bin/
./redis-server redis.conf
cd ../../
cd redis2/bin/
./redis-server redis.conf
cd ../../
cd redis3/bin/
./redis-server redis.conf
cd ../../
cd redis4/bin/
./redis-server redis.conf
cd ../../
cd redis5/bin/
./redis-server redis.conf
cd ../../
cd redis6/bin/
./redis-server redis.conf
[root@FENGZB redis-cluster]# chmod u+x start-all.sh
[root@FENGZB redis-cluster]# ./start-all.sh
[root@FENGZB redis-cluster]# ps -ef |grep redis
root 42031 1 0 13:44 ? 00:00:03 ./redis-server 127.0.0.1:7001
root 73112 1 0 14:30 ? 00:00:00 ./redis-server 127.0.0.1:7002 [cluster]
root 73116 1 0 14:30 ? 00:00:00 ./redis-server 127.0.0.1:7003 [cluster]
root 73120 1 0 14:30 ? 00:00:00 ./redis-server 127.0.0.1:7004 [cluster]
root 73122 1 0 14:30 ? 00:00:00 ./redis-server 127.0.0.1:7005 [cluster]
root 73124 1 0 14:30 ? 00:00:00 ./redis-server 127.0.0.1:7006 [cluster]
- 把Redis单例加入到集群环境
- cp redis-trib.rb /app/Java/redis-cluster/ 进入Redis1的src目录 复制文件
- ./redis-trib.rb create --replicas 1 192.168.1.33:7001 192.168.1.33:7002 192.168.1.33:7003 192.168.1.33:7004 192.168.1.33:7005 192.168.1.33:7006
- 配置集群 输入yes
恭喜你配置Redis集群成功
比别人多执着一点,你就能创造奇迹