I want to introduce formally new package (but actually it is not): OrangeFS — HPC-oriented distributed filesystem.
I set up a small HPC cluster (16 nodes, 16 hdds, 128 cores). I was in need for a distributed data storage to be used on our nodes. After some analysis of available solutions I chose OrangeFS (branch of PVFS2). Full discussion is available here:
The main conclusions and some test results are here:
In short, PVFS2 was once in portage (sys-cluster/pvfs2), but was removed due to problems with kernel module on recent kernels; so it's not that new. IMO this removal was premature, it was just days or weeks before updated version was released. In fact kernel module support is not strictly required for this filesystem to operate, see details below.
So I took the latest sys-cluster/pvfs2 ebuild with all patches and aux files as a ground zero. It was heavily reworked to accommodate all feature of orangefs, which are possible to support using current in-tree packages. Also I rewrote init scripts to add some cluster-friendly features, e.g. client startup may be optionally delayed until all server nodes will be ready to serve requests.
As for the kernel support, currently all kernels up to 3.2.x are support. 3.3.x is not, because it contains some heavy changes to the related infrastructure. OrangeFS developers are working on this, but this will take some considerable time.
But it is possible to use OrangeFS without kernel support at all:
1) FUSE client may be used instead of kernel-based one. Functionality is about the same.
2) OrangeFS server is userspace and does not need kernel support at all.
3) It is possible to use filesystem without VFS at all (yes, no mouts and usual file access). ROMIO API allows to access data directly from application using parallel I/O routines.
I'll upload all required files in a while, there are plenty of patches and this will take some time. For convenience the most recent version will be always available at my personal overlay "bircoph", which is registered at layman.
I can maintain this package if someone will proxy me. Perhaps the better idea will be to put it in the science overlay, because this distributed filesystem is HPC-targeted and fits the scope of the science overlay greatly; I have write access there, so I can do this, if there are no objections.
Created attachment 308113 [details]
Comments and messages in the ebuild should be descriptive enough.
Created attachment 308115 [details]
Created attachment 308117 [details, diff]
Fixes fuse install client path for Gentoo sandbox environment.
Created attachment 308119 [details, diff]
Upstream patch to fix FUSE permission change bug.
Created attachment 308123 [details, diff]
Upstream suggested change that adds ability to change default data distribution layout.
Created attachment 308125 [details, diff]
Upstream patch for 3.1 kernels only.
Created attachment 308127 [details, diff]
Upstream patch for 3.2 kernels only.
Created attachment 308129 [details, diff]
Gentoo-specific patch to split installation of kernel module and related utilities.
Created attachment 308133 [details, diff]
Fixes build for static server binary, patch was accepted upstream.
(Static libraries and binaries are optional and USE controlled.)
Created attachment 308137 [details, diff]
This one allows to disable SDL automagick around subset of tools and to build them optionally. Currently VIS tools are disabled in the ebuild, because they are broken. This patch is accepted by upstream for testing.
Created attachment 308139 [details]
pvfs2-client conf.d file
Created attachment 308141 [details]
pvfs2-client init.d script
Created attachment 308143 [details]
pvfs2-server conf.d file
Created attachment 308145 [details]
pvfs2-server init.d script