Index: hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java =================================================================== --- hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java (revision 1526980) +++ hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java (working copy) @@ -258,6 +258,9 @@ //instance into web context. public static final String MASTER = "master"; + // The minimum number of active regionservers to balance + public static final int MIN_SERVER_BALANCE = 2; + // The configuration for the Master private final Configuration conf; // server for the web ui @@ -1430,6 +1433,11 @@ boolean balancerRan; synchronized (this.balancer) { // Only allow one balance run at at time. + if (this.serverManager.countOfRegionServers() < MIN_SERVER_BALANCE) { + LOG.debug("Not running balancer because only " + this.serverManager.countOfRegionServers() + + " active regionserver(s)"); + return false; + } if (this.assignmentManager.getRegionStates().isRegionsInTransition()) { Map regionsInTransition = this.assignmentManager.getRegionStates().getRegionsInTransition();