一、redis的安装
先在下载安装包
解压后进入目录应为已经有Makefile了所以直接make编译
这里会报错,需要gcc编译器
安装好gcc,再次make编译,还是会报错;这个错误根据 Readme 可知需要执行 make MALLOC=libc
make完成后,提示去到 src 目录下
到src目录后执行按提示执行make test,会报错提示安装tcl工具
完成后 make install 完成安装
注意进入utils目录,执行install_server.sh,不然脚本会报错,提示找不到相应文件。脚本执行时,会有几个设置config等的问题,默认回车即可
至此redis已经安装完毕
二、redis的主从复制和高可用
1、redis的主从复制
1)编辑redis的配置文件,配置文件位置如下图
2)注释bind 127.0.0.1
在配置文件redis.conf中,默认的bind 接口是127.0.0.1,也就是本地回环地址。这样的话,访问redis服务只能通过本机的客户端连接,而无法通过远程连接,这样可以避免将redis服务暴露于危险的网络环境中,防止一些不安全的人随随便便通过远程,但是我们做主从复制。
但是搭建主从复制,需要另一台redis端连接到本机,所以要将其注释。
2)关闭保护模式
3)另一台redis端在其配置文件做同样操作,并且需要指定master端ip和端口,如图
如上操作所示,已经完成redis的主从复制,测试:在master端server3:set name kk,在server3查看
完成主从复制
2、redis高可用
高可用原理:
自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。
配置环境:三台虚拟机安装 redis 服务
Server3: 172.25.77.3 (先做 master)
Server4:172.25.77.4
Server5:172.25.77.5
按主从复制先配置好一主两从
1)在安装包中将 sentinel 文件复制到/etc/redis/下
2)编辑 sentinel.conf 如下图
关闭保护模式
配置指示 Sentinel 去监视一个名为 mymaster 的主服务器,这个主服务器的IP 地址为 172.25.77.3,端口号为 6379 ,而将这个主服务器判断为失效至少需要 2 个 Sentinel 同意(只要同意 Sentinel 的数量不达标,自动故障迁移就不会执行)