CN105468989B - 基于Linux内核监控的云存储配额管理方法 - Google Patents
基于Linux内核监控的云存储配额管理方法 Download PDFInfo
- Publication number
- CN105468989B CN105468989B CN201410447814.XA CN201410447814A CN105468989B CN 105468989 B CN105468989 B CN 105468989B CN 201410447814 A CN201410447814 A CN 201410447814A CN 105468989 B CN105468989 B CN 105468989B
- Authority
- CN
- China
- Prior art keywords
- catalogue
- file system
- monitoring
- cloud storage
- storage
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种云存储环境下的文件系统存储配额管理方法。该方法使用Linux内核监控的方法实现文件系统按目录划分的存储配额管理。存储配额管理服务启动后,首先读取存储配额参数,根据配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息。开启目录监控线程,创建监听端口,监控线程根据接收到的消息,对该目录做出禁止或允许写人的控制。调用内核监控,获取文件系统变化事件,根据事件,计算相关文件系统目录存储空间变化,根据目录存储空间占用,禁止或允许相关文件系统目录数据写入。该方法使用内核监控实时获取文件系统变化事件,能够准确、高效地实现云存储环境下的文件系统存储配额管理。
Description
技术领域
本发明涉及计算机系统的云存储技术领域,特别是涉及到一种基于Linux内核监控的云存储配额管理方法。
背景技术
云存储是在云计算(cloud computing)概念上延伸和发展出来的一个新的概念,是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储对用户来讲,不是指某个具体的设备,而是指由许许多多个存储设备和服务器所构成的集合体。用户使用云存储,并不是使用某个存储设备,而是使用整个云存储系统带来的一种数据访问服务。严格来讲,云存储是一种服务。云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变。云存储作为服务,首先需要用户申请,经过审批后生成服务实例,服务实例管理过程中,分配给用户的文件系统目录需要实现配额管理。现有的文件系统配额管理技术,操作系统实现的是面向系统用户和组的配额,未实现面向目录的配额管理。已有的一种文件系统配额管理方法、装置及系统,实现了面向目录的配额管理,但实时性不能满足云存储配额管理的需求。根据云存储配额管理的需求特点,这不仅需要配额管理的准确,更重要的是实时性。
发明内容
本发明的目的是针对现有技术的不足,提供一种云存储环境下的基于Linux内核监控的云存储配额管理方法。该方法依据云存储管理的文件系统特点,使用Linux内核监控的方法实现文件系统按目录划分的存储配额管理。
本发明的目的可通过如下技术措施来实现,云存储作为服务,首先需要用户申请,经过审批后生成服务实例,服务实例管理过程中,分配给用户的文件系统目录需要实现配额管理。
一种基于Linux内核监控的云存储配额管理方法包括:
步骤1,读取存储配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息,开启目录监控线程,根据线程接收到的消息,对该目录做出控制;
步骤2,调用内核监控,获取文件系统变化事件,计算相关文件系统目录存储空间变化,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。
上述方案还包括:
在步骤1中,系统运行一个守护服务程序cloudserver,监控文件系统目录,对该目录的写入做出限制策略;
云存储的文件系统通过服务器共享,在客户端访问,各个客户端对文件系统挂载目录的读写不一样,时间不同,对目录的计算统计,有的在客户端就可以做出统计并判断,有的需要服务器端做出控制,同时需要客户端和服务器端进行信息交互;
系统使用一个守护程序cloudserverd监控cloudserver服务程序,一旦cloudserver服务程序由于某种原因出现故障,系统能够自动恢复其运行;cloudserverd打开程序运行文件,读取cloudserver服务程序的进程号,根据进程号,读取/proc文件系统,判断cloudserver服务是否正常,若不正常,则重启它。
上述方案进一步包括:
在步骤1中,监控线程,打开消息队列,等待接收发来的消息,解析消息中的相关内容,包括目录中文件的空间占用信息,判断是否限制或允许目录的写入,需要时做相关处理,不需调整时,继续接收消息。
在步骤2中,调用内核文件系统监控inotify,当文件系统发生变化时,操作系统会自动触发相关事件,处理线程截获对文件系统空间变化敏感的几种事件,包括文件的创建IN_CREATE、移动IN_MOVE、修改IN_MODIFY、删除IN_DELETE。
在步骤2中,根据处理线程截获的事件,计算相关文件系统目录存储空间变化,发送消息给监控线程,实现目录控制。
在步骤1中,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息只需在存储配额管理服务启动后执行一次。
本发明依据云存储管理的文件系统特点,使用Linux内核监控的方法实现文件系统按目录划分的存储配额管理。存储配额管理服务启动后,首先读取存储配额参数,根据配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息。开启目录监控线程,创建监听端口,监控线程根据接收到的消息,对该目录做出禁止或允许写人的控制。调用内核监控,获取文件系统变化事件,包括文件的创建、移动、修改、删除等,根据事件,计算相关文件系统目录存储空间变化,每隔给定时间间隔,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。该方法使用内核监控实时获取文件系统变化事件,以此确定目录存储空间占用,能够准确、高效地实现云存储环境下的文件系统存储配额管理。
附图说明
图1为本发明的基于Linux内核监控的云存储配额管理方法的一具体实施例的流程图。
具体实施方式
为使本发明的上述和其他目的、特征和优点能更明显易懂,下文特举出较佳实施例,并配合所附图式,作详细说明如下。
如图1所示,图1为本发明的基于Linux内核监控的云存储配额管理方法的流程图。
在步骤101,存储配额管理服务启动后,读取存储配额参数,作为相关文件系统目录配额的依据。流程进入到步骤102。
在步骤102,根据配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息,包括文件名称、大小和修改时间等。流程进入到步骤103。
在步骤103,开启目录监控线程,创建监听端口,监控线程根据接收到的消息,对该目录做出禁止或允许写人的控制。流程进入到步骤104。
在步骤104,调用内核文件系统监控inotify,获取文件系统变化事件,包括文件的创建、移动、修改、删除等。流程进入到步骤105。
在步骤105,根据事件,计算相关文件系统目录存储空间变化。流程进入到步骤106。
在步骤106,每隔给定时间间隔,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值。流程进入到步骤107。
在步骤107,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。
Claims (2)
1.基于Linux内核监控的云存储配额管理方法,其特征在于包括:
步骤1,读取存储配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息,开启目录监控线程,根据线程接收到的消息,对该目录做出控制;其中:
系统运行一个守护服务程序cloudserver,监控文件系统目录,对该目录的写入做出限制策略;
云存储的文件系统通过服务器共享,在客户端访问,各个客户端对文件系统挂载目录的读写不一样,时间不同,对目录的计算统计,有的在客户端就可以做出统计并判断,有的需要服务器端做出控制,同时需要客户端和服务器端进行信息交互;
系统使用一个守护程序cloudserverd监控cloudserver服务程序,一旦cloudserver服务程序由于某种原因出现故障,系统能够自动恢复其运行;cloudserverd打开程序运行文件,读取cloudserver服务程序的进程号,根据进程号,读取/proc文件系统,判断cloudserver服务是否正常,若不正常,则重启它;
监控线程,打开消息队列,等待接收发来的消息,解析消息中的相关内容,包括目录中文件的空间占用信息,判断是否限制或允许目录的写入,需要时做相关处理,不需调整时,继续接收消息;
步骤2,调用内核监控,获取文件系统变化事件,计算相关文件系统目录存储空间变化,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值,给监控线程发送消息,禁止或允许相关文件系统目录数据写入;其中:
调用内核文件系统监控inotify,当文件系统发生变化时,操作系统会自动触发相关事件,处理线程截获对文件系统空间变化敏感的几种事件,包括文件的创建IN_CREATE、移动IN_MOVE、修改IN_MODIFY、删除IN_DELETE;
根据处理线程截获的事件,计算相关文件系统目录存储空间变化,发送消息给监控线程,实现目录控制。
2.根据权利要求1所述的基于Linux内核监控的云存储配额管理方法,其特征在于,该基于Linux内核监控的云存储配额管理方法还包括,在步骤1中,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息只需在存储配额管理服务启动后执行一次。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410447814.XA CN105468989B (zh) | 2014-09-04 | 2014-09-04 | 基于Linux内核监控的云存储配额管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410447814.XA CN105468989B (zh) | 2014-09-04 | 2014-09-04 | 基于Linux内核监控的云存储配额管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105468989A CN105468989A (zh) | 2016-04-06 |
CN105468989B true CN105468989B (zh) | 2018-10-12 |
Family
ID=55606672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410447814.XA Active CN105468989B (zh) | 2014-09-04 | 2014-09-04 | 基于Linux内核监控的云存储配额管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105468989B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776057B (zh) * | 2016-11-22 | 2020-04-17 | 北京云知声信息技术有限公司 | 事件处理方法及装置 |
CN107038373A (zh) * | 2017-04-28 | 2017-08-11 | 北京洋浦伟业科技发展有限公司 | 一种进程调试检测方法及装置 |
CN107196962B (zh) * | 2017-06-30 | 2020-05-29 | 郑州云海信息技术有限公司 | 一种用户访问控制方法及系统 |
CN107391045B (zh) * | 2017-08-01 | 2021-02-19 | 苏州浪潮智能科技有限公司 | 一种目录空间配额方法及系统 |
CN107506440A (zh) * | 2017-08-24 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种分布式系统目录的配额方法及装置 |
CN109508318B (zh) * | 2018-11-15 | 2021-01-22 | 北京金山云网络技术有限公司 | 一种存储量统计方法、装置、电子设备和可读存储介质 |
CN109634759A (zh) * | 2018-12-12 | 2019-04-16 | 浪潮(北京)电子信息产业有限公司 | 一种分布式存储系统的配额管理方法、系统及相关组件 |
CN109981580A (zh) * | 2019-02-25 | 2019-07-05 | 浪潮软件集团有限公司 | 一种防止cmsp被动态跟踪的安全方法和系统 |
CN110825703B (zh) * | 2019-11-01 | 2023-04-11 | 浪潮云信息技术股份公司 | 一种基于定时任务实现文件系统弹性伸缩的方法 |
CN113687971B (zh) * | 2021-08-24 | 2023-06-27 | 杭州迪普科技股份有限公司 | 内存映象文件的生成方法及装置 |
CN115422121B (zh) * | 2022-07-25 | 2023-06-06 | 安芯网盾(北京)科技有限公司 | 利用inotify监控文件的方法、装置、电子设备和存储介质 |
CN116431335B (zh) * | 2023-03-21 | 2024-06-07 | 哈尔滨工业大学 | 一种基于控制组的容器消息队列资源配额控制方法 |
CN118364495B (zh) * | 2024-06-19 | 2024-08-30 | 北京辰信领创信息技术有限公司 | 基于Linux应用层的实时访问控制方法、计算机装置 |
CN118377434B (zh) * | 2024-06-21 | 2024-09-06 | 杭州海康威视系统技术有限公司 | 数据处理方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101178662A (zh) * | 2006-11-08 | 2008-05-14 | 中兴通讯股份有限公司 | 一种嵌入式linux应用进程的监控方法 |
CN102073464A (zh) * | 2011-01-14 | 2011-05-25 | 南开大学 | 一种按需分配增量卷的创建方法 |
CN103488575A (zh) * | 2013-08-12 | 2014-01-01 | 记忆科技(深圳)有限公司 | 动态调整固态硬盘预留空间的方法及其固态硬盘 |
CN103685340A (zh) * | 2012-08-31 | 2014-03-26 | 百度在线网络技术(北京)有限公司 | 云存储上应用数据改变的通知方法、系统及云端服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150021117A (ko) * | 2012-06-18 | 2015-02-27 | 액티피오 인크. | 강화형 데이터 관리 가상화 시스템 |
-
2014
- 2014-09-04 CN CN201410447814.XA patent/CN105468989B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101178662A (zh) * | 2006-11-08 | 2008-05-14 | 中兴通讯股份有限公司 | 一种嵌入式linux应用进程的监控方法 |
CN102073464A (zh) * | 2011-01-14 | 2011-05-25 | 南开大学 | 一种按需分配增量卷的创建方法 |
CN103685340A (zh) * | 2012-08-31 | 2014-03-26 | 百度在线网络技术(北京)有限公司 | 云存储上应用数据改变的通知方法、系统及云端服务器 |
CN103488575A (zh) * | 2013-08-12 | 2014-01-01 | 记忆科技(深圳)有限公司 | 动态调整固态硬盘预留空间的方法及其固态硬盘 |
Also Published As
Publication number | Publication date |
---|---|
CN105468989A (zh) | 2016-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105468989B (zh) | 基于Linux内核监控的云存储配额管理方法 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
US9344371B1 (en) | Dynamic throttling systems and services | |
CN110515539B (zh) | 基于云存储的云磁盘挂载方法、装置、设备和存储介质 | |
CN110232010A (zh) | 一种告警方法、告警服务器及监控服务器 | |
WO2017071134A1 (zh) | 分布式跟踪系统 | |
US8239641B2 (en) | Choosing location or manner of storing data | |
JP6442751B2 (ja) | 情報処理装置、情報処理システム、制御方法、及びプログラム | |
CN103501237B (zh) | 设备管理方法、管理平台、设备及系统 | |
CN104536965B (zh) | 一种大数据条件下的数据查询展示系统及方法 | |
CN111698126B (zh) | 信息监控方法、系统及计算机可读存储介质 | |
CN107463479A (zh) | 一种社交数据监控系统 | |
CN109871392A (zh) | 一种分布式应用系统下的慢sql实时数据采集方法 | |
CN113242174B (zh) | 邮件同步方法、装置、计算机设备和存储介质 | |
CN107426319A (zh) | 存储受约束的共享内容项同步 | |
CN112351024A (zh) | 一种公网通信安全监测系统及方法 | |
CN109831358A (zh) | 一种客户端流量统计方法、装置、服务器及可读存储介质 | |
CN114584829B (zh) | 一种榜单活动页面管理方法及系统 | |
CN110457263A (zh) | 一种数据存储方法和装置 | |
CN108205468A (zh) | 一种面向海量视频图像的分布式系统及实现方法 | |
CN106559498A (zh) | 风控数据收集平台及其收集方法 | |
CN106909436A (zh) | 产生虚拟机消息队列应用程序的相关关系的方法与系统 | |
KR20150136369A (ko) | 로그 보안 및 빅 데이터를 이용한 통합 관리 시스템 | |
CN107959696A (zh) | 一种日志话单处理方法及系统 | |
US10353792B2 (en) | Data layering in a network management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |