The invention provides a distributed NFS system based on librados and its construction method. The system includes client, NFS server, RADOS object storage cluster and migration statistical information database. The NFS server integrates NFS service function, file system interface function and metadata management function, and is connected with RADOS object storage cluster and migration statistical information database. Client provides services. The system can reduce the path of NFS read-write IO, reduce the read-write delay, improve the read-write performance, provide better support for the scenario of creating a large number of small files in high concurrency, and the metadata on each NFS service node can be consistent. The system supports distributed NFS services with multiple instances, and access requests are loaded to each service node to improve access performance. The system also supports the mechanism of hot and cold pool, migrates the hot and cold data regularly according to the access situation, and stores the most frequently accessed data in the hot pool, which effectively improves the speed of hot data access.
【技术实现步骤摘要】
基于librados的分布式NFS系统及其构建方法
本专利技术涉及分布式文件系统,具体涉及一种分布式NFS文件系统及其构建方法。
技术介绍
网络文件系统(NetworkFileSystem,NFS)是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。参照图1和图2,当在NFS服务器设置好一个共享目录/home/public后,其他的有权访问NFS服务器的NFS客户端就可以将这个目录挂载到自己文件系统的某个挂载点,这个挂载点可以自己定义,如图1中客户端A与客户端B挂载的目录就不相同。并且挂载好后客户端在本地能够看到服务端/home/public的所有数据。如果服务器端配置的客户端只读,那么客户端就只能够只读。如果配置读写,客户端就能够进行读写。NFS通信过程基于远程过程调用协议(RemoteProcedureCallProtocol,RPC),主要过程如下:a)首先服务器端启动RPC服务,并开启111端口;b)启动NFS服务,并向RPC注册端口信息;c)客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口;d)服务端的RPC(portmap)服务反馈NFS端口信息给客户端;e)客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。尽管NFS文件系统是使用广泛的文件系统,但是由于NFS文件系统是基于单机文件系统设计,NFS文件服务只能作为一个单服务实例 ...
【技术保护点】
1.一种基于librados的分布式NFS系统,其特征在于,所述系统包括客户端、若干个NFS服务端、RADOS对象存储集群,所述若干个NFS服务端中的每一个均集成有NFS服务功能、文件系统接口功能和元数据管理功能,并均与RADOS对象存储集群相连,其中NFS文件系统直接挂载到客户端,向客户端提供服务。
【技术特征摘要】
1.一种基于librados的分布式NFS系统,其特征在于,所述系统包括客户端、若干个NFS服务端、RADOS对象存储集群,所述若干个NFS服务端中的每一个均集成有NFS服务功能、文件系统接口功能和元数据管理功能,并均与RADOS对象存储集群相连,其中NFS文件系统直接挂载到客户端,向客户端提供服务。2.根据权利要求1所述的基于librados的分布式NFS系统,其特征在于,所述NFS服务端与客户端通过NFSV3协议进行文件操作。3.根据权利要求1所述的基于librados的分布式NFS系统,其特征在于,当客户端访问服务端时,服务端建立客户端缓存机制,记录已访问过的客户端信息;建立文件元数据缓存机制,记录最近访问的元数据信息;建立直接查找类型的元数据管理机制,使得能够直接根据文件fileID找到对应的元数据位置。4.根据权利要求3所述的基于librados的分布式NFS系统,其特征在于,所述NFS服务端包括:portmap模块:用于注册NFS相关的服务端口,包括mount服务端口和NFS读写服务端口;NFS协议处理模块:用于接收客户端的NFS请求,并交由核心处理模块进行处理,在处理完成后,将响应封装成RPC报文返回给客户端;核心处理模块:用于处理NFS请求,根据请求类型使用客户端缓存模块、元数据管理模块、rados连接池模块进行相关读写操作或者元数据修改操作;客户端缓存模块:用于管理客户端的连接数据,以保存客户端的相关信息以及客户端最近操作的元数据信息;元数据管理模块:用于根据客户端请求建立或修改元数据,其中元数据的单个文件块大小为1M,文件块的名称依次递增,单个元数据长度为512字节;rados连接池模块:用于维护一定数量的存储集群的rados连接,对外提供rados...
【专利技术属性】
技术研发人员:袁东,陈小锁,陶毅昊,冯骏,
申请(专利权)人:南京华讯方舟通信设备有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。