大型智慧城市、交通枢纽、跨区域联网监控视频平台使用LiveGBS国标GB28181平台如何实现分布式集群及负载均衡
一、背景
大型视频监控平台项目的常见需求,比如高并发、高可用性、容灾备份、跨区域联网等。通常需要处理数千甚至上万路视频,所以架构必须支持水平扩展。需要一个分层的结构,可能包括中心管理节点和多个区域节点,每个区域有多个LiveSMS实例。
正常一套LiveGBS包括一个LiveCMS信令服务和一个LiveSMS流媒体服务。 单个LiveSMS的负载在100路-200同时播放左右,具体看码率大小和带宽以及服务器性能。当单个LiveSMS不够需要增加负载时, 可以根据需要增加服务器部署LiveSMS做流媒体服务器集群,根据需要动态增加。
二、方案
2.1 百万路视频接入
LiveGBS 默认使用 sqlite3 文件数据库, 当接入通道数量达到万级时, 文件数据库会拖慢系统。当上万路视频需要接入时,建议切换数据库为MariaDB(推荐) 或 MySQL(5.7及以上) 数据库,也可以使用高斯、达梦、瀚高等国产数据库。具体可以参考官方网站的介绍:LiveGBS常见问题之数据库切换
2.2 几百上千路高并发请求播放
一套LiveGBS包括一个LiveCMS信令服务和一个LiveSMS流媒体服务。 单个LiveSMS的负载在100路-200同时播放左右,具体看码率大小和带宽以及服务器性能。当单个LiveSMS不够需要增加负载时, 可以根据需要增加服务器部署LiveSMS做流媒体服务器集群,根据需要动态增加。
当并发很高时,可以采用多个LiveSMS流媒体集群部署的方式来增大并发数。 LiveCMS信令服务内部已经实现了负载均衡机制,会根据每个LiveSMS流媒体的负责情况,动态分配视频请求到具体流媒体服务器。前端用户只需要跟LiveCMS信令服务交互就行,无需关系后台有多少LiveSMS流媒体服务器在工作。其中某个流媒体出现问题后,LiveCMS也会把请求分配到其他流媒体上,实现高可用。具体架构方式如下图:
2.3 信令服务主备方式
LiveCMS信令服务集群主备架构:部署2台LiveCMS节点(主节点+热备节点),通过VIP虚拟IP实现故障自动切换。 也可以使用RoseHa等专业热备软件进行数据备份切换。
功能定位:
1、设备注册、心跳管理、信令路由
2、级联上级平台(如省级监控中心)
3、控制LiveSMS集群的负载策略
详细LiveGBS的功能参考官方网站的介绍 视频视频