因为公司项目需要redis高可用,并且有应急措施,所以只能去研究下redis主从+哨兵的部署,本来是想部署集群的,但是集群需要最少需要六个实例,然后就算了,本文主要记录一下这次部署过程,附上自己写的一个部署脚本(需要的朋友改一改应该可以用,讲其中的中文改成对应的ip就行了)
redis: 一主一从 sentinel(哨兵):三个(因为只有两台服务器,所以都部署在从机上了,有条件可以单独弄一个机器专门部署哨兵,单注意哨兵个数一定要为基数,涉及到一个内部投票选举的机制)
下载地址:https://download.csdn.net/download/sqm1995/11193551
文件名描述master_serice.sh主机启动停止脚本slave_service.sh从机启动停止脚本redis.sh部署脚本redis-master.conf主机配置redis-slave.conf从机配置redis-4.0.14.tar.gzredis安装包sentinel-701…哨兵进入解压后的文件夹 cd redis
赋权shell脚本 chmod u+x redis.sh master_service.sh slave_service.sh
运行部署脚本 ./redis.sh
会弹出如下提示
如果部署主机器则输入y,从机则输入n
等待脚本执行完成,出现================success!表示部署成功
部署完成是自动启动的
进入/usr/local/redis目录 主机: ./redis-cli -p 7001 -c 从机: ./redis-cli -p 7002 -c 在主机中set值,如果在从机中能看到,说明主从ok
讲项目连接主机,并且配上哨兵,java配置如图: 在储存数据后,kill掉主机,再储存数据,如果数据成功到从机上,说明哨兵ok,再次启动主机,会发现刚才kill掉的主机上有从机同步过来的数据