Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm planning to set up a small Hadoop cluster where the slave nodes boot and run from a central PXE server, to simplify deployment and updates, and to enable all of the disks on the slaves to be (almost) monopolized by HDFS.

However, I suppose I'll still have to reserve some space on the slave nodes for /tmp and /var/log, I don't want to just put these in a ramdisk because I'd like them there for debugging after crashes (and because RAM is scarcer than disk).

So the machines might boot off the remote PXE server, mount their / read-only from there, then mount /dev/sda1 through sdd1 for the HDFS data partitions, /dev/sda2 for /tmp, and /dev/sdb2 for /var/log.

My question is, are there any other directories that will need to be writable? Assuming we get Hadoop etc. to log into /var/log.

(And is this a sensible architecture in general?)

EDIT: don't worry about swap, I'm planning to make these swapless, the OOM killer is preferable to thrashing.

share|improve this question
add comment

2 Answers

up vote 1 down vote accepted

You can study livecd layout of your distro, but likely you need /var instead of /var/log and in some distros there are files in /etc that must be writable. /home as well unless you put home dir elsewhere.

share|improve this answer
    
Thanks, I didn't think of reverse-engineering a live CD. –  Andrew Clegg May 11 '12 at 8:58
add comment

"(And is this a sensible architecture in general?)...."

I wouldn't say that your idea is wrong but seems interesting. In a nutshell your setting up a diskless architecture but still using the localdisk. To me your adding extra loops.

"to simplify deployment and updates .. "

If your goal is to make it more centralized and manageable. I would use some sort of automated distribution engine. Like in my case, I use puppet. The code is already available on github. Just customize to your needs. That should take care of your simplification & manageability. I built couple of clusters in no time using my puppet manifests.

share|improve this answer
    
I have accepted the other one because it was a more direct answer, but have upvoted yours as well because it has got me thinking. Perhaps Puppet is a better idea after all. My motivation was to reduce the usage of the local disks as well, though, to maximize the amount of storage and I/O that HDFS can use. So I'm still not sure. –  Andrew Clegg May 11 '12 at 9:00
    
Andrew, thank you for the vote. I am little curious on the performance impact for not using local disks. –  Chakri May 11 '12 at 13:48
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.