HDFS-12183. Ozone: KSM : Use proper defaults for block client address. Contributed by Lokesh Jain.

This commit is contained in:
Anu Engineer 2017-07-28 15:40:59 -07:00 committed by Owen O'Malley
parent 7907fe1c80
commit 86b42907cf
2 changed files with 16 additions and 8 deletions

View File

@ -169,16 +169,22 @@ public final class OzoneClientUtils {
/**
* Retrieve the socket address that should be used by clients to connect
* to the SCM for block service.
* to the SCM for block service. If
* {@link ScmConfigKeys#OZONE_SCM_BLOCK_CLIENT_ADDRESS_KEY} is not defined
* then {@link ScmConfigKeys#OZONE_SCM_CLIENT_ADDRESS_KEY} is used.
*
* @param conf
* @return Target InetSocketAddress for the SCM block client endpoint.
* @throws IllegalArgumentException if configuration is not defined.
*/
public static InetSocketAddress getScmAddressForBlockClients(
Configuration conf) {
final Optional<String> host = getHostNameFromConfigKeys(conf,
Optional<String> host = getHostNameFromConfigKeys(conf,
ScmConfigKeys.OZONE_SCM_BLOCK_CLIENT_ADDRESS_KEY);
if (!host.isPresent()) {
host = getHostNameFromConfigKeys(conf,
ScmConfigKeys.OZONE_SCM_CLIENT_ADDRESS_KEY);
if (!host.isPresent()) {
throw new IllegalArgumentException(
ScmConfigKeys.OZONE_SCM_BLOCK_CLIENT_ADDRESS_KEY +
@ -186,6 +192,7 @@ public final class OzoneClientUtils {
" https://wiki.apache.org/hadoop/Ozone#Configuration for details" +
" on configuring Ozone.");
}
}
final Optional<Integer> port = getPortNumberFromConfigKeys(conf,
ScmConfigKeys.OZONE_SCM_BLOCK_CLIENT_ADDRESS_KEY);

View File

@ -171,7 +171,8 @@
<name>ozone.scm.block.client.address</name>
<value></value>
<description>
The address of the Ozone SCM block client service.
The address of the Ozone SCM block client service. If not defined
value of ozone.scm.client.address is used.
</description>
</property>