[
https://issues.apache.org/jira/browse/HDDS-14662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gargi Jaiswal updated HDDS-14662:
---------------------------------
Description:
The {color:#de350b}ozone admin containerbalancer start{color} command accepts
invalid datanode names in *-- include-datanodes-* and *--exclude-datanodes* and
reports success instead of failing with a validation error. This differs from
other admin commands that validate hostnames and fail on invalid input.
{code:java}
bash-5.1$ ozone admin containerbalancer start --exclude-datanodes "55abc" -t
0.1 -d 100 -i 3
Container Balancer started successfully.
bash-5.1$ ozone admin containerbalancer start --include-datanodes="123!"
Container Balancer started successfully.
// other admin commands behavior
bash-5.1$ ozone admin datanode decommission ozone-datanode-1
Started decommissioning datanode(s):
ozone-datanode-1
Error: ozone-datanode-1: ozone-datanode-1: Name or service not known
Some nodes could not enter the decommission workflow
bash-5.1$ ozone admin datanode diskbalancer status ozone-datanode-3 555hgkjmdhkj
Error on node [555hgkjmdhkj]: Invalid host name: local host is:
"ca8e95ea2b71/172.18.0.2"; destination host is: "555hgkjmdhkj":19864;
java.net.UnknownHostException: Invalid host name: local host is:
"ca8e95ea2b71/172.18.0.2"; destination host is: "555hgkjmdhkj":19864;
java.net.UnknownHostException; For more details see:
http://wiki.apache.org/hadoop/UnknownHost; For more details see:
http://wiki.apache.org/hadoop/UnknownHost
Failed to get DiskBalancer status from nodes: [555hgkjmdhkj]
Status result:
Datanode Status Threshold(%) BandwidthInMB Threads
StopAfterDiskEven SuccessMove FailureMove BytesMoved(MB) EstBytesToMove(MB)
EstTimeLeft(min)
9e2ef66785cc STOPPED 10.0000 10 5 true 0
0 0 0 0{code}
h3. *Proposed Fix*
Add validation for -- include-datanodes and -- exclude-datanodes before
starting the balancer.
was:
The {color:#de350b}ozone admin containerbalancer start{color} command accepts
invalid datanode names in *--include-datanodes* and *--exclude-datanodes* and
reports success instead of failing with a validation error. This differs from
other admin commands that validate hostnames and fail on invalid input.
{code:java}
bash-5.1$ ozone admin containerbalancer start --exclude-datanodes "55abc" -t
0.1 -d 100 -i 3
Container Balancer started successfully.
bash-5.1$ ozone admin containerbalancer start --include-datanodes="123!"
Container Balancer started successfully.
// other admin commands behavior
bash-5.1$ ozone admin datanode decommission ozone-datanode-1
Started decommissioning datanode(s):
ozone-datanode-1
Error: ozone-datanode-1: ozone-datanode-1: Name or service not known
Some nodes could not enter the decommission workflow
bash-5.1$ ozone admin datanode diskbalancer status ozone-datanode-3 555hgkjmdhkj
Error on node [555hgkjmdhkj]: Invalid host name: local host is:
"ca8e95ea2b71/172.18.0.2"; destination host is: "555hgkjmdhkj":19864;
java.net.UnknownHostException: Invalid host name: local host is:
"ca8e95ea2b71/172.18.0.2"; destination host is: "555hgkjmdhkj":19864;
java.net.UnknownHostException; For more details see:
http://wiki.apache.org/hadoop/UnknownHost; For more details see:
http://wiki.apache.org/hadoop/UnknownHost
Failed to get DiskBalancer status from nodes: [555hgkjmdhkj]
Status result:
Datanode Status Threshold(%) BandwidthInMB Threads
StopAfterDiskEven SuccessMove FailureMove BytesMoved(MB) EstBytesToMove(MB)
EstTimeLeft(min)
9e2ef66785cc STOPPED 10.0000 10 5 true 0
0 0 0 0{code}
h3. *Proposed Fix*
Add validation for --include-datanodes and --exclude-datanodes before starting
the balancer.
> Container Balancer does not validate include/exclude datanode names
> -------------------------------------------------------------------
>
> Key: HDDS-14662
> URL: https://issues.apache.org/jira/browse/HDDS-14662
> Project: Apache Ozone
> Issue Type: Improvement
> Reporter: Gargi Jaiswal
> Assignee: Sravani Revuri
> Priority: Minor
>
> The {color:#de350b}ozone admin containerbalancer start{color} command accepts
> invalid datanode names in *-- include-datanodes-* and *--exclude-datanodes*
> and reports success instead of failing with a validation error. This differs
> from other admin commands that validate hostnames and fail on invalid input.
> {code:java}
> bash-5.1$ ozone admin containerbalancer start --exclude-datanodes "55abc" -t
> 0.1 -d 100 -i 3
> Container Balancer started successfully.
> bash-5.1$ ozone admin containerbalancer start --include-datanodes="123!"
> Container Balancer started successfully.
> // other admin commands behavior
> bash-5.1$ ozone admin datanode decommission ozone-datanode-1
> Started decommissioning datanode(s):
> ozone-datanode-1
> Error: ozone-datanode-1: ozone-datanode-1: Name or service not known
> Some nodes could not enter the decommission workflow
> bash-5.1$ ozone admin datanode diskbalancer status ozone-datanode-3
> 555hgkjmdhkj
> Error on node [555hgkjmdhkj]: Invalid host name: local host is:
> "ca8e95ea2b71/172.18.0.2"; destination host is: "555hgkjmdhkj":19864;
> java.net.UnknownHostException: Invalid host name: local host is:
> "ca8e95ea2b71/172.18.0.2"; destination host is: "555hgkjmdhkj":19864;
> java.net.UnknownHostException; For more details see:
> http://wiki.apache.org/hadoop/UnknownHost; For more details see:
> http://wiki.apache.org/hadoop/UnknownHost
> Failed to get DiskBalancer status from nodes: [555hgkjmdhkj]
> Status result:
> Datanode Status Threshold(%) BandwidthInMB Threads
> StopAfterDiskEven SuccessMove FailureMove BytesMoved(MB) EstBytesToMove(MB)
> EstTimeLeft(min)
> 9e2ef66785cc STOPPED 10.0000 10 5 true
> 0 0 0 0 0{code}
> h3. *Proposed Fix*
> Add validation for -- include-datanodes and -- exclude-datanodes before
> starting the balancer.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]