You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Bryan Beaudreault (Jira)" <ji...@apache.org> on 2021/08/05 21:10:00 UTC

[jira] [Commented] (HBASE-26177) Add support to run balancer overriding current config

    [ https://issues.apache.org/jira/browse/HBASE-26177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17394302#comment-17394302 ] 

Bryan Beaudreault commented on HBASE-26177:
-------------------------------------------

I love the idea of supporting this for dry run mode, but it gives me some pause for actual runs. My concern for actual runs is that if you run with a dynamic config override, it may likely cause the balancer to move many regions based on that temporary config. But unless you've disabled the balancer chore, the next time the chore runs it will move everything back. Even if you disable the balancer chore, it's easy to forget that you have a custom balance in place. So in the future you might reenable the balancer and revert to the old configs. I think we should consider the hbase-site.xml the source of truth for actual balance runs and only allow overrides for dry run.

It might make sense to split this into two features:
 # Add an argument to balance, i.e. {{balance, \{ RELOAD_CONFIGS => true }}}. That could maybe work for both modes. When specified, it basically acts as a shortcut for doing {{update_configs '<master servername>'}} followed by a {{balance}}.
 # Add the ability to specify dynamic overrides just for dry run mode, i.e. {{balance \{ DRY_RUN => true, OVERRIDES => { localityCost => 5 }}.}}

 

> Add support to run balancer overriding current config
> -----------------------------------------------------
>
>                 Key: HBASE-26177
>                 URL: https://issues.apache.org/jira/browse/HBASE-26177
>             Project: HBase
>          Issue Type: Bug
>          Components: Balancer
>            Reporter: Clara Xiong
>            Priority: Major
>
> At times we want a one-time run for balancer with specific aggressive configs such as recovering from a failure or half cluster. Currently some config are loaded dynamically but some don't. And it could be error prone when we try to restore the configs.
> With a dry run feature coming, we want to let user run a dry run with the overriding config to choose the config and then run it. The implementation becomes more straightforward if we allow overidding configs for both config and actual runs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)