Hi, The hostname-for-clients is working fine for external clients, but we have hybrid mode where some clients are calling from outside the EAAS and some are from inside the EAAS to the same Geode servers. When the C++ client trying to connect to the external ip or to some other hostname that I provided it failed on the following :
When putting hostname-for-clients = GuyHost (and put it inside the /etc/hosts) I got this error in the C++ client: [ < info >< 2020/01/19 18:05:36.685776 IST > < HostName = eaasrt: > < Thread ID = 48955(ACE Thread ID = 139657340552960) > < File Name : impl/TcrEndpoint.cpp > < Function Name: createNewConnection > < Line No: 221 > < MESSAGE : IO error[97] in handshake with endpoint[GuyHost:53582]: TcpConn::connect failed with errno: 97: Address family not supported by protocol > ] When putting hostname-for-clients = 10.238.72.51 (the external ip) I got this error in the C++ client : [ < info >< 2020/01/20 12:39:32.451237 IST > < HostName = eaasrt: > < Thread ID = 12009(ACE Thread ID = 140505887270656) > < File Name : impl/TcrEndpoint.cpp > < Function Name: createNewConnection > < Line No: 221 > < MESSAGE : IO error[111] in handshake with endpoint[10.238.72.51:51253]: TcpConn::connect failed with errno: 111: Connection refused > ] Is someone familiar with this issue? Thanks, Guy From: Guy Turkenits Sent: Saturday, January 18, 2020 1:03 PM To: user@geode.apache.org Subject: RE: Geode client against Geode server on EAAS It seems working in geode1.4 only after adding this property to the cache.xml hostname-for-clients="10.238.72.51" Probably configure it only on the gfsh start script is not enough Thanks Guy From: Guy Turkenits Sent: Saturday, January 18, 2020 11:34 AM To: user@geode.apache.org<mailto:user@geode.apache.org> Subject: RE: Geode client against Geode server on EAAS Hi Thanks George I tried to add this property both for locator and servers (external ip and also FQDN name) This is the print from server log : sun.java.command = org.apache.geode.distributed.ServerLauncher start eaasrt-server4 --server-port=40404 --hostname-for-clients=eaasrt.corp.amdocs.com seems only the locator managed to work with this property but still the list of servers that are sent to the client contains the internal ip' so the client cant connect : [warn 2020/01/18 11:18:04.453 IST <http-nio-8080-exec-2> tid=0x31] Could not connect to: 192.168.2.100:54619 java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at org.apache.geode.internal.net.SocketCreator.connect(SocketCreator.java:995) at org.apache.geode.internal.net.SocketCreator.connect(SocketCreator.java:936) at org.apache.geode.internal.net.SocketCreator.connectForClient(SocketCreator.java:900) at org.apache.geode.cache.client.internal.ConnectionImpl.connect(ConnectionImpl.java:106) at org.apache.geode.cache.client.internal.ConnectionFactoryImpl.createClientToServerConnection(ConnectionFactoryImpl.java:137) at org.apache.geode.cache.client.internal.ConnectionFactoryImpl.createClientToServerConnection(ConnectionFactoryImpl.java:260) at org.apache.geode.cache.client.internal.pooling.ConnectionManagerImpl.borrowConnection(ConnectionManagerImpl.java:207) Note that I am working with version 1.4, so maybe some fix was introduced for this issue Thanks Guy From: George Wilder <george.wil...@sas.com<mailto:george.wil...@sas.com>> Sent: Thursday, January 16, 2020 6:34 PM To: user@geode.apache.org<mailto:user@geode.apache.org> Subject: RE: Geode client against Geode server on EAAS I expect you'd want to use the "hostname-for-clients" option when starting the server process. You'd either need to use the external IP or a hostname that is configured for the appropriate external IP. Depending on how you start your servers, this option can be set via gfsh[1], within cache.xml, as a java option if starting a server programmatically, or via spring data geode annotations [2]. [1] https://geode.apache.org/docs/guide/18/tools_modules/gfsh/command-pages/start.html#topic_3764EE2DB18B4AE4A625E0354471738A<https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgeode.apache.org%2Fdocs%2Fguide%2F18%2Ftools_modules%2Fgfsh%2Fcommand-pages%2Fstart.html%23topic_3764EE2DB18B4AE4A625E0354471738A&data=02%7C01%7CGuy.Turkenits%40Amdocs.com%7C19325bccf7a94f229d2108d79aa217f4%7Cc8eca3ca127646d59d9da0f2a028920f%7C0%7C0%7C637147893280473658&sdata=bD5ha6kcUthfbj8vSURApy4hzxwMrrz2wA5q6%2F7lvk8%3D&reserved=0> [2] https://docs.spring.io/spring-data/geode/docs/current/reference/html/#bootstrap-annotation-config-client-server-applications<https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.spring.io%2Fspring-data%2Fgeode%2Fdocs%2Fcurrent%2Freference%2Fhtml%2F%23bootstrap-annotation-config-client-server-applications&data=02%7C01%7CGuy.Turkenits%40Amdocs.com%7C19325bccf7a94f229d2108d79aa217f4%7Cc8eca3ca127646d59d9da0f2a028920f%7C0%7C0%7C637147893280483655&sdata=FwDj4G9pKvvDC1nNfGulXdBrS6dwJnlhx80MyJ6u8h8%3D&reserved=0> -- George. From: Guy Turkenits <guy.turken...@amdocs.com<mailto:guy.turken...@amdocs.com>> Sent: Thursday, January 16, 2020 5:42 AM To: user@geode.apache.org<mailto:user@geode.apache.org> Subject: Geode client against Geode server on EAAS Hi team I am working with geode 1.4 and trying to connect from client outside of EAAS to Geode server on EAAS. I am managed to connect to the external ip of the locator (10.xxx.xxx.xxx) but when the client gets the list of geode servers to work with it gets it with the internal ip (192.xx.xx.xx) of the EAAS, so my client cant connect to geode servers. Is there a way to overcome this? Thanks, Guy This email and the information contained herein is proprietary and confidential and subject to the Amdocs Email Terms of Service, which you may review at https://www.amdocs.com/about/email-terms-of-service<https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.amdocs.com%2Fabout%2Femail-terms-of-service&data=02%7C01%7CGuy.Turkenits%40Amdocs.com%7C19325bccf7a94f229d2108d79aa217f4%7Cc8eca3ca127646d59d9da0f2a028920f%7C0%7C0%7C637147893280483655&sdata=m0HRNRxM8ju1aD2HAv8wshCxCpuMlvPNb8MC45DomoA%3D&reserved=0> This email and the information contained herein is proprietary and confidential and subject to the Amdocs Email Terms of Service, which you may review at https://www.amdocs.com/about/email-terms-of-service <https://www.amdocs.com/about/email-terms-of-service>