redis集群环境搭建
1.redis安装
1 首先上官网下载Redis 压缩包,地址:http://redis.io/download 下载稳定版即可
2 在下载的压缩包目录下解压压缩包
tar -xzf redis-4.0.11.tar.gz
解压成功后会显示如下图
3 进入redis目录执行 make 编译命令
4 编译成功后进入src文件夹,执行make install进行redis安装
5 为了方便管理及避免操作失误,将redis文件中的conf配置文件和常用命令移动到同一文件中。
创建bin和etc文件夹
mkdir bin
mkdir etc
复制文件
cp redis.conf etc
cd src
cp redis-server redis-cli ../bin
2.redis集群配置
主从节点的配置修改
修改各节点redis.conf的几项配置:
1.将bind 127.0.0.1 改为 bind 0.0.0.0 其目的是为了可以让远程进行访问。还有一种说法:
bind配置了什么ip,别人就得访问bind里面配置的ip才访问到redis服务,如果不是本机的ip , redis启动会报错
bind 0.0.0.0等价于 不配置 bind 即注释掉bind
2.requirepass avicit 设置访问密码
3.将 daemonize no 改为 daemonize yes 以守护进程进行访问
4.masterauth avicit 当master服务设置了密码保护时,slave服务连接master的密码(哨兵在进行故障主从切换时会动态更新配置文件,该节点可能会切换为从身份,初始不管主从都需要设置)
- slaveof 设置master服务的IP地址及端口,表示该节点为从节点。在Redis启动时,它会自动从master进行数据同步。只有从节点配置该项。例:slaveof 10.216.70.104 6377
6.如果在本机搭建主从集群,还需要将pidfile、logfile、dbfilename文件名进行修改,以免多个节点相关文件覆盖。
配置完成后依次启动主从节点
先启动主节点:redis-server ../etc/redis6377.conf (这是我本机的主节点配置,redis.conf文件可重新命名,启动时指向对文件就行),启动后进入客户端通过 info replication 查看节点信息
此时主节点信息为
哨兵集群配置
修改sentinel.conf文件几项配置
1.port 默认为26379
2.设置protected-mode no (配置中没有改项需要添加) 关闭禁止公网访问redis
3.sentinel monitor mymaster 10.216.70.104 6377 2 (mymaster自定义命名,需要各个地方统一,默认为mymaster,ip及端口为主节点的ip端口,最后的2代表,当集群中有2个sentinel认为master死了时,才能真正认为该master已经不可用了。)
4.sentinel auth-pass mymaster avicit 访问主节点的密码
5.sentinel down-after-milliseconds mymaster 30000 30秒(根据情况修改时间)后sentinel认为主节点不可用,进行切换主从。
启动哨兵
bin/redis-server sentinel.conf —sentinel