Looking for contributors, don't hesitate to contact us !
kernel/kerrighed Distributed File System
kDFS aims at providing an integrated cluster file system for High Performance Computing. Code and docs are hosted on sourceforge !
Based on several concepts suggested in KerFS (Kerrighed 1.02), the kernel Distributed File system has been develop from scratch. One of the main idea consists in developing a distributed file system pluggable under the VFS and only based on the KDDM component of Kerrighed. The KDDM features are used to build a cooperative cache for both data and meta-data using all available memory in the cluster.
kDFS Overview: current state and main objectives (june 2007)
kDFS, Alpha version (october 2007)
A research report addressing design and current implementation of kDFS is available there (december 2007). Feel free to contact us if you are interested by a longer version or any further information.
Debugging/Finalizing the current code. Working on I/O scheduler strategies and dynamical RAID placement. Since september 2008, his activities have been focusing on the integration issues between kDFS and the other cluster services. Currently (and probably for a while), he's in charge of stabilizing the code :p
Although Marko started a Phd on chemical programming, he's still involved in the kDFS development where he is in charge of the management of the superblock and the extent mechanism of the implicit striping policy. Marko joined the XtreemOS consortium as research engineer between september 2009 and january 2010. During this period, he was in charge of maintaining the kDFS branch for the XtreemOS Consortium. Before that, he worked on the kDFS superblock management during summer 2008. At the same time, he studied several disk models. Based on this analysis, several I/O probes will be implemented as part of kDFS in order to provide better global load-balancing scheduling. This approach should help the scheduler to improve global cluster performances.
During His Computer Science Master, He worked on adding file checkpointing capabilities to kDFS, using Copy-On-Write and data distribution over different nodes. In mid-term, this will be used by the checkpoint/restart services of Kerrighed to improve fault tolerance. During summer 2008 Pierre worked on kDFS to port it to the kddm-standalone framework, debug/finalize the code, add diskless support, etc. Currently and due to his work, Pierre can only take part to the discussions concerning the design of kDFS.
Gustavo Bervian Brand
Gustavo started a Phd in september 2010 in the context of the EU SCALUS project. After working on the kargo tool to easily deploy kDFS upon the Grid'5000 architecture, he's currently focusing on IOR and map/reduce benchmarks to analyze the kDFS performance.
March 2011: KDDM issues...
After 5 months of intensive development, we made major changes into the kDFS system (implicit striping is done, new management of .meta files to improve the scalability,....). This led us to a prototype robust enough to conduct larger experiments. Unfortunately, the distributed compilation of a kernel raised several issues related to the consistency into the KDDM system. This is a really bad news since the kerrighed core developers are currently not available to help up to fix these bugs. The development of kDFS is currently and unfortunately stopped :( .
October 2010: A new contributor
Since October 2010, Gustavo Bervian Brand joined the kDFS team ;) Gustavo will do his Phd in the context of the SCALUS EU project (http://www.scalus.eu). He will mainly address the port of the kDFS concepts at grid/cloud level. He made the Kargo port from the new version of kDFS in order to easily deploy kDFS upon Grid'5000.
April 2010: 2.6.30 port and implicit data striping policy
Since October, Marko did the port from 2.6.20 to 2.6.30. For two months, we are working on the implicit data striping policy (write data where processes are ! ). This new functionnality is almost done, you can try it (really experimental :p), just have a look to the sourceforge pages !
October 2009: Migration to SourceForge
The kDFS team is pleased to annouce that we have moved our project to sourceforge.net. Sourceforge will give us the opportunity to take care of project's all aspects: trac will help us track bugs, but also annouce news about the project to the world ;) In addition to the trac system, we also moved our repositories to git! Check it out to find out more !
October 2009: Mini presentation on kDFS at the XtreemOS Consotium meeting
September 2009: kDFS devel mailing list
Development discussion around the kDFS system, have a look at http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/kerrighed-kdfs-devel if you are interested !
September 2009: Striping in kDFS
We are currently implementing the striping policy in kDFS. First results shoud be available asap.
May 2009: kDFS file checkpointing presented at CCGrid 2009
Our paper on the file checkpointing features implemented in kDFS (Handling Persistent States in Process Checkpoint/Restart Mechanisms for HPC Systems) has been selected for the CCGrid 2009 conference and will be presented there by Pierre. You can read a technical report covering these features here.
November 2008: kDFS at SuperComputing 2008 - booth 2203
Pierre will present a complete demo of kDFS and will describe the latest kDFS developments. Don't hesitate to visit the INRIA booth.
August 2008: kDFS is available as a standalone kernel module
kDFS was recently ported to work on the kDDM standalone framework. This means kDFS can now be used without Kerrighed. More information is available by downloading the kdfs-standalone branch in the Kerrighed repository: svn checkout svn://scm.gforge.inria.fr/svn/kerrighed/branches/kdfs-standalone
May 1 2008: kDFS design will be presented at the Europar Conference
The paper "Reducing Development Complexity in Distributed Environments" has been accepted to the Europar Conference 2008. This paper introduces the design of kDFS based on the kDDM layer. This paper will be officially available by the end of august 2008. In the meantime, you can have a look at our internal research report !
Apr 29 2008: Looking for a new contributor
We are looking for a new contributor to port kDFS from the Kerrighed framework to the kDDM standalone module under Linux 2.6.25. Even if the main developments will still focus on the kDFS integration within Kerrighed, we would like to provide kDFS as an independent module. C programmers are welcome, don't hesitate to contact us !
Apr 28 2008: kDFS passes the NTFS-3G POSIX File System Test Suite
kDFS is able to successfully complete the NTFS-3G POSIX File System Test Suite.
All tests successful. Files=184, Tests=1950, 161 wallclock secs ( 9.47 cusr + 82.34 csys = 91.81 CPU)
This part was based on kerrighed 2.4.x and is now deprecated. If you want to try kDFS with kerrighed and 2.6.30 kernel, please have a look to the sourceforge pages !
The IPs 192.168.0.1, 192.168.0.2, 192.168.0.3, 192.168.0.4 and 192.168.0.16 are used by the virtual machines, be careful if you have the same IPs in your network.
The images are quite old and you should upgrade it from the latest svn version.
The QEMU virtual machines are rather slow, so you're encouraged to play with the VMWare machines.
The kDFS code provided in the different VMs is outdated (feb 2008), please check the README file to update it from our SVN!
VMWare virtual machines
You can use these virtual machines with VMWare Fusion on Mac OS X. On Linux you can use VMWare Player. Please note that the given images do not run with VMWare 1.0.4 (VMWare 2 is required). Before starting the VMWare virtual machines, please read this readme file.
Links to the files:
QEMU virtual machines
In order to run the QEMU virtual machines, you need to get QEMU. There's also a Mac OS X port, but you should be aware that it hasn't been tested. If you successfully ran all the kDFS configuration on Mac OS X, please let us know. Before starting the QEMU virtual machines, please read this readme file.
Links to the files: