什么是Redis
Redis是目前一个非常优秀的key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set有序集合)和hash(哈希类型)
为什么要基于3.x安装集群
3.x以前,redis仅支持主从模式,并不支持集群模式。
安装redis3.x集群
本次安装redis集群,共用三台Centos 6.5机器,其中每台机器分别安装两个节点(一主一从)。
- 下载redis3稳定版本,本文章基于最新
redis-3.2.8
版本安装配置。
redis-3.2.8下载
2. 将安装包上传到服务器
3. 解压redis源码包
- tar -zxvf redis-3.2.8.tar.gz -C /usr/local/src/
4. 进入源码包、编译并安装
- cd /usr/local/src/redis-3.2.8/
- make && make install
如果报错,判断是否缺少依赖包
安装redis依赖rpm包
- yum -y install gcc
如果报error: jemalloc/jemalloc.h: No such file or directory
原因是没有安装jemalloc内存分配器,可以安装jemalloc或者直接输入
- make MALLOC=libc && make install
5. 用同样的方式在其他机器上编译安装redis
配置Master节点
6. 在所有机器的/usr/local/
下创建redis目录,然后拷贝redis自带的配置文件redis.conf
到/usr/local/redis/
- mkdir /usr/local/redis
- cp /usr/local/src/redis-3.2.8/redis.conf /usr/local/redis
7. 修改所有机器的配置文件redis.conf
- bind 0.0.0.0 #redis绑定的ip
- daemonize yes #redis后台运行
- cluster-enabled yes #开启集群把注释去掉
- appendonly yes #开启aof日志,它会每次写操作都记录一条日志
配置slave节点
8. 在所有机器的/usr/local/redis/
下创建7000目录(7000是区分我们的slave节点端口),然后拷贝master的配置文件redis.conf
到/usr/local/redis/7000/
- mkdir /usr/local/redis/7000
- cp /usr/local/redis/redis.conf /usr/local/redis/7000/
9.修改所有机器的/usr/local/redis/7000/redis.conf
- bind 0.0.0.0 #redis绑定的ip
- port 7000 #端口要与其所在的文件名一致
- pidfile /var/run/redis-7000.pid #pid要与其所在的文件名一致
- daemonize yes #redis后台运行
- cluster-enabled yes #开启集群把注释去掉
- appendonly yes #开启aof日志,它会每次写操作都记录一条日志
10. 启动所有redis的master节点
- cd /usr/local/redis
- redis-server redis.conf #启动master
- redis-server 7000/redis.conf #启动slave
11. 查看redis进程状态
- ps -ef | grep redis
12. 配置集群:安装ruby和ruby gem工具(redis3集群配置需要ruby的gem工具,类似yum)
- yum -y install ruby rubygems
13. 使用gem下载redis集群的配置脚本
- gem install redis
14. 使用脚本配置redis集群(在一台机器上执行即可)
- cd /usr/local/src/redis-3.2.8/src/
- service iptables stop #停止防火墙
- #这个命令在这里用于创建一个新的集群, 选项–replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。主节点为前三个,从节点为后三个。
- ./redis-trib.rb create --replicas 1 192.168.31.51:6379 192.168.31.52:6379 192.168.31.53:6379 192.168.31.51:7000 192.168.31.52:7000 192.168.31.53:7000
15. 安装完成,并测试
- redis-cli -c -p 6379