Skip to content

locked/eafs

Repository files navigation

EAFS
====

Disclaimer: This filesystem is _not_ ready for production. Please feel free to contribute in making it rock solid :)

EAFS is a distributed filesystem in python, aiming simplicity and very extendable. It is composed of 3 main parts:

- Master Servers
  Keep the meta data in SQL (currently sqlite for simplicity but support for mysql is planned)
  Manage chunks allocation
  Sample start command
    python eafs-master.py --host 192.168.0.10 --rootfs /tmp --init 1
    note: "--init 1" will erase any previous start and create a new database

- Chunk Servers
  Store chunks. You can connect as many as you want, the master will automatically store chunks on them.
  Sample start command:
    python eafs-chunkserver.py --host 192.168.0.10 --master 192.168.0.10:6799

- Clients
  Clients first connect to a master server for the meta data then directly to the chunk servers for the real data.
  Sample start command for the FUSE client:
    python eafs-fuse.py --master 192.168.0.10:6799 --mount /mnt


Requirements
------------

 - python-apsw
 - fuse.py (http://code.google.com/p/fusepy/ or http://php.lunasys.fr/fuse.py)

About

Distributed File System in Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages