基于容器技术的视频监控云服务的平台实现方法及系统的制作方法_2

文档序号:9924073阅读:来源:国知局
[0043]进一步地,所述资源管理器从多台计算节点服务器中选择一台能够满足资源需求的计算节点服务器作为所述视频服务任务的宿主机,包括:
[0044]所述资源管理器根据预设调度策略从多台计算节点服务器中选择一台能够满足资源需求的计算节点服务器作为所述视频服务任务的宿主机;其中,所述预设调度策略为负载均衡调度算法、单机资源利用最大化算法和随机调度算法中的任一种。
[0045]进一步地,每个宿主机均设有标识编号,所述C-1VU在创建时生成字符串标识ID;
[0046]所述IVM接收用户通过所述VS下发取消当前运行的预定视频服务的任务;
[0047]所述IVM根据取消当前运行的预定视频服务的任务,获取运行所述预定视频服务的C-1VU的字符串标识ID,以及该C-1VU所在宿主机的标识编号;
[0048]所述IVM将获取的字符串标识ID发送至与所述获取的宿主机标识编号对应的宿主机的容器引擎,并通知其销毁当前运行的预定视频服务的C-1VU;
[0049]所述获取的宿主机标识编号对应的宿主机的容器引擎销毁当前运行的预定视频服务的C-1VU并释放资源。
[0050]进一步地,所述系统还包括代码仓库,用于存储视频源代码;
[0051]开发者从所述代码仓库中拉取视频源代码至本地,并在本地对所述视频源代码进行修改,并推送修改后的视频源代码到所述代码仓库;
[0052]所述代码仓库基于更新后的视频源代码自动触发构建对应该视频源代码的新的视频服务镜像;
[0053]所述代码仓库上传所述新的视频服务镜像至所述视频服务镜像仓库。
[0054]本发明公开了一种基于容器技术的视频监控云服务的平台实现方法及系统针对下发的关于视频服务的任务,通过容器引擎基于容器技术创建C-1VU执行该任务和通过传统实现方法的基于虚拟机创建V-1VU执行该任务相比,基于容器技术的虚拟化不需要提供指令解释机制和用于进行资源和环境隔离的中间控制程序,可以一定程度减少性能损耗,同时,容器本身无额外开销,具有轻量级特性,所需的内存空间较少,分配更准确,能够给任务分配更微粒度的资源,从而减少资源碎片的产生,提高资源利用率。
【附图说明】
[0055]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0056]图1为现有技术中的一种视频云服务平台系统架构。
[0057]图2为本发明实施例提供的基于容器技术的视频监控云服务的平台实现方法中的一种流程图;
[0058]图3为实际应用中视频监控云服务的一种流程图;
[0059]图4为本发明实施例提供的一种基于容器技术的视频监控云服务的平台实现方法中的C-1VU销毁的流程图;
[0060]图5为实际应用中C-1VU销毁的一种流程图;
[0061]图6为本发明实施例提供的一种基于容器技术的视频监控云服务的平台实现方法中的视频服务镜像仓库更新的流程图;
[0062]图7为本发明实施例提供的一种基于容器技术的视频监控云服务的平台实现系统架构。
【具体实施方式】
[0063]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0064]除了虚拟机技术,容器技术也是一种虚拟化技术,这是一种内核虚拟化技术,通过内核和用户态进程组的支持,实现独立网络IP、进程树等类似虚拟机的隔离运行环境,依赖Linux内核的cgroups机制实现为特定的进程组限定资源,并通过引入Linux内核的namespaces特性,实现将全局资源划分到独立的组中。容器是操作系统级别的虚拟化,和宿主机运行同样的内核。
[0065]基于容器技术,本发明提出了一种基于容器技术的视频监控云服务的平台实现方法及系统。
[0066]首先,本发明实施例公开的一种基于容器技术的视频监控云服务的平台实现方法,应用于基于容器技术的视频监控云服务的平台实现系统,该云服务的平台实现系统包括视频监控平台VS、智能视频分析任务管理服务器IVM、资源管理器和多台计算节点服务器;每台计算节点服务器中均部署有容器引擎(Container Engine)。
[0067]具体的,视频监控平台VS,包括可视化的视频服务管理平台,负责视频服务管理(如视频压缩服务、视频摘要提取服务等)、视频服务镜像管理以及资源监控等。智能视频分析任务管理服务器IVM是整个基于容器技术的视频监控云服务的平台实现系统的核心,负责和其他的组件交互通信、响应用户请求以及进行视频服务任务的分发。资源管理器负责基础资源的管理和调度;每个服务器上配置有容器引擎,通过容器的方式为视频服务提供执行环境。
[0068]如图2所示,该方法包括:
[0069]S201、IVM接收用户通过VS下发的视频服务任务和该任务的相关参数;
[0070]所下发的视频服务任务是关于视频压缩服务、视频摘要提取服务、视频浓缩服务等视频服务任一种服务的任务,每次下发的任务对应一个具体的视频服务,当然,不仅限于这三种。
[0071]所下发的相关参数是针对所下发的任务中的视频服务的,针对不同视频服务,参数不同。例如,在线流媒体转发服务,需要提供视频地址;离线的视频浓缩服务需要提供视频文件路径、感兴趣域等;视频格式转换服务,需要提供视频文件路径以及需要转化的格式等。
[0072]S202、IVM根据视频服务任务生成资源需求并根据该资源需求向资源管理器申请分配资源;
[0073]具体实施中,IVM根据视频服务任务中的视频服务类型生成资源需求向资源管理器申请分配资源,而针对每种视频服务,IVM都已预存了该种视频服务的资源需求。
[0074]S203、资源管理器从多台计算节点服务器中选择一台能够满足资源需求的计算节点服务器作为该视频服务任务的宿主机,将分配的资源和相关参数发送给该宿主机,该宿主机为该视频服务任务分配资源;
[0075]一般情况下,完成本步骤后,资源管理器会向IVM发出确认信息。
[0076]该方法所应用的整个系统是一个分布式系统,由于系统包括有多个计算节点服务器,当用户下发任务后,系统必须选择由哪个服务器负责执行。
[0077]本实施例中,资源管理器从多台计算节点服务器中选择一台能够满足资源需求的计算节点服务器作为该视频服务任务的宿主机,具体包括:
[0078]资源管理器根据预设调度策略从多台计算节点服务器中选择一台能够满足资源需求的计算节点服务器作为对应视频服务任务的宿主机;其中,预设调度策略为负载均衡调度算法、单机资源利用最大化算法和随机调度算法中的任一种。
[0079]S204、宿主机中的容器引擎,获取该视频服务任务对应的视频服务镜像,并基于该视频服务镜像创建容器化智能视频处理单元c-ινυ,该C-1VU运行视频服务并根据对应视频服务任务的相关参数执行该视频服务任务。
[0080]其中,视频服务任务对应的视频服务镜像是指封装了视频服务的镜像,包括了可执行的视频服务程序以及所依赖的环境。
[0081]本发明公开的一种基于容器技术的视频监控云服务的平台实现方法针对下发的视频服务任务,通过容器引擎生成容器实例创建C-1VU执行该任务和通过传统实现方法的基于虚拟机创建V-1VU执行该任务相比,基于容器技术的虚拟化不需要提供指令解释机制和用于进行资源和环境隔离的中间控制程序,可以一定程度减少性能损耗,同时,容器本身无额外资源开销,具有轻量级特性,所需的内存空间较少,分配更准确,能够给任务分配更微粒度的资源,从而减少资源碎片的产生,从而提高资源利用率。因此,相对于当前主流基于虚拟机的实现视频监控云服务的方法,本发明大大提升了视频服务处理性能和资源利用率。
[0082]针对提升资源利用率,举例来说,计算节点服务器还有剩余的资源,若这些资源不够分配给任何任务,则这些资源就不能被利用,就产生了资源碎片。由于基于虚拟机的IVU在分配资源时要求的资源粒度大,比如cpu至少I核,内存至少512mb,导致计算节点服务器产生较多不能用的剩余资源,即资源碎片,而容器由于本身占用的资源少,分配时更精准,能够给任务分配更微粒度的资源,比如给一个任务分配16mb内存,基于时间片的cpu等。显然粒度越小,资源碎片也越小,这样就减少了资源碎片的产生,从而提高资源利用率。
[0083]由于容器启动开销非常小,针对不同的视频服务任务,一般情况下,不需要重用原来的C-1VU,只需要生成新的C-1VU即可。
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1