我把我集群搭建过程整理出来
1 官网下载redis,我用的是最新版stable版本
注:我是自己测试,所以直接解压在root下。建议-O 指定其他路径
2 解压redis,且cd软件目录进行编译
tar xf redis-stable.tar.gz
cd redis-stable/ && make
注: redis环境,编译时候不需要make install,它已经预期安装编译环境了。当然,输入make install也可以。以下是编译成功的截图
3 创目录,复制配置文件
mkdir /etc/redis cp /root/redis-stable/redis.conf /etc/redis/6379.conf cp /root/redis-stable/utils/redis_init_script /etc/init.d/redis
4 修改开机启动的配置 /etc/init.d/redis
将路径改为,cp之后的路径,且扔到后台执行,不要忘记了&符号
5 将redis设置为,开机启动,然后start redis,进行测试,以便检查单台redis是否部署成功
chmod +x /etc/init.d/redis chkconfig --add redis chkconfig redis on systemctl daemon-reload systemctl start redis
6 运行redis客户端,来进行测试
/root/redis-stable/src/redis-cli
[root@localhost ~]# /root/redis-stable/src/redis-cli
127.0.0.1:6379> set name chenjiao
OK
127.0.0.1:6379> get name
"chenjiao"
127.0.0.1:6379> quit
[root@localhost ~]#
7 我这块打算部署三台,其他两台步骤一样。本次实验中,我对持久化功能不进行配置,默认RDB是开启状态,AOF是关闭状态。我现在开始设置主从,修改reids配置文件。
第一步,配置主redis
vim /etc/redis/6379.conf
其中,关闭保护模式,监听本机所有地址即可,如图
1. bind 0.0.0.0 2. protected-mode no
第二步,配置其它两台从redis
vim /etc/redis/6397.conf,内容如下
1. slaveof 192.168.40.128 6379 2. bind 0.0.0.0 3. protected-mode no
写上主redis的ip即可
第三步,将三台redis重启
systemctl restart redis
8 可以登录redis客户端,输入info replication,看看主从是否搭建成功
/root/redis-stable/src/redis-cli
如图所示,从redis显示2
9 在每台机器上修改sentinel的配置文件,vim /root/redis-stable/sentinel.conf 加上如下内容
sentinel monitor mymaster 192.168.40.128 6379 2 sentinel down-after-milliseconds mymaster 3000 sentinel failover-timeout mymaster 10000 protected-mode no
配置中重复内容需要注释掉,三台sentinel文件配置,保持一致,failover的时长,和断定master下线的主观时长,可以根据自己需要进行修改,单位为毫秒。
sentinel monitor 中数字2,是quorum的数量,两台sentinel断定主redis下线,才可以进行master_slave的角色转换
10 每台机器启动sentinel服务
1. cd /root/redis-stable 2. ./src/redis-sentinel sentinel.conf