Redis集群搭建与哨兵管理(redis集群与哨兵)
随着移动互联网时代的到来,传统的单机架构已经无法满足现在的业务需求,所以针对Redis系统架构搭建着重点要解决的问题就是分布式和高可用问题
Redis 集群搭建以及保证高可用性,一般采用哨兵架构。Redis集群搭建是一个繁琐的工作,每个节点都要严格设置其IP地址以及端口号、Node名称,建议多节点集群搭建时选择Docker 部署,具体搭建步骤如下:
1、确定服务器IP和NodeID:先部署好机器环境,确定节点及Node ID,一般Node ID可以令1-N编制,IP:192.168.1.2,node-id:1
2、分析redis配置文件:编辑Redis配置文件,如端口、复制信息、AOF等需要同时在多个节点配置,如定义端口号port 6381
3、设置复制关系:主从节点通过以下命令连接:slaveof 192.168.1.2 6381
4、开启集群:在节点1上开启集群:./redis-trib.rb create –replicas 1 192.168.1.2:6381 192.168.1.3:6381
Redis集群搭建完成,但是在服务容错或高可用方面,Redis集群并不能解决,因此可以借助Redis Sentinel机制来管理集群,有效解决单点问题,Redis Sentinel实现了高可用性及容错
哨兵工作模式:一般建议搭建3X2台sentinel组,sentinel会一直监控多个Redis集群,如果发现有Redis节点宕机,就自动将下面可用 Redis 节点切换为主节点保证集群可用
Sentinel 配置文件:sentinelMonitor “YourMasterName” 192.168.1.2 6381 2
其中:YourMasterName:两个节点设置相同;192.168.1.2:Redis 节点IP;6381:Redis 节点端口;2:Redis 节点quorum数量
最后执行 sentinel 命令
Sentinel 的监控和管理可以通过定义脚本和条件来实现,例如在实用型节点失效后自动转移,发出警告等
这样就实现了Redis集群的搭建以及哨兵的管理,为公司的服务提升了可用性,无需专业的架构师,也可以建立完善的Redis分布式架构。