« Serving JavaScript Fast | Main | Database War Stories #3: Flickr »
Tuesday
Mar182008

Shared filesystem on EC2

Hi. I'm looking for a way to share files between EC2 nodes. Currently we are using glusterfs to do this. It has been reliable recently, but in the past it has crashed under high load and we've had trouble starting it up again. We've only been able to restart it by removing the files, restarting the cluster, and filing it up again with our files from backup. This takes ages, and will take even longer the more files we get.

What worries me is that it seems to make each node a point of failure for the entire system. One node crashes and soon the entire cluster has crashed. The other problem is adding another node. It seems like you have to take down the whole thing, reconfigure to include the new node, and restart. This kind of defeats the horizontal scaling strategy.

We are using 2 EC2 instances as web servers, 1 as a DB master, and 1 as a slave. GlusterFS is installed on the web server machines as well as the DB slave machine (we backup files to s3 from this machine). The files are mostly thumbnails, but also some larger images and media files.

Does anyone have a good solution for sharing files between EC2 nodes? I like the ThruDB [http://trac.thrudb.org/] concept of using the local filesystem as a cache for S3, but I'm not sure if ThruDB is mature enough yet. Or maybe some kind of distributed filesystem built on top of git would work? Any ideas? Thanks!

~rvr

Reader Comments (2)

Wouldn't S3 fronted by a caching layer for hot content work? Tugela Cache (http://highscalability.com/product-tugela-cache) offers a local disk backed caching mechanism.

December 31, 1999 | Unregistered CommenterTodd Hoff

Thanks for this, Todd. I will take a look. One good thing about GFS is that the files are exposed as a regular filesystem, so they can be symlinked and served statically. Is this possible with Tugela Cache, or do you need some application logic to find the file in cache and serve it? Can anyone who is using this tool in a production environment share their experiences? Thanks for you help. I am a novice with this stuff.

~rvr

December 31, 1999 | Unregistered Commenterrvr

PostPost a New Comment

Enter your information below to add a new comment.
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>