Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/23411 )
Change subject: KUDU-1457 [4/n] enable webserver for IPv6 ...................................................................... KUDU-1457 [4/n] enable webserver for IPv6 This patch mainly does two things - enable webserver to make use of IPv6 and introduce a ip config flag that can be used to choose IP protocol for various communication channels. More details as follows: - Add build flag (USE_IPV6) to squeasel for IPv6 support for users. - Set appropriate bind interface for http based on webserver ip mode. - Augment GetBoundAddresses() to enable fetching of IPv6 address. - Introduce ip_config_mode flag that can be configured by a user if need arises to override the default mode i.e. ipv4. One of the purposes of this flag is to serve a hint inside various server modules like rpc, webserver, etc to regulate the protocol used for communication. - Set default value of --webserver_interface flag to 0.0.0.0. The value is used as bind interface during webserver object initialisation. - Reduce frequency of 'master address resolution to multiple addresses' warning once a minute to reduce flooding of logs with such message when hostname resolves to multiple addresses. - Add parallel suite of tests to webserver-test and mini_master-test. - Additional manual testing is also performed to ensure webserver is correctly hosted on IPv6 interfaces and the endpoint is capable of performing http methods. - Fix a bug in java client net utils to ensure that input address is correctly parsed into host and port for different IPv6 address combinations. - Manual testing for different combinations with servers running on IPv4,IPv6 and Dual stack address endpoints and Kudu CLI able to connect with servers and perform basic operations like ksck, 'perf loadgen', table list, etc. Kudu CLI also makes use of the ip config mode flag to enforce the IP communication protocol. Change-Id: I7095561539f427b5c58ada7b480ca549b0ab795e Reviewed-on: http://gerrit.cloudera.org:8080/23411 Reviewed-by: Marton Greber <[email protected]> Tested-by: Marton Greber <[email protected]> Reviewed-by: Alexey Serbin <[email protected]> --- M java/kudu-client/src/main/java/org/apache/kudu/util/NetUtil.java M java/kudu-client/src/test/java/org/apache/kudu/util/TestNetUtil.java M src/kudu/master/mini_master-test.cc M src/kudu/master/mini_master.cc M src/kudu/scripts/start_kudu.sh M src/kudu/server/webserver-test.cc M src/kudu/server/webserver.cc M src/kudu/server/webserver_options.cc M src/kudu/tserver/heartbeater.cc M src/kudu/util/net/net_util-test.cc M src/kudu/util/net/net_util.cc M src/kudu/util/net/net_util.h M thirdparty/build-definitions.sh 13 files changed, 433 insertions(+), 107 deletions(-) Approvals: Marton Greber: Looks good to me, approved; Verified Alexey Serbin: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/23411 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I7095561539f427b5c58ada7b480ca549b0ab795e Gerrit-Change-Number: 23411 Gerrit-PatchSet: 11 Gerrit-Owner: Ashwani Raina <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Ashwani Raina <[email protected]> Gerrit-Reviewer: Attila Bukor <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Marton Greber <[email protected]>
