]
Radoslav Husar commented on WFLY-10269:
---------------------------------------
[~kabirkhan] I noticed the title was misleading, implying like this would be a new option.
Fixed the title now.
RemoteStore should use unresolved hostnames to accommodate dynamic
environments
-------------------------------------------------------------------------------
Key: WFLY-10269
URL:
https://issues.jboss.org/browse/WFLY-10269
Project: WildFly
Issue Type: Enhancement
Components: Clustering
Affects Versions: 11.0.0.Final
Reporter: Marek Posolda
Assignee: Paul Ferraro
Use-case: We have openshift environment with RHSSO server connected to JDG server through
HotRod protocol. RHSSO is connected to JDG through the RemoteStore . Configuration on
RHSSO side is like this:
Socket binding in standalone-ha.xml
{code}
<outbound-socket-binding name="remote-cache">
<remote-destination host="jdg-app-hotrod.infinispan.svc"
port="11222"/>
</outbound-socket-binding>
{code}
And remote-store something like this:
{code}
<replicated-cache name="work" mode="SYNC">
<remote-store cache="work" remote-servers="remote-cache"
passivation="false" fetch-state="false" purge="false"
preload="false" shared="true">
</remote-store>
</replicated-cache>
{code}
Let's assume that JDG needs to be restarted. This usually causes that service
"jdg-app-hotrod.infinispan.svc" will be available under different IP address.
For example previous IP of "jdg-app-hotrod.infinispan.svc" is
"172.30.247.78" . After restart, it is changed to "172.30.28.27" .
The issue is, that HotRod client won't be able to see this change and will still try
to connect to old address.
Why?: The org.jboss.as.clustering.infinispan.subsystem.RemoteStoreBuilder method
"accept" always pass resolved address to infinispan:
https://github.com/wildfly/wildfly/blob/master/clustering/infinispan/exte...
. So infinispan will receive just static IP address.
If there is an option for RemoteStoreBuilder to pass the "unresolved" hostname,
it will help. Infinispan itself has support for "unresolved" dynamic hostnames
thanks to the JIRA: ISPN-7955 , so it is already able to dynamically adapt to changed IP.