网络靶场云平台数据盘管理系统与方法技术方案

技术编号:25755828 阅读:29 留言:0更新日期:2020-09-25 21:05
本发明专利技术公开了一种网络靶场云平台数据盘管理系统与方法,系统主要包括配置接口、系统设置、数据盘统计、数据盘创建、挂载和初始化等模块。本发明专利技术通过数据盘统计模块采集网络靶场所有虚拟机的数据盘的文件系统的使用情况,并根据收集的信息和给定的空间浪费比率计算出合适的文件系统参数,在用户需要添加数据盘时,自动命名并简化数据盘创建和挂载流程,在数据盘初始化时生成最优的文件系统参数,使得用户能够立刻获取可存取文件的文件系统。本发明专利技术有效提高了用户在网络靶场中创建数据盘的流畅度,提高了用户体验,并且能够以最佳的参数对数据盘进行初始化,降低数据盘空间的浪费。

【技术实现步骤摘要】
网络靶场云平台数据盘管理系统与方法
本专利技术涉及一种网络靶场云平台数据盘管理系统与方法,属于网络

技术介绍
网络靶场是对真实网络的仿真。在网络靶场中,运行着若干虚拟机,与真实计算机类似的,虚拟机也包含CPU、内存和磁盘。为了与真实计算机的磁盘区分,虚拟机的磁盘称为虚拟磁盘。虚拟磁盘按照用途可分为系统盘、数据盘,通常用C盘代表系统盘,D盘代表数据盘。系统盘上承载着虚拟机操作系统,系统盘与虚拟机是一一绑定的。数据盘一般用于存储用户数据,它独立于虚拟机,在虚拟机销毁之后数据盘会保留下来。在使用上,数据盘是支持插拔,可以在不同的虚拟机中使用。这一点跟U盘是十分类似,可以用数据盘来复制和转移数据。在网络靶场中,与数据盘相关的系统有两个:存储系统和计算系统。存储系统通常由管理模块和后端模块(如NFS)组成,负责数据盘的管理,包括创建、删除、查询等;计算系统通常由调度模块和虚拟化管理器(如KVM)组成,负责虚拟机的管理,包括创建、删除、启动、停止等,还有数据盘的挂载也是由计算系统负责的。用户创建和使用一个数据盘,需要在计算系统和存储系统中切换,流程如图1所示。首先申请创建一个新的数据盘时,除了需要指定数据盘大小之外,为了与其它数据盘进行区分,这时存储系统还需要用户输入一个名字。存储系统不限制也不关心数据盘的用途,所以由它创建的数据盘是一块空白盘。在一个新的数据盘挂载到虚拟机之后,在虚拟机中出现了新的磁盘设备,但它是未经初始化的。某些现代操作系统(比如Win10)会提示用户进行初始化操作;而旧的操作系统(比如Win7)没有任何提示,全靠用户手工调用磁盘工具来处理。而在磁盘工具中,需要对数据盘进行初始化分区表、创建分区、格式化、指定卷标、指定挂载点等一系列繁琐且耗时的操作,每一步都有一些参数需要用户去选择甚至计算,比如怎样确定分区类型和分区起始位置;完成这些操作之后才能开始用它存取文件。因而,现有的数据盘创建和使用方式存在如下问题:1、创建和挂载数据盘的操作需要在多个系统之间切换,较为繁琐;2、很多时候数据盘的名称对用户并不重要,而存储系统强制要求提供数据盘名称;3、在虚拟机里初始化一块空白数据盘,需要用户掌握虚拟机文件系统的相关知识,且操作复杂,容易出错,对用户不友好,还容易造成空间资源的浪费。4、在虚拟机中数据盘名称与存储系统中数据盘名称毫无关联,特别是在一个虚拟机同时挂载多块数据盘时,用户在虚拟机中无法区分它们,给使用带来困难。
技术实现思路
专利技术目的:针对上述现有技术存在的问题,本专利技术的目的在于提供一种网络靶场云平台数据盘管理系统与方法,以实现优化用户操作流程、提高用户体验、降低数据盘空间的浪费。技术方案:为实现上述专利技术目的,本专利技术采用如下技术方案:网络靶场云平台数据盘管理系统,包括:配置接口模块,用于获取添加数据盘的指令,以及所添加数据盘的名称、大小和需要添加数据盘的虚拟机;所述数据盘的名称根据默认列表中未使用过的名称生成,或由用户指定的未使用过的名称;系统设置模块,用于预置系统参数,包括数据盘分区表类型、文件系统类型和空间浪费比率;数据盘统计模块,用于通过事件订阅从计算系统采集网络靶场所有虚拟机的数据盘的文件系统的使用情况,并根据收集到的文件大小和给定的空间浪费比率计算出最大的文件系统分配单元大小;数据盘创建模块,用于调用存储系统创建所添加的指定名称和大小的数据盘,并记录数据盘的名称、编号和所属存储系统;数据盘挂载模块,用于在数据盘创建后,直接根据数据盘编号和需要挂载的虚拟机调用计算系统将新创建的数据盘挂到执行添加数据盘操作的虚拟机;以及,数据盘初始化模块,用于对新创建的数据盘进行初始化操作,使其变成一个可立即存取文件的文件系统;所述初始化操作包括根据配置的分区表类型创建分区表,创建分区,根据虚拟机的操作系统类型或配置的文件系统类型选择文件系统,使用数据盘统计模块计算的最大的文件系统分配单元大小执行数据盘的快速格式化操作、以及设置数据盘的卷标为创建时指定的数据盘的名称。进一步地,所述数据盘统计模块,包括:采集事件订阅单元,用于通过计算系统订阅接口订阅并接收计算系统的数据盘文件系统使用情况采集事件;采集数据存储单元,用于将采集事件解析过滤后,将文件路径和大小保存到数据库;以及,统计单元,用于根据采集到的文件信息和给定的空间浪费比率计算出最大的文件系统分配单元大小。进一步地,最大的文件系统分配单元大小的计算方法为:设S为文件分配单元大小,初始值为64k,总文件数为N,第i个文件的长度为Li,那么总大小为SUM(Li),占用空间为SUM(CEIL(Li/S)*S),空间利用率为SUM(Li)/SUM(CEIL(Li/S)*S),空间浪费比率为W=1-SUM(Li)/SUM(CEIL(Li/S)*S);其中CEIL表示向上取整函数,SUM表示求和函数;当W大于给定的空间浪费比率A时,S减半,重复计算,直到W小于或等于A,此时的S作为最大的文件系统分配单元大小。进一步地,所述数据盘初始化模块,包括:远程调用单元,用于数据盘初始化模块与数据盘统计模块、计算系统以及存储系统通信;分区表创建单元,用于获取分区表类型,创建分区表;分区创建单元,用于将整个数据盘分成一个区;文件系统选择单元,用于根据配置的文件系统类型或和虚拟机操作系统类型选择文件系统类型;其中系统设置模块根据网络靶场建设要求预置文件系统类型,若配置为“自动”,则虚拟机操作系统类型自动选择对应的文件系统类型;格式化单元,用于使用数据盘统计模块计算得出的最大的文件系统分配单元大小执行数据盘的快速格式化操作;以及,卷标设置单元,用于将数据盘的卷标设置为创建时指定的数据盘的名称。进一步地,在存在至少两种存储系统的环境中,所述数据盘初始化模块部署在计算系统上;在只有一种存储系统的环境中,所述数据盘初始化模块部署在计算系统上或存储系统上。网络靶场云平台数据盘管理方法,包括如下步骤:步骤1:通过事件订阅从计算系统采集网络靶场所有虚拟机的数据盘的文件系统的使用情况,收集数据盘中存储的所有文件大小;步骤2:在用户需要创建新的数据盘时,生成一组预定义的名称,根据用户选择的未使用过的名称或输入的名称生成所添加数据盘的名称,并获取所添加数据盘的大小和需要添加数据盘的虚拟机;步骤3:调用存储系统创建所添加的指定名称和大小的数据盘,并记录数据盘的名称、编号和所属存储系统;步骤4:在数据盘创建后,直接根据数据盘编号和需要挂在的虚拟机调用计算系统将新创建的数据盘挂到执行添加数据盘操作的虚拟机;步骤5:对新创建的数据盘进行初始化操作,使其变成一个可立即存取文件的文件系统,初始化操作包括:根据配置的分区表类型创建分区表,创建分区,根据虚拟机的操作系统类型或配置的文件系统类型选择文件系统,执行数据盘的快速格式化操作、以及设置数据盘的卷标为创建时指定的数据盘的名称;其中执行数据盘的快速格式化操作之前根据收集到的文件大小和给定的空间浪费比率计算出最大的文件系统分配单元大小,并使用本文档来自技高网
...

【技术保护点】
1.网络靶场云平台数据盘管理系统,其特征在于,包括:/n配置接口模块,用于获取添加数据盘的指令,以及所添加数据盘的名称、大小和需要添加数据盘的虚拟机;所述数据盘的名称根据默认列表中未使用过的名称生成,或由用户指定的未使用过的名称;/n系统设置模块,用于预置系统参数,包括数据盘分区表类型、文件系统类型和空间浪费比率;/n数据盘统计模块,用于通过事件订阅从计算系统采集网络靶场所有虚拟机的数据盘的文件系统的使用情况,并根据收集到的文件大小和给定的空间浪费比率计算出最大的文件系统分配单元大小;/n数据盘创建模块,用于调用存储系统创建所添加的指定名称和大小的数据盘,并记录数据盘的名称、编号和所属存储系统;/n数据盘挂载模块,用于在数据盘创建后,直接根据数据盘编号和需要挂在的虚拟机调用计算系统将新创建的数据盘挂到执行添加数据盘操作的虚拟机;/n以及,数据盘初始化模块,用于对新创建的数据盘进行初始化操作,使其变成一个可立即存取文件的文件系统;所述初始化操作包括根据配置的分区表类型创建分区表,创建分区,根据虚拟机的操作系统类型或配置的文件系统类型选择文件系统,使用数据盘统计模块计算的最大的文件系统分配单元大小执行数据盘的快速格式化操作、以及设置数据盘的卷标为创建时指定的数据盘的名称。/n...

【技术特征摘要】
1.网络靶场云平台数据盘管理系统,其特征在于,包括:
配置接口模块,用于获取添加数据盘的指令,以及所添加数据盘的名称、大小和需要添加数据盘的虚拟机;所述数据盘的名称根据默认列表中未使用过的名称生成,或由用户指定的未使用过的名称;
系统设置模块,用于预置系统参数,包括数据盘分区表类型、文件系统类型和空间浪费比率;
数据盘统计模块,用于通过事件订阅从计算系统采集网络靶场所有虚拟机的数据盘的文件系统的使用情况,并根据收集到的文件大小和给定的空间浪费比率计算出最大的文件系统分配单元大小;
数据盘创建模块,用于调用存储系统创建所添加的指定名称和大小的数据盘,并记录数据盘的名称、编号和所属存储系统;
数据盘挂载模块,用于在数据盘创建后,直接根据数据盘编号和需要挂在的虚拟机调用计算系统将新创建的数据盘挂到执行添加数据盘操作的虚拟机;
以及,数据盘初始化模块,用于对新创建的数据盘进行初始化操作,使其变成一个可立即存取文件的文件系统;所述初始化操作包括根据配置的分区表类型创建分区表,创建分区,根据虚拟机的操作系统类型或配置的文件系统类型选择文件系统,使用数据盘统计模块计算的最大的文件系统分配单元大小执行数据盘的快速格式化操作、以及设置数据盘的卷标为创建时指定的数据盘的名称。


2.根据权利要求1所述的网络靶场云平台数据盘管理系统,其特征在于,所述数据盘统计模块,包括:
采集事件订阅单元,用于通过计算系统订阅接口订阅并接收计算系统的数据盘文件系统使用情况采集事件;
采集数据存储单元,用于将采集事件解析过滤后,将文件路径和大小保存到数据库;
以及,统计单元,用于根据采集到的文件信息和给定的空间浪费比率计算出最大的文件系统分配单元大小。


3.根据权利要求1或2所述的网络靶场云平台数据盘管理系统,其特征在于,最大的文件系统分配单元大小的计算方法为:设S为文件分配单元大小,初始值为64k,总文件数为N,第i个文件的长度为Li,那么总大小为SUM(Li),占用空间为SUM(CEIL(Li/S)*S),空间利用率为SUM(Li)/SUM(CEIL(Li/S)*S),空间浪费比率为W=1-SUM(Li)/SUM(CEIL(Li/S)*S);其中CEIL表示向上取整函数,SUM表示求和函数;当W大于给定的空间浪费比率A时,S减半,重复计算,直到W小于或等于A,此时的S作为最大的文件系统分配单元大小。


4.根据权利要求1所述的网络靶场云平台数据盘管理系统,其特征在于,所述数据盘初始化模块,包括:
远程调用单元,用于数据盘初始化模块与数据盘统计模块、计算系统以及存储系统通信;
分区表创建单元,用于获取分区...

【专利技术属性】
技术研发人员:高丽彪谢峥高庆官唐海均程能杰王鹏于靖
申请(专利权)人:南京赛宁信息技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1