We have a cluster with unequal machines, some are newer with more disk
space, more RAM and stronger CPUs. HDFS amd M/R can be tuned to consume
less resources but I was unable to find a way to cause HBase balancer to
put less regions on the weaker servers, so now they have the same number of
regions as the strong servers, causing them to access HDFS remotely because
they don't have enough local disk space to store all their region files.
I noticed that in version 0.97 the stochastic load balancer has some
configuration options that might help, but it seems that it doesn't exist
in version 0.94.6, which is what I'm using (based on CDH4.3.1).