ceph/ceph
sageweil 3c93e6e3f9 return from non-void
git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@1005 29311d96-e01e-0410-9327-a35deaab8ce9
2007-01-11 19:59:03 +00:00
..
client return from non-void 2007-01-11 19:59:03 +00:00
common git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@992 29311d96-e01e-0410-9327-a35deaab8ce9 2006-12-12 05:40:19 +00:00
crush improved support for forcing the first element of a crush result 2006-12-06 21:04:15 +00:00
doc
ebofs ongoing alloc_inc/dec (clone() allocation) mess 2007-01-11 18:56:58 +00:00
include fixed hack_aligned 2007-01-11 19:58:21 +00:00
jobs better! 2006-09-15 23:57:33 +00:00
mds tons of mds recovery stuffs 2006-11-21 00:15:25 +00:00
messages exchange load (qlen) info 2006-12-07 19:17:28 +00:00
mon quieter 2006-12-12 05:40:30 +00:00
msg shut up 2006-12-12 22:56:02 +00:00
osd git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@999 29311d96-e01e-0410-9327-a35deaab8ce9 2006-12-12 22:56:26 +00:00
osdc object revisions; 2006-12-07 19:11:58 +00:00
script git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@991 29311d96-e01e-0410-9327-a35deaab8ce9 2006-12-12 05:40:03 +00:00
test new buffer.h; 2006-10-19 17:45:03 +00:00
cfuse.cc new buffer.h; 2006-10-19 17:45:03 +00:00
config.cc turn off clone() by default 2006-12-12 22:55:55 +00:00
config.h turn off clone() by default 2006-12-12 22:55:55 +00:00
COPYING git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@908 29311d96-e01e-0410-9327-a35deaab8ce9 2006-10-03 22:52:29 +00:00
cosd.cc new buffer.h; 2006-10-19 17:45:03 +00:00
fakefuse.cc anchortable separated out anchorclient; 2006-10-12 23:20:18 +00:00
fakemon.cc tab cleanup; 2006-10-05 05:39:29 +00:00
fakesyn.cc other binaries working. minor mon tweaks. 2006-10-05 06:05:52 +00:00
Makefile tons of mds recovery stuffs 2006-11-21 00:15:25 +00:00
newsyn.cc quieter 2006-12-12 05:40:41 +00:00
README
tcpfuse.cc tab cleanup; 2006-10-05 05:39:29 +00:00
tcpsyn.cc tab cleanup; 2006-10-05 05:39:29 +00:00
TODO asf 2007-01-11 19:57:25 +00:00

pmds = parallel metadata server/system

'test' is a standalone proccess that runs all clients, OSDs, and MDSs
in a single process with a basic message passer (FakeMessenger).
Useful for debugging.

'pmds' uses MPI for communication.

'import' builds a metadata store on ./osddata/ by taking find output
from stdin.  Make sure find is run from the current directory so that
import can stat the files it's fed.  The find root becomes the file
system root; feel free to use relative paths.

This is all GPL, etc.


Getting started:

 1- Comment out the LEAKTRACER= line in the Makefile if you don't have
    LeakTracer installed (you probably don't).
 
 2- make (test and import targets are testing ones; pmds uses MPI)

 3- Build an OSD metadata store:
      # mkdir osddata
      # find /some/big/dir | ./import root

 4- Single proc sim:
      # ./test
    or more likely,
      # ./test > out

 5- Change parameters in config.cc.

 6- If you want stats logged, mkdir log (make sure you have enough
    file handles; there's one open file per client).


Notes on pmds (MPI version):

 - On mcr/alc I have to 
     # setenv LD_LIBRARY_PATH /usr/lib/mpi/mpi_gnu/lib
   for the GNU runtime MPI libs (otherwise you get the Intel ones,
   which segfault).

 - Each MDS and OSD gets its own node.  Clients are divided over
   whatever is left over.  So make sure you tell MPI to give you at
   least num_mds+num_osd+1 processes (num_mds etc defined in
   config.cc).



2004.08.25 sage@newdream.net