CN111078658A - 一种集群文件系统挂载的方法和设备 - Google Patents
一种集群文件系统挂载的方法和设备 Download PDFInfo
- Publication number
- CN111078658A CN111078658A CN201911050138.1A CN201911050138A CN111078658A CN 111078658 A CN111078658 A CN 111078658A CN 201911050138 A CN201911050138 A CN 201911050138A CN 111078658 A CN111078658 A CN 111078658A
- Authority
- CN
- China
- Prior art keywords
- file system
- mounting
- metadata
- mount
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000004044 response Effects 0.000 claims abstract description 31
- 230000008569 process Effects 0.000 claims description 28
- 230000005012 migration Effects 0.000 abstract description 8
- 238000013508 migration Methods 0.000 abstract description 8
- 238000004590 computer program Methods 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/119—Details of migration of file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本发明提供了一种集群文件系统挂载的方法和设备,该方法包括以下步骤:读取文件系统所在节点的元数据;响应于元数据为空并且不存在挂载点,将存储器挂载为文件系统;响应于挂载成功并且文件系统能够正常工作,在节点保留文件系统的挂载点;结束挂载等待文件系统启用。通过使用本发明的方法,能够加速文件系统并行启动和在节点间迁移的速度。同时避免在节点反复故障时,发生文件系统状态混乱的情况。
Description
技术领域
本领域涉及计算机领域,并且更具体地涉及一种集群文件系统挂载的方法和设备。
背景技术
在服务器、存储等领域中,为保证业务持续运行,集群技术得到了广泛应用。通过将多个节点组成集群,将业务在其中一个或多个节点上运行,保证其中某个节点无法工作时业务仍能继续运行。
存储系统集群一般会将存储业务作为文件系统资源进行维护,由其中一个或多个活动节点挂载存储器,并管理对存储器的访问,导出为文件系统。当某个活动节点无法工作时,集群会把资源迁移至其他空闲节点,挂载并导出。在故障场景下,可能出现多个节点失效,或者某个节点频繁失效等情况,导致资源反复迁移、文件系统在其他节点反复重新挂载。
文件系统资源迁移需要尽可能保证迁移速度快、数据不丢失,在文件系统规模庞大、业务读写频繁的场景下,需要设计高效、安全的挂载机制。
发明内容
有鉴于此,本发明实施例的目的在于提出一种集群文件系统挂载的方法,能够加速文件系统并行启动和在节点间迁移的速度。同时避免在节点反复故障时,发生文件系统状态混乱的情况。
基于上述目的,本发明的实施例的一个方面提供了一种集群文件系统挂载的方法,包括以下步骤:
读取文件系统所在节点的元数据;
响应于元数据为空并且不存在挂载点,将存储器挂载为文件系统;
响应于挂载成功并且文件系统能够正常工作,在节点保留文件系统的挂载点;
结束挂载等待文件系统启用。
根据本发明的一个实施例,还包括:响应于元数据为节点以外的其他节点,返回错误。
根据本发明的一个实施例,还包括:响应于元数据为节点并且存在异步挂载进程,返回错误。
根据本发明的一个实施例,将存储器挂载为文件系统包括:为挂载进程设置参数,参数包括要挂载的文件系统名、对应存储器和挂载参数。
根据本发明的一个实施例,还包括:响应于元数据为空并且存在挂载点,返回成功启动状态等待文件系统启用。
本发明的实施例的另一个方面,还提供了一种集群文件系统挂载的设备,其特征在于,设备包括:
至少一个处理器;和
存储器,存储器存储有处理器可运行的程序代码,程序代码在被处理器运行时执行以下步骤:
读取文件系统所在节点的元数据;
响应于元数据为空并且不存在挂载点,将存储器挂载为文件系统;
响应于挂载成功并且文件系统能够正常工作,在节点保留文件系统的挂载点;
结束挂载等待文件系统启用。
根据本发明的一个实施例,错误阈值为相同重试请求的重试次数。
根据本发明的一个实施例,程序代码在被处理器运行时还执行以下步骤:响应于元数据为节点以外的其他节点,返回错误。
根据本发明的一个实施例,程序代码在被处理器运行时还执行以下步骤:响应于元数据为节点并且存在异步挂载进程,返回错误。
根据本发明的一个实施例,将存储器挂载为文件系统包括:为挂载进程设置参数,参数包括要挂载的文件系统名、对应存储器和挂载参数。
根据本发明的一个实施例,程序代码在被处理器运行时还执行以下步骤:响应于元数据为空并且存在挂载点,返回成功启动状态等待文件系统启用。
本发明具有以下有益技术效果:本发明实施例提供的集群文件系统挂载的方法,通过读取文件系统所在节点的元数据;响应于元数据为空并且不存在挂载点,将存储器挂载为文件系统;响应于挂载成功并且文件系统能够正常工作,在节点保留文件系统的挂载点;结束挂载等待文件系统启用的技术方案,能够加速文件系统并行启动和在节点间迁移的速度。同时避免在节点反复故障时,发生文件系统状态混乱的情况。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明一个实施例的集群文件系统挂载的方法的示意性流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
基于上述目的,本发明的实施例的第一个方面,提出了一种集群文件系统挂载的方法的一个实施例。图1示出的是该方法的示意性流程图。
如图1中所示,该方法可以包括以下步骤:
S1读取文件系统所在节点的元数据;
S2响应于元数据为空并且不存在挂载点,将存储器挂载为文件系统;
S3响应于挂载成功并且文件系统能够正常工作,在节点保留文件系统的挂载点;
S4结束挂载等待文件系统启用。
本发明提出了集群中文件系统的挂载方法,在新节点触发文件系统的启动事件时,将每个文件系统的挂载和检查操作都在后台异步、并行执行,待返回挂载结果后再提供存储业务。
通过以上技术方案,能够加速文件系统并行启动和在节点间迁移的速度。同时避免在节点反复故障时,发生文件系统状态混乱的情况。
首先,定义一个元数据,例如对于每个文件系统fs资源定义一个元数据mounting(fs),定义为fs在运行挂载的节点名,该元数据可以在集群各节点间同步更新和读取。元数据mounting(fs)的默认值为空;若文件系统正在执行挂载,则在集群内将元数据mounting(fs)置为正在挂载的节点名;挂载完毕,无论成功还是失败,均清空元数据mounting(fs)的值。
同时根据以上定义,若元数据mounting(fs)为非空,则代表文件系统正在某个节点上运行挂载中,此时将文件系统的运行状态定义为未启动。
在本发明的一个优选实施例中,还包括:响应于元数据为节点以外的其他节点,返回错误。在文件系统所在的节点进行挂载,元数据或者为空或者为所在节点,如果是所在节点以外的其他节点说明存在竞争启动,此时返回错误。
在本发明的一个优选实施例中,还包括:响应于元数据为节点并且存在异步挂载进程,返回错误。元数据为节点说明在该节点正在执行挂载,如果还有异步挂载进程则说明村啊在重复启动,此时返回错误。
异步挂载进程为async_mount(fs,dev,option),输入参数为要挂载的文件系统fs、对应存储器dev、挂载参数option。挂载进程不阻塞任何与集群有关的操作,同一节点上可并行执行多个文件系统的挂载进程。该异步挂载进行在执行时包括以下流程:
a)将存储器dev挂载为文件系统fs。如果挂载成功,继续执行;如果失败,跳到c。
b)检查文件系统fs能否正常工作。如果能正常工作,则在本节点保留文件系统挂载点,结束进程并触发一次启动事件;如果不能正常工作,则执行c。
c)修复文件系统fs。如果修复成功,继续执行;如果修复失败,不保留挂载点,结束进程。
d)将存储器dev挂载为文件系统fs。如果挂载成功,在本节点保留文件系统挂载点,结束进程;如果失败,不保留挂载点,结束进程并触发一次启动事件。
文件系统fs在节点N的启动事件具有以下流程:
a)读取元数据mounting(fs)。如果元数据mounting(fs)为空,跳到c;如果元数据mounting(fs)为N,执行b;如果mounting(fs)为N以外其他节点,说明存在竞争启动,返回错误。
b)检查本节点上是否有在运行的异步挂载进行async_mount(fs)。如果有,说明存在重复启动,返回错误;如果没有,清空元数据mounting(fs)并继续执行。
c)检查是否存在挂载点。如果有,说明本次启动事件为异步挂载进程触发,已经挂载成功,继续执行;如果没有,则跳到e。
d)处理其他操作,最后返回成功启动状态,文件系统可用,过程结束。
e)赋值元数据mounting(fs)为N,并启动异步挂载进程async_mount(fs),返回未启动状态,过程结束。
在本发明的一个优选实施例中,将存储器挂载为文件系统包括:为挂载进程设置参数,参数包括要挂载的文件系统名、对应存储器和挂载参数。
在本发明的一个优选实施例中,还包括:响应于元数据为空并且存在挂载点,返回成功启动状态等待文件系统启用。
通过以上技术方案,能够加速文件系统并行启动和在节点间迁移的速度。同时避免在节点反复故障时,发生文件系统状态混乱的情况。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本发明实施例公开的方法中限定的上述功能。
基于上述目的,本发明的实施例的第二个方面,提出了一种集群文件系统挂载的设备,其特征在于,设备包括:
至少一个处理器;和
存储器,存储器存储有处理器可运行的程序代码,程序代码在被处理器运行时执行以下步骤:
读取文件系统所在节点的元数据;
响应于元数据为空并且不存在挂载点,将存储器挂载为文件系统;
响应于挂载成功并且文件系统能够正常工作,在节点保留文件系统的挂载点;
结束挂载等待文件系统启用。
在本发明的一个优选实施例中,程序代码在被处理器运行时还执行以下步骤:响应于元数据为节点以外的其他节点,返回错误。
在本发明的一个优选实施例中,程序代码在被处理器运行时还执行以下步骤:响应于元数据为节点并且存在异步挂载进程,返回错误。
在本发明的一个优选实施例中,将存储器挂载为文件系统包括:为挂载进程设置参数,参数包括要挂载的文件系统名、对应存储器和挂载参数。
在本发明的一个优选实施例中,程序代码在被处理器运行时还执行以下步骤:响应于元数据为空并且存在挂载点,返回成功启动状态等待文件系统启用。
通过以上技术方案,能够加速文件系统并行启动和在节点间迁移的速度。同时避免在节点反复故障时,发生文件系统状态混乱的情况。
需要特别指出的是,上述系统的实施例采用了上述方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到上述方法的其他实施例中。
此外,上述方法步骤以及系统单元或模块也可以利用控制器以及用于存储使得控制器实现上述步骤或单元或模块功能的计算机程序的计算机可读存储介质实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
上述实施例,特别是任何“优选”实施例是实现的可能示例,并且仅为了清楚地理解本发明的原理而提出。可以在不脱离本文所描述的技术的精神和原理的情况下对上述实施例进行许多变化和修改。所有修改旨在被包括在本公开的范围内并且由所附权利要求保护。
Claims (10)
1.一种集群文件系统挂载的方法,其特征在于,包括以下步骤:
读取文件系统所在节点的元数据;
响应于所述元数据为空并且不存在挂载点,将存储器挂载为所述文件系统;
响应于所述挂载成功并且所述文件系统能够正常工作,在所述节点保留所述文件系统的挂载点;
结束挂载等待文件系统启用。
2.根据权利要求1所述的方法,其特征在于,还包括:响应于所述元数据为所述节点以外的其他节点,返回错误。
3.根据权利要求1所述的方法,其特征在于,还包括:响应于所述元数据为所述节点并且存在异步挂载进程,返回错误。
4.根据权利要求1所述的方法,其特征在于,将存储器挂载为所述文件系统包括:为挂载进程设置参数,所述参数包括要挂载的文件系统名、对应存储器和挂载参数。
5.根据权利要求1所述的方法,其特征在于,还包括:响应于所述元数据为空并且存在挂载点,返回成功启动状态等待文件系统启用。
6.一种集群文件系统挂载的设备,其特征在于,所述设备包括:
至少一个处理器;和
存储器,所述存储器存储有处理器可运行的程序代码,所述程序代码在被处理器运行时执行以下步骤:
读取文件系统所在节点的元数据;
响应于所述元数据为空并且不存在挂载点,将存储器挂载为所述文件系统;
响应于所述挂载成功并且所述文件系统能够正常工作,在所述节点保留所述文件系统的挂载点;
结束挂载等待文件系统启用。
7.根据权利要求6所述的设备,其特征在于,所述程序代码在被处理器运行时还执行以下步骤:响应于所述元数据为所述节点以外的其他节点,返回错误。
8.根据权利要求6所述的设备,其特征在于,所述程序代码在被处理器运行时还执行以下步骤:响应于所述元数据为所述节点并且存在异步挂载进程,返回错误。
9.根据权利要求6所述的设备,其特征在于,将存储器挂载为所述文件系统包括:为挂载进程设置参数,所述参数包括要挂载的文件系统名、对应存储器和挂载参数。
10.根据权利要求6所述的设备,其特征在于,所述程序代码在被处理器运行时还执行以下步骤:响应于所述元数据为空并且存在挂载点,返回成功启动状态等待文件系统启用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911050138.1A CN111078658B (zh) | 2019-10-31 | 2019-10-31 | 一种集群文件系统挂载的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911050138.1A CN111078658B (zh) | 2019-10-31 | 2019-10-31 | 一种集群文件系统挂载的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111078658A true CN111078658A (zh) | 2020-04-28 |
CN111078658B CN111078658B (zh) | 2022-08-12 |
Family
ID=70310601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911050138.1A Active CN111078658B (zh) | 2019-10-31 | 2019-10-31 | 一种集群文件系统挂载的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111078658B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484322A (zh) * | 2016-09-12 | 2017-03-08 | 华为技术有限公司 | 一种挂载文件系统的方法、装置及设备 |
CN109086079A (zh) * | 2018-06-11 | 2018-12-25 | 青岛海信移动通信技术股份有限公司 | 一种存储设备挂载管理方法及装置 |
-
2019
- 2019-10-31 CN CN201911050138.1A patent/CN111078658B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484322A (zh) * | 2016-09-12 | 2017-03-08 | 华为技术有限公司 | 一种挂载文件系统的方法、装置及设备 |
CN109086079A (zh) * | 2018-06-11 | 2018-12-25 | 青岛海信移动通信技术股份有限公司 | 一种存储设备挂载管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111078658B (zh) | 2022-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107016480B (zh) | 任务调度方法、装置及系统 | |
CN108334396B (zh) | 一种数据处理方法和装置、资源组的创建方法和装置 | |
CN108196940B (zh) | 删除容器的方法和相关设备 | |
CN107729176B (zh) | 一种配置文件管理系统的容灾方法及容灾系统 | |
CN110046029A (zh) | 应用于集群内多级缓存的数据处理方法和装置 | |
CN111143044B (zh) | 任务调度管理系统、方法、装置及其可存储介质 | |
CN112015595B (zh) | 主从数据库的切换方法、计算设备及存储介质 | |
CN106202082B (zh) | 组装基础数据缓存的方法及装置 | |
CN111666088A (zh) | Pod的更替方法、装置、电子设备及计算机可读存储介质 | |
CN115167782B (zh) | 临时存储副本管理方法、系统、设备和存储介质 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
CN112363762B (zh) | 一种融合命令处理方法、系统、设备以及介质 | |
CN107526838B (zh) | 数据库集群扩容的方法和装置 | |
CN116483546B (zh) | 分布式训练任务调度方法、装置、设备及存储介质 | |
CN111078658B (zh) | 一种集群文件系统挂载的方法和设备 | |
CN113076248A (zh) | 一种应用处理方法、装置、设备及可读存储介质 | |
CN116627659A (zh) | 模型检查点文件保存方法、装置、设备及存储介质 | |
CN114546705B (zh) | 操作响应方法、操作响应装置、电子设备以及存储介质 | |
CN108121514B (zh) | 元信息更新方法、装置、计算设备及计算机存储介质 | |
CN113342499B (zh) | 分布式任务调用方法、装置、设备、存储介质、程序产品 | |
CN113342511A (zh) | 一种分布式任务管理系统及方法 | |
CN106055322A (zh) | 一种流程调度方法及装置 | |
CN110716972A (zh) | 高频率调用外部接口出错的处理方法和装置 | |
CN112579145A (zh) | 应用部署方法及装置 | |
CN114356214B (zh) | 一种针对kubernetes系统提供本地存储卷的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |