On Feb 14, 2008, at 11:55 AM, crayz wrote:
> > I currently have a number of intranet Rails apps running on a > 'cluster' of Xen VEs spread out on different hardware, separated into > servers by role(app/web). I do logging centrally via syslog-ng, and > don't have a problem deploying out new code via capistrano > > But the one real pain point of this setup is what to do with user- > uploaded content. Ideally this would be fast without having a single > point of failure, and have no chance of introducing conflicts. Part of > the difficulty in choosing a solution is just the myriad different > approaches there are - a file storage pool like CouchDB / S3, a > distributed filesystem like MogileFS, a network filesystem like NFS, a > distributed disk like DRBD/GFS, a sync tool like rdist? > > It's too much! Is there a conventional wisdom on what approach or tool > is best? GFS from the Red Hat Cluster Suite is a good solution for this. We're using it on ~1000 Xen Virtual Machines. It can be finicky to get started with but once you spend some time getting used to its quirks it is the best solution for a clustered filesystem available as open source right now. Mogilefs is another one worth looking at but it will require application code changes to use it. GFS 'just works' and is 100% posix compliant filesytem without the locking problems NFS has. So if you go with GFS you're application code will not need to change, you can just mount a gfs partition on each VM and only need to deploy yoru rails app to one node since they will all share the fs, then uploads and other assets like page and fragment caches are consistent across all of your VM's. Cheers- - Ezra Zygmuntowicz -- Founder & Software Architect -- [EMAIL PROTECTED] -- EngineYard.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Deploying Rails" group. To post to this group, send email to rubyonrails-deployment@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-deployment?hl=en -~----------~----~----~----~------~----~------~--~---