基于Linux内核监控的云存储配额管理方法

文档序号:9708683阅读:265来源:国知局
基于Linux内核监控的云存储配额管理方法
【技术领域】
[0001]本发明涉及计算机系统的云存储技术领域,特别是涉及到一种基于Linux内核监控的云存储配额管理方法。
【背景技术】
[0002]云存储是在云计算(cloud computing)概念上延伸和发展出来的一个新的概念,是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储对用户来讲,不是指某个具体的设备,而是指由许许多多个存储设备和服务器所构成的集合体。用户使用云存储,并不是使用某个存储设备,而是使用整个云存储系统带来的一种数据访问服务。严格来讲,云存储是一种服务。云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变。云存储作为服务,首先需要用户申请,经过审批后生成服务实例,服务实例管理过程中,分配给用户的文件系统目录需要实现配额管理。现有的文件系统配额管理技术,操作系统实现的是面向系统用户和组的配额,未实现面向目录的配额管理。已有的一种文件系统配额管理方法、装置及系统,实现了面向目录的配额管理,但实时性不能满足云存储配额管理的需求。根据云存储配额管理的需求特点,这不仅需要配额管理的准确,更重要的是实时性。

【发明内容】

[0003]本发明的目的是针对现有技术的不足,提供一种云存储环境下的基于Linux内核监控的云存储配额管理方法。该方法依据云存储管理的文件系统特点,使用Linux内核监控的方法实现文件系统按目录划分的存储配额管理。
[0004]本发明的目的可通过如下技术措施来实现,云存储作为服务,首先需要用户申请,经过审批后生成服务实例,服务实例管理过程中,分配给用户的文件系统目录需要实现配额管理。
[0005]一种基于Linux内核监控的云存储配额管理方法包括:
步骤1,读取存储配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息,开启目录监控线程,根据线程接收到的消息,对该目录做出控制;
步骤2,调用内核监控,获取文件系统变化事件,计算相关文件系统目录存储空间变化,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。
[0006]上述方案还包括:
在步骤1中,系统运行一个守护服务程序cloudserver,监控文件系统目录,对该目录的写入做出限制策略;
云存储的文件系统通过服务器共享,在客户端访问,各个客户端对文件系统挂载目录的读写不一样,时间不同,对目录的计算统计,有的在客户端就可以做出统计并判断,有的需要服务器端做出控制,同时需要客户端和服务器端进行信息交互;
系统使用一个守护程序cloudserverd监控cloudserver服务程序,一旦cloudserver服务程序由于某种原因出现故障,系统能够自动恢复其运行cloudserverd打开程序运行文件,读取cloudserver服务程序的进程号,根据进程号,读取/proc文件系统,判断cloudserver服务是否正常,若不正常,贝U重启它。
[0007]上述方案进一步包括:
在步骤1中,监控线程,打开消息队列,等待接收发来的消息,解析消息中的相关内容,包括目录中文件的空间占用信息,判断是否限制或允许目录的写入,需要时做相关处理,不需调整时,继续接收消息。
[0008]在步骤2中,调用内核文件系统监控inotify,当文件系统发生变化时,操作系统会自动触发相关事件,处理线程截获对文件系统空间变化敏感的几种事件,包括文件的创建 IN_CREATE、移动 IN_M0VE、修改 IN_M0DIFY、删除 IN_DELETE。
[0009]在步骤2中,根据处理线程截获的事件,计算相关文件系统目录存储空间变化,发送消息给监控线程,实现目录控制。
[0010]在步骤1中,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息只需在存储配额管理服务启动后执行一次。
[0011]本发明依据云存储管理的文件系统特点,使用Linux内核监控的方法实现文件系统按目录划分的存储配额管理。存储配额管理服务启动后,首先读取存储配额参数,根据配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息。开启目录监控线程,创建监听端口,监控线程根据接收到的消息,对该目录做出禁止或允许写人的控制。调用内核监控,获取文件系统变化事件,包括文件的创建、移动、修改、删除等,根据事件,计算相关文件系统目录存储空间变化,每隔给定时间间隔,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。该方法使用内核监控实时获取文件系统变化事件,以此确定目录存储空间占用,能够准确、高效地实现云存储环境下的文件系统存储配额管理。
【附图说明】
[0012]图1为本发明的基于Linux内核监控的云存储配额管理方法的一具体实施例的流程图。
【具体实施方式】
[0013]为使本发明的上述和其他目的、特征和优点能更明显易懂,下文特举出较佳实施例,并配合所附图式,作详细说明如下。
[0014]如图1所示,图1为本发明的基于Linux内核监控的云存储配额管理方法的流程图。
[0015]在步骤101,存储配额管理服务启动后,读取存储配额参数,作为相关文件系统目录配额的依据。流程进入到步骤102。
[0016]在步骤102,根据配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息,包括文件名称、大小和修改时间等。流程进入到步骤103。
[0017]在步骤103,开启目录监控线程,创建监听端口,监控线程根据接收到的消息,对该目录做出禁止或允许写人的控制。流程进入到步骤104。
[0018]在步骤104,调用内核文件系统监控inotify,获取文件系统变化事件,包括文件的创建、移动、修改、删除等。流程进入到步骤105。
[0019]在步骤105,根据事件,计算相关文件系统目录存储空间变化。流程进入到步骤106。
[0020]在步骤106,每隔给定时间间隔,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值。流程进入到步骤107。
[0021]在步骤107,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。
【主权项】
1.基于Linux内核监控的云存储配额管理方法,其特征在于包括: 步骤1,读取存储配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息,开启目录监控线程,根据线程接收到的消息,对该目录做出控制; 步骤2,调用内核监控,获取文件系统变化事件,计算相关文件系统目录存储空间变化,根据目录存储空间占用,确定目录达到或不足给定的存储配额阈值,给监控线程发送消息,禁止或允许相关文件系统目录数据写入。2.根据权利要求1所述的基于Linux内核监控的云存储配额管理方法,其特征在于,在步骤1中,系统运行一个守护服务程序cloudserver,监控文件系统目录,对该目录的写入做出限制策略; 云存储的文件系统通过服务器共享,在客户端访问,各个客户端对文件系统挂载目录的读写不一样,时间不同,对目录的计算统计,有的在客户端就可以做出统计并判断,有的需要服务器端做出控制,同时需要客户端和服务器端进行信息交互; 系统使用一个守护程序cloudserverd监控cloudserver服务程序,一旦cloudserver服务程序由于某种原因出现故障,系统能够自动恢复其运行cloudserverd打开程序运行文件,读取cloudserver服务程序的进程号,根据进程号,读取/proc文件系统,判断cloudserver服务是否正常,若不正常,贝U重启它。3.根据权利要求1或2所述的基于Linux内核监控的云存储配额管理方法,其特征在于,在步骤1中,监控线程,打开消息队列,等待接收发来的消息,解析消息中的相关内容,包括目录中文件的空间占用信息,判断是否限制或允许目录的写入,需要时做相关处理,不需调整时,继续接收消息。4.根据权利要求3所述的基于Linux内核监控的云存储配额管理方法,其特征在于,在步骤2中,调用内核文件系统监控inotify,当文件系统发生变化时,操作系统会自动触发相关事件,处理线程截获对文件系统空间变化敏感的几种事件,包括文件的创建IN_CREATE、移动 IN_M0VE、修改 IN_M0DIFY、删除 IN_DELETE。5.根据权利要求4所述的基于Linux内核监控的云存储配额管理方法,其特征在于,在步骤2中,根据处理线程截获的事件,计算相关文件系统目录存储空间变化,发送消息给监控线程,实现目录控制。6.根据权利要求5所述的基于Linux内核监控的云存储配额管理方法,其特征在于,该基于Linux内核监控的云存储配额管理方法还包括,在步骤1中,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息只需在存储配额管理服务启动后执行一次。
【专利摘要】本发明提供一种云存储环境下的文件系统存储配额管理方法。该方法使用Linux内核监控的方法实现文件系统按目录划分的存储配额管理。存储配额管理服务启动后,首先读取存储配额参数,根据配额参数,遍历相关文件系统目录,获取目录下存储数据文件及子目录的属性信息。开启目录监控线程,创建监听端口,监控线程根据接收到的消息,对该目录做出禁止或允许写人的控制。调用内核监控,获取文件系统变化事件,根据事件,计算相关文件系统目录存储空间变化,根据目录存储空间占用,禁止或允许相关文件系统目录数据写入。该方法使用内核监控实时获取文件系统变化事件,能够准确、高效地实现云存储环境下的文件系统存储配额管理。
【IPC分类】G06F21/62
【公开号】CN105468989
【申请号】CN201410447814
【发明人】段淼, 单联瑜, 隋志强, 李战强, 董涛, 车晓萍
【申请人】中国石油化工股份有限公司, 中国石油化工股份有限公司胜利油田分公司物探研究院
【公开日】2016年4月6日
【申请日】2014年9月4日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1