-
Notifications
You must be signed in to change notification settings - Fork 594
HDDS-13497. [DiskBalancer] Add new property "hdds.datanode.disk.balancer.enabled" #8869
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Why do we need a feature flag for this? It can only be manually invoked by admins, who in most deployments are the same people who have permissions to update the configuration. This differs from features like hsync and snapshots that are authenticated with ACLs, where the admin can set a feature flag to disable something across the whole namespace. In this case the extra permission check is redundant. |
You are right that this is different from user-facing features controlled by ACLs. The feature flag isn't about who can run the command, but about whether the command should be runnable at all on the cluster at a given time. As discussed with @ChenSammi as we are planning to merge this feature branch so until and unless proper testing is done we don't want diskBalancer command to run. Once it is done this property will be again set to True and then admins can manually use DiskBalancer. |
...ervice/src/main/java/org/apache/hadoop/ozone/container/diskbalancer/DiskBalancerService.java
Outdated
Show resolved
Hide resolved
hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/DiskBalancerManager.java
Outdated
Show resolved
Hide resolved
...tainer-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/OzoneContainer.java
Show resolved
Hide resolved
12beb51 to
aa44085
Compare
What changes were proposed in this pull request?
Introduce a new property which will be by default false .
hdds.datanode.disk.balancer.enabledIf this property is enabled false, then it rejects all related requests in SCM and don’t start the service in DN.
Only once enable true, user can use DiskBalancer service.
This will act as a feature flag for DiskBalancer.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-13497
How was this patch tested?
Passed existing tests.
Verified disabled diskBalancer via running docker-cluster locally.