From dd253889553eacc785daaf861aa93008c50ee698 Mon Sep 17 00:00:00 2001 From: Aravind Patnam Date: Fri, 13 Sep 2024 16:15:37 +0800 Subject: [PATCH] [CELEBORN-1513][FOLLOWUP] Enrich doc for wildcard address ### What changes were proposed in this pull request? enrich the docs for supporting wildcard address bind in this [PR](https://github.com/apache/celeborn/pull/2713). ### Why are the changes needed? better docs ### Does this PR introduce _any_ user-facing change? No ### How was this patch tested? N/A - just docs change Closes #2736 from akpatnam25/CELEBORN-1513-doc-followup. Authored-by: Aravind Patnam Signed-off-by: Cheng Pan --- .../celeborn/common/protocol/TransportModuleConstants.java | 1 + .../scala/org/apache/celeborn/common/CelebornConf.scala | 6 ++++-- docs/configuration/network.md | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/common/src/main/java/org/apache/celeborn/common/protocol/TransportModuleConstants.java b/common/src/main/java/org/apache/celeborn/common/protocol/TransportModuleConstants.java index d19487f29..ae4e77ed5 100644 --- a/common/src/main/java/org/apache/celeborn/common/protocol/TransportModuleConstants.java +++ b/common/src/main/java/org/apache/celeborn/common/protocol/TransportModuleConstants.java @@ -45,5 +45,6 @@ public class TransportModuleConstants { public static final String DATA_MODULE = "data"; + // When using null, InetSocketAddress will resolve to a wildcard address for bind operations. public static final String WILDCARD_BIND_ADDRESS = null; } diff --git a/common/src/main/scala/org/apache/celeborn/common/CelebornConf.scala b/common/src/main/scala/org/apache/celeborn/common/CelebornConf.scala index aec284e8a..339a8d97b 100644 --- a/common/src/main/scala/org/apache/celeborn/common/CelebornConf.scala +++ b/common/src/main/scala/org/apache/celeborn/common/CelebornConf.scala @@ -1735,8 +1735,10 @@ object CelebornConf extends Logging { .categories("network") .version("0.6.0") .doc("When `true`, the bind address will be set to a wildcard address, while the advertise address will " + - "remain as whatever is set by `celeborn.network.advertise.preferIpAddress`. This is helpful in dual-stack " + - "environments, where the service must listen to both IPv4 and IPv6 clients.") + "remain as whatever is set by `celeborn.network.advertise.preferIpAddress`. The wildcard address is a special " + + "local IP address, and usually refers to 'any' and can only be used for bind operations. In the case of IPv4, " + + "this is 0.0.0.0 and in the case of IPv6 this is ::0. This is helpful in dual-stack environments, where the " + + "service must listen to both IPv4 and IPv6 clients.") .booleanConf .createWithDefault(false) diff --git a/docs/configuration/network.md b/docs/configuration/network.md index 88cbdebfb..45b9f72dc 100644 --- a/docs/configuration/network.md +++ b/docs/configuration/network.md @@ -43,7 +43,7 @@ license: | | celeborn.io.maxDefaultNettyThreads | 64 | false | Max default netty threads | 0.3.2 | | | celeborn.network.advertise.preferIpAddress | <value of celeborn.network.bind.preferIpAddress> | false | When `true`, prefer to use IP address, otherwise FQDN for advertise address. | 0.6.0 | | | celeborn.network.bind.preferIpAddress | true | false | When `true`, prefer to use IP address, otherwise FQDN. This configuration only takes effects when the bind hostname is not set explicitly, in such case, Celeborn will find the first non-loopback address to bind. | 0.3.0 | | -| celeborn.network.bind.wildcardAddress | false | false | When `true`, the bind address will be set to a wildcard address, while the advertise address will remain as whatever is set by `celeborn.network.advertise.preferIpAddress`. This is helpful in dual-stack environments, where the service must listen to both IPv4 and IPv6 clients. | 0.6.0 | | +| celeborn.network.bind.wildcardAddress | false | false | When `true`, the bind address will be set to a wildcard address, while the advertise address will remain as whatever is set by `celeborn.network.advertise.preferIpAddress`. The wildcard address is a special local IP address, and usually refers to 'any' and can only be used for bind operations. In the case of IPv4, this is 0.0.0.0 and in the case of IPv6 this is ::0. This is helpful in dual-stack environments, where the service must listen to both IPv4 and IPv6 clients. | 0.6.0 | | | celeborn.network.connect.timeout | 10s | false | Default socket connect timeout. | 0.2.0 | | | celeborn.network.memory.allocator.numArenas | <undefined> | false | Number of arenas for pooled memory allocator. Default value is Runtime.getRuntime.availableProcessors, min value is 2. | 0.3.0 | | | celeborn.network.memory.allocator.verbose.metric | false | false | Whether to enable verbose metric for pooled allocator. | 0.3.0 | |