基于虚拟容器的大数据存储与管理方法_3

文档序号:9326742阅读:来源:国知局
>[0050]使用Docker进行资源与环境隔离。容器控制器对Docker的命令进行封装,利用容器技术对用户占用的计算资源以及计算环境进行隔离。
[0051]服务器中使用MongoDB存储元数据,用户元数据存于User Collect1n中,租户元数据存于 Tenant Collect1n 中。
[0052]权限控制过程中,通过token与用户ID的映射,在User和Tenant两个Collect1n中进行比对,确定用户该次访问是否具有相应权限。
[0053]资源分配算法如下:使用中心Redis节点记录集群中每台物理机的空闲资源情况以及当前资源占用情况。空闲资源情况以及当前资源占用情况均采用链表的形式有序存放。调度器在各资源类型的链表进行二分查找后获得满足用户请求的物理机集合。调度器对筛选出的物理机集合按照应用类型进行不同的排序,包括计算密集或者1/0密集。
[0054]相比于现有方式:
[0055]第一,现有的分布式调度方案需要分布式应用各自提供接入模块,对于每一个想接入现有分布式资源调度系统的分布式应用来说都需要利用其提供的编程接口编写接入模块,无法实现“热插拔”。本发明设计了一种新型的两层调度方案,通过把基于任务的细粒度调度工作下放给各分布式应用自身,从而实现了应用的“热插拔”,降低了调度器与应用之间的耦合度。
[0056]第二,现有的分布式资源调度方案都是在静态的存储系统之上对计算任务进行调度,无法满足多租户对存储系统的实时个性化定制。本发明通过对现有的分布式资源调度方案进行扩展,引入了对存储系统的实时调度,提升了大数据系统的灵活性,更好地满足多租户的需求。
[0057]第三,传统的虚拟化技术需要对硬件以及操作系统进行虚拟因此性能开销较大,而容器技术是通过内核特性Namespace和CGroups等实现,省去层层虚拟,通过与宿主主机共用内核的方式显著降低虚拟化带来的开销。通过引入虚拟容器替代传统虚拟化技术的方法,提升了大数据系统的硬件资源利用率。
[0058]本发明的基于虚拟容器的大数据存储与管理方法解决了如何在异构的底层存储硬件之上,提供统一的存储与计算池,满足用户多模态的存储需求与多样化的计算需求,并且能够隔离不同用户的资源与应用。本发明的基于虚拟容器的大数据存储与管理方法,采用虚拟容器技术进行资源与环境的隔离,采用双层调度的架构降低了顶层调度器负载以及分布式应用与调度器的耦合度,并且对实时调度存储系统提供了支持。
[0059]尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
【主权项】
1.一种基于虚拟容器的大数据存储与管理系统,其特征在于,包括: 元数据服务器,所述元数据服务器用于维护租户信息和用户信息,并在用户访问元数据和容器时进行权限认证; 调度器,包括两层调度,其中,上层调度为容器级别的调度,下层调度为任务级别的调度,所述上层调度用于接收用户的请求,并为用户分配和配置对应的容器,所述下层调度由每个大数据计算框架的主节点完成,所述调度器具有接收用户提交任务的接口,以根据用户需求和从服务器发送的全局资源和任务运行情况,从集群中选择多个物理机以通过所述物理机中的容器执行所述任务,并向所述物理机上容器发送启停命令; 多个从服务器,所述从服务器与所述调度器相互通讯,用于根据所述调度器发送的启停命令控制所述物理机上的容器的启停,并监控物理机的资源和任务运行情况,以及将所述资源和任务运行情况反馈给所述调度器。2.根据权利要求1所述的基于虚拟容器的大数据存储与管理系统,其特征在于,所述租户信息包括:团体名称、联系方式和支付信息。3.根据权利要求1所述的基于虚拟容器的大数据存储与管理系统,其特征在于,所述元数据服务器包括: 租户管理模块,用于维护每个租户信息,并为租户管理员提供设置用户权限的机制; 用户管理模块,用于维护用户的信息,并对用户进行身份认证; 权限认证模块,用于在用户访问元数据和容器时进行权限认证。4.根据权利要求1所述的基于虚拟容器的大数据存储与管理系统,其特征在于,所述从服务器包括: 容器控制器,用于对所述物理机上的容器进行监控,并根据所述启停命令控制所述容器的启停; 资源监控模块,用于监测所述物理机的资源和任务执行情况,其中,所述资源包括:CPU使用、内存占用、网络1和磁盘占用情况; 通信模块,用于与所述调度器相互通信,并向所述调度器发送所述物理机的资源和任务执行情况,并接收所述调度器发送的所述启停命令。5.根据权利要求1-4任一项所述的基于虚拟容器的大数据存储与管理系统,其特征在于,所述用户通过SSH向所述容器进行任务提交。6.一种基于虚拟容器的大数据存储与管理方法,其特征在于,包括以下步骤: 用户向调度器提交创建集群请求; 所述调度器向从服务器发送资源占用情况请求; 所述从服务器将物理机的资源占用情况反馈给所述调度器,所述调度器选择满足所述资源占用情况请求的物理机的集合; 所述调度器通向所述从服务器发送容器启动命令; 所述从服务器根据要求设置物理机上的容器的资源占用上限并启动所述容器; 在所述容器启动完成后,所述从服务器通知所述调度器; 所述调度器将所述容器的集群的IP发送给所述用户; 所述用户向所述容器提交任务; 当所述任务执行完毕后,所述容器向所述用户发送执行结果。7.根据权利要求6所述的基于虚拟容器的大数据存储与管理方法,其特征在于,所述集群请求包括:应用类型、节点数、硬件描述,其中,所述硬件描述包括:CPU频率、核数、硬盘大小和内存大小。8.根据权利要求6所述的基于虚拟容器的大数据存储与管理方法,其特征在于,所述从服务器利用应用容器引擎对任务占用的资源和环境进行隔离。9.根据权利要求6所述的基于虚拟容器的大数据存储与管理方法,其特征在于,所述用户通过SSH向所述容器提交任务。10.根据权利要求6-9任一项所述的基于虚拟容器的大数据存储与管理方法,其特征在于,所述资源占用情况以链表的形式存储在所述调度器中。
【专利摘要】本发明提供了一种基于虚拟容器的大数据存储与管理系统及方法,该系统包括:元数据服务器,用于维护租户信息和用户信息,并在用户访问元数据和容器时进行权限认证;调度器,包括两层调度,上层调度为容器级别的调度,下层调度为任务级别的调度,上层调度用于接收用户的请求,并为用户分配和配置对应的容器,下层调度由每个大数据计算框架的主节点完成,调度器实现容器的调度;从服务器,控制所述物理机上的容器的启停,并监控物理机的资源,将资源和任务运行情况反馈给调度器。该系统采用虚拟容器技术进行资源与环境的隔离,采用双层调度的架构降低了上层调度器负载和分布式应用与调度器的耦合度,并且对实时调度存储系统提供了支持。
【IPC分类】G06F9/48, G06F9/50
【公开号】CN105045656
【申请号】CN201510371873
【发明人】武永卫, 陈康, 马道宽, 郑纬民
【申请人】深圳清华大学研究院
【公开日】2015年11月11日
【申请日】2015年6月30日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1