HBASE-6260 made the balancer state to be persisted in ZK so that the restart of the Master wont have an issue. But this is available with 0.95 only.
Just telling FYI
From: Jean-Marc Spaggiari [[EMAIL PROTECTED]]
Sent: Monday, April 08, 2013 6:05 AM
To: [EMAIL PROTECTED]
Subject: Re: Disabling balancer permanently in HBase
2 other options:
1) Build your own balancer which always returns null and set it with
2) Give a dummy non-existing class for hbase.master.loadbalancer.class ? (**)
(*) hbase.master.loadbalancer.class is still missing in the
documentation. HBASE-7296 has been opened last year. Might be good if
someone can apply it.
(**) I have not tried that, so I have no idea if this is working or
not. However, if the class given for the load balancer doesn't exist,
I think it will "simply" log an error on the logs and return. But you
will have to test that.
Finally, maybe we should have something like
hbase.master.loadbalancer.disable that we can setup to TRUE if we want
to totaly disable load balancing? (Even if this is not recommanded).
2013/4/7 Stack <[EMAIL PROTECTED]>:
> Try setting the hbase.balancer.period to a very high number in you
> On Sun, Apr 7, 2013 at 3:14 PM, Akshay Singh <[EMAIL PROTECTED]> wrote:
>> I am trying to permanently switch off the balancer in HBase, as my request
>> distribution is not uniform across the data.
>> I understand that this can be done by, setting balance_switch to false in
>> hbase shell
>> hbase(main):023:0> balance_switch false
>> However, value of balance_switch is reset back to true.. every time I
>> restart the HBase cluster (which cannot be avoided in my deployment
>> So my question is : Is there a way to permanently/persistently disable the
>> hbase balancer ? I could not find a property for this balance_switch.
>> I though of one possible solution, which is to set 'hbase.balancer.period'
>> property to '-1'.. but it does not seems to work.
>> Looking for suggestions.