集群磁盘共享方法、系统及存储介质与流程

文档序号:25037238发布日期:2021-05-11 17:09阅读:169来源:国知局
集群磁盘共享方法、系统及存储介质与流程

本发明涉及虚拟机的技术领域,尤其是涉及一种集群磁盘共享方法、系统及存储介质。



背景技术:

随着大数据和云计算快速发展,5g及宽频技术普及,信息的数据总量呈爆炸式增长。在海量的数据中快速访问所需的数据,并对数据进行处理,需要不断提高存储产品的访问速度,同时还要保障数据的安全性。

传统的虚拟机提供物理机共享目录,局域网内的共享盘需要手动去挂载,不仅速度慢而且容量小。在多个虚拟机系统同时运行时,传统的方法既要访问本地物理磁盘,又要访问所有虚拟机共享盘和另外一个服务器的数据,使得数据访问操作复杂。



技术实现要素:

本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种集群磁盘共享方法,能够扩大共享存储容量,读写速度快,且能够自动挂载,物理机可以和多个固定硬盘交换数据,不用插u盘等外接存储设备,数据集中存放和处理,节省维护成本。

本发明还提出一种集群磁盘共享系统。

本发明还提出一种计算机可读存储介质。

第一方面,本发明的一个实施例提供了集群磁盘共享方法,包括:

服务管理机将多个固态硬盘组合成逻辑硬盘,并共享所述逻辑硬盘的挂载点;

物理机检测所有集群内所述服务管理机的工作状态;

若所述工作状态为启动状态,所述物理机挂载所有集群内所述服务管理机共享出来的所述挂载点以建立与所述逻辑硬盘的共享。

本发明实施例的集群磁盘共享方法至少具有如下有益效果:服务管理机将多个固态硬盘组合成逻辑硬盘以扩大了共享的逻辑硬盘的容量,而物理机根据集群内所有服务管理机的工作状态自动挂载服务管理机共享出来的挂载点,以建立物理机与逻辑硬盘的共享,以便于用户通过物理机可以访问到更大容量的逻辑硬盘,且自动挂载,节省人力、操作简易。

根据本发明的另一些实施例的集群磁盘共享方法,还包括:

所述物理机将共享的所述逻辑硬盘挂载到虚拟机系统,所述虚拟机系统共享所述逻辑硬盘。

根据本发明的另一些实施例的集群磁盘共享方法,所述逻辑硬盘为raid盘,所述raid盘由多个固态硬盘组成,所述服务管理机将多个固态硬盘组合成逻辑硬盘,并共享所述逻辑硬盘的挂载点,包括:

所述服务管理机采用raid0工作模式将多个固态硬盘组成一个所述raid盘,并将所述raid盘进行格式化;

所述服务管理机通过nfs及samba共享所述raid盘的挂载点。

根据本发明的另一些实施例的集群磁盘共享方法,所述物理机检测所有集群内所述服务管理机的工作状态,包括:

所述物理机发送检测数据包至所有集群内所述服务管理机;

根据所述服务管理机是否接收所述检测数据包确定所述服务管理机的工作状态。

根据本发明的另一些实施例的集群磁盘共享方法,还包括:

若已通信的所述服务管理机在使用过程中所述工作状态为离线状态,所述逻辑硬盘包括:镜像磁盘、业务磁盘和数据磁盘,所述挂载点包括:镜像挂载点、业务挂载点和数据挂载点;所述若所述工作状态为启动状态,所述物理机挂载所述服务管理机共享出来的所述挂载点以建立与所述逻辑硬盘的共享,包括:

若所述工作状态为启动状态;

所述物理机挂载所述服务管理机共享的所述镜像挂载点,建立与所述镜像磁盘的共享;

所述物理机挂载所述服务管理机共享的所述业务挂载点,建立与所述业务磁盘和的共享;

所述物理机挂载所述服务管理机共享的所述数据挂载点,建立与所述数据磁盘的共享。

根据本发明的另一些实施例的集群磁盘共享方法,还包括:

所述服务管理机开机时,对所述逻辑硬盘的文件系统进行校验;

若任意一个所述逻辑硬盘的文件系统异常,则进行修复并获取修复状况;

所述物理机根据所述修复状况确定是否与所述服务管理机进行挂载。

根据本发明的另一些实施例的集群磁盘共享方法,还包括:

若所述物理机接收关机指令或重启指令;

所述物理机停止检测集群内所有所述服务管理机的工作状态,并卸载与所述服务管理机共享的所述逻辑硬盘。

第二方面,本发明的一个实施例提供了集群磁盘共享系统,包括:

服务管理机,用于将多个固态硬盘组合成逻辑硬盘,并共享所述逻辑硬盘的挂载点;

物理机,用于检测集群内所有所述服务管理机的工作状态;

若所述工作状态为启动状态,所述物理机挂载所述服务管理机共享出来的所述挂载点以建立与所述逻辑硬盘的共享。

本发明实施例的集群磁盘共享系统至少具有如下有益效果:服务管理机将多个固态硬盘组合成逻辑硬盘以扩大了共享的逻辑硬盘的容量,而物理机根据服务管理机的工作状态自动挂载服务管理机共享出来的挂载点,以建立物理机与逻辑硬盘的共享,以便于用户通过物理机可以访问到更大容量的逻辑硬盘,且自动挂载,节省人力、操作简易。

第三方面,本发明的一个实施例提供了计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的集群磁盘共享方法。

本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

图1是本发明实施例中集群磁盘共享方法的一具体实施例流程示意图;

图2是本发明实施例中集群磁盘共享方法的另一具体实施例流程示意图;

图3是本发明实施例中集群磁盘共享方法的另一具体实施例流程示意图;

图4是本发明实施例中集群磁盘共享方法的另一具体实施例流程示意图;

图5是本发明实施例中集群磁盘共享方法的另一具体实施例流程示意图;

图6是本发明实施例中集群磁盘共享方法的另一具体实施例流程示意图;

图7是本发明实施例中集群磁盘共享方法的另一具体实施例流程示意图;

图8是本发明实施例中集群磁盘共享系统的一具体实施例模块框图。

附图标记:100、服务管理机;200、物理机;210、虚拟机系统。

具体实施方式

以下将结合实施例对本发明的构思及产生的技术效果进行清楚、完整地描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本发明的一部分实施例,而不是全部实施例,基于本发明的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本发明保护的范围。

在本发明实施例的描述中,如果涉及到“若干”,其含义是一个以上,如果涉及到“多个”,其含义是两个以上,如果涉及到“大于”、“小于”、“超过”,均应理解为不包括本数,如果涉及到“以上”、“以下”、“以内”,均应理解为包括本数。如果涉及到“第一”、“第二”,应当理解为用于区分技术特征,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。

虚拟机(virtualmachine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中基本上都能够实现。挂载(mounting)是指由操作系统使一个存储设备(诸如硬盘、cd-rom或共享资源)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。任何存储设备要使用必须先挂载才能使用,windows驱动检测设备自动挂载,linux系统则需要手动去挂载。

虚拟机领域最重要一个概念就是迁移,把虚拟机从一台物理机前一到另一台物理机,迁移过程后虚拟机仍能正常工作且不能中断用户的业务。实现这一关键技术就是把虚拟化镜像放在共享盘中,然后在不同的物理机实现保存和加载,这些镜像对于用户时完全不透明的。但是现有的迁移只能将某一台物理机的磁盘与另一台物理机进行共享,一台物理机可以共享的磁盘容量小,且读写速度慢,而且需要人工手动进行挂载。

基于此,本申请公开了一种集群共享方法、系统及存储介质,能够扩大共享磁盘的容量、提高读写速度且实现自动挂载,节省人力和挂载简易。

第一方面,参照图1,本发明实施例公开了一种集群磁盘共享方法,包括:

s100、服务管理机将多个固态硬盘组合成逻辑硬盘,并共享逻辑硬盘的挂载点;

s200、物理机检测所有集群内服务管理机的工作状态;

s300、若工作状态为启动状态,物理机挂载所有集群内服务管理机共享出来的挂载点以建立与逻辑硬盘的共享。

其中,服务管理机连接有多个固态硬盘,将多个固态硬盘组合成为一个大容量的逻辑硬盘,然后提供逻辑硬盘的挂载点,物理机根据服务管理机的工作状态去判断是否与服务管理机进行挂载。若服务管理机的工作状态为启动状态,则物理机通过服务管理机共享的挂载点进行挂载,以建立与逻辑硬盘的共享。物理机可以直接访问到服务管理机共享的逻辑硬盘,因此,物理机既可以访问物理机本身的硬盘,还可以和当前服务管理机管理的其他物理机交换数据,还可以和其他服务期交换数据,实现磁盘共享。由于逻辑硬盘由多个固态硬盘组合成,则共享的逻辑硬盘容量大。同时物理机根据服务管理机的工作状态自动实现与服务管理机的挂载,使得物理机访问逻辑硬盘快速且简易。

通过数据和镜像集中存放,极大方便了集群系统迁移和部署、升级,统一由服务管理机维护,另外开机集群单元的所有物理机在都能获取到共享盘异常状态,可以很快确定存储系统是硬件还是软件问题,维护也方便很多。

参照图2,在一些实施例中,集群磁盘共享方法还包括:

s400、物理机将共享的逻辑硬盘挂载到虚拟机系统,虚拟机系统共享逻辑硬盘。

当物理机存在虚拟机系统时,物理机将自身所共享的逻辑硬盘挂载到虚拟机系统,则虚拟机系统实现与该逻辑硬盘的共享,以便于用户通过虚拟机系统访问到服务管理机所共享的逻辑硬盘,因此用户既可以共享到逻辑硬盘还可以使用自身的硬盘。若物理机不存在虚拟机系统,则用户通过物理机直接访问服务管理机所共享的逻辑硬盘。通过物理机与虚拟机系统实现数据盘共享,方便用户完成与物理机数据共享。通过共享磁盘,当前集群内的物理机可以和当前服务器管理的其他物理机交换数据,还可以和级联的其它任意集群服务器管理的物理机交换数据。

其中,虚拟机系统检测逻辑硬盘的挂载和卸载,若物理机实现与逻辑硬盘的挂载,虚拟机系统挂载到物理机,且虚拟机系统可共享与物理机和服务管理机所共享的逻辑硬盘,以建立与逻辑硬盘的共享。若物理机卸载逻辑硬盘,则虚拟机系统后台程序可以自动卸载所共享的逻辑硬盘,从而实现了逻辑硬盘的自动挂载和卸载。

参照图3,在一些实施例中,逻辑硬盘为raid盘,raid盘由多个固态硬盘组成,步骤s100包括:

s110、服务管理机采用raid0工作模式将多个固态硬盘组成一个raid盘,并将raid盘进行格式化;

s120、服务管理机通过nfs及samba共享raid盘的挂载点。

其中,服务管理机设置若干个,且服务管理机以网络级联。每一个服务管理机包含多个虚拟化主板和嵌入式单板。虚拟化主板的物理机运行的是linux系统,其上运行的是virtualbox或kvm等虚拟机系统,虚拟机系统上运行的是用户使用的windows或linux系统。服务管理机将多个虚拟化主板的固态硬盘通过raido工作模式组合成一个大容量的raid盘,raido工作模式就是将数据块存放在不同的存储节点,提供数据访问的并行性,又不影响固态硬盘访问速度。组成raid盘后需要对raid盘进行格式化处理,然后创建文件系统,以便于用户可以访问raid盘里面的数据。其中,创建了ext4文件系统的raid盘,服务管理机挂载完成后提供挂载点,集群内所有的物理机都可以实现自动挂载,以扩大了raid盘的容量,且数据读写速度可以保持与固定硬盘一样的高速度。

其中,逻辑硬盘包括:镜像磁盘、业务磁盘和数据磁盘,且镜像磁盘存放集群的虚拟机镜像文件,业务磁盘存放集群升级管理软件,数据磁盘存放用户数据。其中虚拟机镜像文件和集群升级管理软件对用户不可见,磁盘数据是用户可见的。通过将逻辑硬盘根据不同的数据类型存放在不同的磁盘以实现“分区”,便于用户根据需求访问到不同的磁盘。

参照图4,在一些实施例中,步骤s200包括:

s210、物理机发送检测数据包至所有集群内服务管理机;

s220、根据服务管理机是否接收检测数据包确定服务管理机的工作状态。

物理机设置一个后台运行程序,且后台运行程序在开机时启动,通过发送检测数据包至服务管理机,以通过服务管理机是否接收检测数据包以检测服务管理机的工作状态。若服务管理机接收检测数据包则证明服务管理机的工作状态为启动状态,若服务管理机没有接收检测数据包则证明其工作状态为离线状态。通过服务管理机是否接收检测数据包以判断服务管理机的工作状态,便于能够快速且简易地判断服务管理机处于启动状态还是关闭状态。

其中,多个服务管理机之间有网络级联,则物理机需要检测其他服务管理机的连接,若物理机使用过程中与已连接的服务管理机断开,则物理机需要卸载原先挂载且已断开连接的服务管理机共享的挂载点,并实时检测其他服务管理机的工作状态,以切换连接到其他服务管理机,与其他raid盘进行共享。

在本实施例中检测数据包为icmp数据包,icmp数据包是指用于探查网络通不通、主机是否可达、路由是否可用等网络问题的消息,因此通过发送icmp数据包至服务管理机,能够准确的判断出服务管理机的工作状态。

参照图5,在一些实施例中,集群磁盘共享方法还包括:

s500、若已通信的服务管理机在使用过程中工作状态为离线状态,物理机卸载已共享的逻辑硬盘。

当物理机检测服务管理机的工作状态为启动状态,物理机挂载服务管理机共享的挂载点,以建立与逻辑硬盘的共享。若物理机检测已连接的服务管理机的工作状态为离线状态,则需要卸载已共享的逻辑硬盘。

例如,假设有两个服务管理机,分别定义为第一服务管理机和第二服务管理机,物理机与第一服务管理机共享逻辑硬盘,当物理机在使用过程中,第一服务管理机的网线连接断开,则物理机无法访问到第一服务管理机的逻辑硬盘。物理机发送的icmp数据包至第一服务管理机检测到第一服务管理机未接收,则认为第一服务管理机的工作状态为离线状态,则卸载与第一服务管理机共享的逻辑硬盘。物理机检测第二服务管理机的工作状态,若第二服务管理机的工作状态为启动状态,则物理机挂载第二服务管理机共享出来的挂载点,同时对挂载的第二服务管理机的状态做上标记,以便于物理机再次进行检测时不再对已挂载的服务管理机进行检测,节省了物理机检测的时间。

参照图6,在一些实施例中,挂载点包括:镜像挂载点、业务挂载点和数据挂载点;步骤s300包括:

s310、若工作状态为启动状态;

s320、物理机挂载服务管理机共享的镜像挂载点,建立与镜像磁盘的共享;

s330、物理机挂载服务管理机共享的业务挂载点,建立与业务磁盘和的共享;

s340、物理机挂载服务管理机共享的数据挂载点,建立与数据磁盘的共享。

不同的磁盘存放的文件不同以建立多个“逻辑分区”,且物理机根据与不同挂载点进行挂载,以建立对应的磁盘共享,以实现共享的逻辑硬盘的挂载点功能划分,以便于物理机针对性地访问磁盘。其中,物理机所挂载地业务磁盘是不可见的,可以利用业务磁盘进行升级或者其他维护工作。因此,通过设置不同的挂载点,以便于物理机通过不同挂载点挂载到对应的磁盘,访问集群内的服务管理机共享的数据。

参照图7,在一些实施例中,集群磁盘共享方法还包括:

s600、服务管理机开机时,对逻辑硬盘的文件系统进行校验;

s700、若任意一个逻辑硬盘的文件系统异常,则进行修复并获取修复状况;

s800、物理机根据修复状况确定是否与服务管理机进行挂载。

由于逻辑硬盘内存放都是极为重要数据,因此逻辑硬盘的安全性极为重要。服务管理机在执行特别的操作要确保物理机或虚拟机系统的数据同步到逻辑硬盘。服务管理机在开机时,需要先检测固态硬盘的个数,若固态硬盘个数正常则对逻辑硬盘的文件系统进行校验。逻辑硬盘的文件系统在有数据读写时掉电极易出现异常,出现异常就无法挂载该逻辑硬盘,因此检测文件系统异常时,服务管理机对文件系统进行修复并获取修复状态,然后服务管理机以广播的方式发送修复异常状态给集群内的物理机,确保在所有物理机挂载失败时知道挂载异常的原因,以便于根据原因进行维护。若修复程序里任何一个步骤失败,则物理机无法实现与服务管理机的挂载,若修复状态为修复成功,则物理机能够与服务管理机进行自动挂载和共享逻辑硬盘。因此,通过修复文件系统,可以找回丢失的数据,确保了共享的逻辑硬盘更加安全。

在一些实施例中,集群磁盘共享方法还包括:

s900、若物理机接收关机指令或重启指令;物理机停止检测集群内所有服务管理机的工作状态,并卸载与服务管理机共享的逻辑硬盘。

由于物理机挂载逻辑硬盘依赖网络,且逻辑硬盘的文件系统通过nfs及samba共享出来给物理机使用,但是关机时nfs无正常卸载极易出现卡死状态。因此在接收关机指令或重启指令时,需要先卸载逻辑硬盘。所以物理机接收关机指令或重启指令,物理机需要先停止检测服务管理机的工作状态,再卸载逻辑硬盘,以确保关机前用户的相关数据都同步到逻辑硬盘,再安全地卸载逻辑硬盘,卸载逻辑硬盘后,物理机再执行关机操作,可以有效的防止直接执行关机指令导致物理机的数据丢失。

下面参考图1至图7以一个具体的实施例详细描述根据本发明实施例的集群共享方法。值得理解的是,下述描述仅是示例性说明,而不是对发明的具体限制。

服务管理机将多个固态硬盘以raido工作模式组合成一个大容量的raid盘。组合成raid盘,组成raid盘后对raid盘进行格式化处理,创建文件系统,且raid盘内的文件系统的格式为ext4。然后服务管理机提供镜像挂载点、业务挂载点和数据挂载点。若服务管理机接收检测数据包则证明服务管理机的工作状态为启动状态,若服务管理机没有接收检测数据包则证明其工作状态为离线状态。若服务管理机的工作状态为启动状态;物理机挂载服务管理机共享的镜像挂载点,建立与镜像磁盘的共享;物理机挂载服务管理机共享的业务挂载点,建立与业务磁盘和的共享;物理机挂载服务管理机共享的数据挂载点,建立与数据磁盘的共享。若物理机检测已连接的服务管理机的工作状态为离线状态,则需要卸载已共享的逻辑硬盘。当物理机存在虚拟机系统时,物理机将自身所共享的逻辑硬盘挂载到虚拟机系统,则虚拟机系统实现与该逻辑硬盘的共享,以便于用户通过虚拟机系统访问到服务管理机所共享的逻辑硬盘。

综上,物理机或虚拟机系统能够自动挂载和卸载到服务管理机提供的逻辑硬盘,且逻辑硬盘由多个固态硬盘组成,服务管理机间的物理机可以交换数据,同时贡献了读写速度。

第二方面,参照图8,本发明实施例公开了一种集群磁盘共享系统,包括:服务管理机100和物理机200,服务管理机100用于将多个固态硬盘组合成逻辑硬盘并共享逻辑硬盘的挂载点;物理机200用于检测所述服务管理机100的工作状态;若工作状态为启动状态,物理机200挂载服务管理机100共享出来的挂载点以建立与逻辑硬盘的共享。

其中,物理机200设有虚拟机系统210,物理机200将共享的逻辑硬盘挂载到虚拟机系统210,虚拟机系统210共享逻辑硬盘。

通过物理机200自动挂载到逻辑硬盘,且将共享的逻辑硬盘挂载到虚拟机系统210上,实现了逻辑硬盘的自动挂载,而且逻辑硬盘由多个固态硬盘组合形成,因此物理机200或虚拟机系统210能够访问的逻辑硬盘容量增大。

其中,集群磁盘共享系统的具体操作过程参照第一方面的集群磁盘共享方法,此处不再赘述。

第三方面,本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行如第一方面的集群磁盘共享方法。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。此外,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1