目前CMDB使用RedisGraph存储各种关系映射数据,数据的重要性不言而喻,所以数据的防灾、高性能及高可用非常重要。
目前现状
- RedisGraph是单节点运行,存在数据防灾、高可用、性能不易扩展的缺陷
- 在CMDB系统中RedisGraph应用流程图
现状改进
- 为了解决数据防灾、高可用、高性能的需求,RedisGraph设计为主从(1主2从)、读写分离架构
- 改进后RedisGraph架构设计
高可用
- 主要通过主从模式实现,当主redis数据变动时,实时同步到从redis
- 当主redis出现问题不能继续提供服务时,哨兵则把从redis充当主redis继续提供服务
- 高可用设计正常情况下
- 出现问题时
高性能
- 性能主要是有代理层实现通过配置读写比例,可以有master负责CUD操作,slave实现R操作
- 高性能设计方案如下正常情况
- 出现问题时
备注
- 该方案设计不影响cmdb现有的开发实现,不要业务需求实现代码,只要把改动图形数据库链接信息即可。
- 如果没有特别的需求,可以省去VIP,直接链接Proxy也可以。