<div dir="ltr">I think the external/internal address translation should be provided by the user. I&#39;m working on a prototype here: <a href="https://github.com/slaskawi/infinispan/commit/eeeeae7b567fd84946cba90153d7abf2dd0d6641">https://github.com/slaskawi/infinispan/commit/eeeeae7b567fd84946cba90153d7abf2dd0d6641</a><div><br></div><div>I will tidy it up and send a pull request later this week.</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, May 22, 2017 at 4:49 PM Tristan Tarrant &lt;<a href="mailto:ttarrant@redhat.com">ttarrant@redhat.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We would need to provide a way to supply the external address at<br>
runtime, e.g. via JMX.<br>
<br>
Tristan<br>
<br>
On 5/22/17 2:50 PM, Sebastian Laskawiec wrote:<br>
&gt; Hey Tristan!<br>
&gt;<br>
&gt; I checked this part and it won&#39;t do the trick. The problem is that the<br>
&gt; server does not know which address is used for exposing its services.<br>
&gt; Moreover, this address can change with time.<br>
&gt;<br>
&gt; Thanks,<br>
&gt; Sebastian<br>
&gt;<br>
&gt; On Tue, May 9, 2017 at 3:28 PM Tristan Tarrant &lt;<a href="mailto:ttarrant@redhat.com" target="_blank">ttarrant@redhat.com</a><br>
&gt; &lt;mailto:<a href="mailto:ttarrant@redhat.com" target="_blank">ttarrant@redhat.com</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;     Sebastian,<br>
&gt;     are you familiar with Hot Rod&#39;s proxyHost/proxyPort [1]. In server it is<br>
&gt;     configured using external-host / external-port attributes on the<br>
&gt;     topology-state-transfer element [2]<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;     [1]<br>
&gt;     <a href="https://github.com/infinispan/infinispan/blob/master/server/hotrod/src/main/java/org/infinispan/server/hotrod/configuration/HotRodServerConfigurationBuilder.java#L43" rel="noreferrer" target="_blank">https://github.com/infinispan/infinispan/blob/master/server/hotrod/src/main/java/org/infinispan/server/hotrod/configuration/HotRodServerConfigurationBuilder.java#L43</a><br>
&gt;     [2]<br>
&gt;     <a href="https://github.com/infinispan/infinispan/blob/master/server/integration/endpoint/src/main/resources/schema/jboss-infinispan-endpoint_9_0.xsd#L203" rel="noreferrer" target="_blank">https://github.com/infinispan/infinispan/blob/master/server/integration/endpoint/src/main/resources/schema/jboss-infinispan-endpoint_9_0.xsd#L203</a><br>
&gt;<br>
&gt;<br>
&gt;     On 5/8/17 9:57 AM, Sebastian Laskawiec wrote:<br>
&gt;      &gt; Hey guys!<br>
&gt;      &gt;<br>
&gt;      &gt; A while ago I started working on exposing Infinispan Cluster which is<br>
&gt;      &gt; hosted in Kubernetes to the outside world:<br>
&gt;      &gt;<br>
&gt;      &gt; pasted1<br>
&gt;      &gt;<br>
&gt;      &gt; I&#39;m currently struggling to get solution like this into the<br>
&gt;     platform [1]<br>
&gt;      &gt; but in the meantime I created a very simple POC and I&#39;m testing it<br>
&gt;      &gt; locally [2].<br>
&gt;      &gt;<br>
&gt;      &gt; There are two main problems with the scenario described above:<br>
&gt;      &gt;<br>
&gt;      &gt;  1. Infinispan server announces internal addresses (172.17.x.x)<br>
&gt;     to the<br>
&gt;      &gt;     client. The client needs to remap them into external ones<br>
&gt;     (172.29.x.x).<br>
&gt;      &gt;  2. A custom Consistent Hash needs to be supplied to the Hot Rod<br>
&gt;     client.<br>
&gt;      &gt;     When accessing cache, the Hot Rod Client needs to calculate<br>
&gt;     server<br>
&gt;      &gt;     id for internal address and then map it to the external one.<br>
&gt;      &gt;<br>
&gt;      &gt; If there will be no strong opinions regarding to this, I plan to<br>
&gt;      &gt; implement this shortly. There will be additional method in Hot Rod<br>
&gt;      &gt; Client configuration (ConfigurationBuilder#addServerMapping(String<br>
&gt;      &gt; mappingClass)) which will be responsible for mapping external<br>
&gt;     addresses<br>
&gt;      &gt; to internal and vice-versa.<br>
&gt;      &gt;<br>
&gt;      &gt; Thoughts?<br>
&gt;      &gt;<br>
&gt;      &gt; Thanks,<br>
&gt;      &gt; Sebastian<br>
&gt;      &gt;<br>
&gt;      &gt; [1] <a href="https://github.com/kubernetes/community/pull/446" rel="noreferrer" target="_blank">https://github.com/kubernetes/community/pull/446</a><br>
&gt;      &gt; [2] <a href="https://github.com/slaskawi/external-ip-proxy" rel="noreferrer" target="_blank">https://github.com/slaskawi/external-ip-proxy</a><br>
&gt;      &gt;<br>
&gt;      &gt;<br>
&gt;      &gt; _______________________________________________<br>
&gt;      &gt; infinispan-dev mailing list<br>
&gt;      &gt; <a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
&gt;     &lt;mailto:<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a>&gt;<br>
&gt;      &gt; <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
&gt;      &gt;<br>
&gt;<br>
&gt;     --<br>
&gt;     Tristan Tarrant<br>
&gt;     Infinispan Lead<br>
&gt;     JBoss, a division of Red Hat<br>
&gt;     _______________________________________________<br>
&gt;     infinispan-dev mailing list<br>
&gt;     <a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a> &lt;mailto:<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a>&gt;<br>
&gt;     <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
&gt;<br>
&gt; --<br>
&gt;<br>
&gt; SEBASTIANŁASKAWIEC<br>
&gt;<br>
&gt; INFINISPAN DEVELOPER<br>
&gt;<br>
&gt; Red HatEMEA &lt;<a href="https://www.redhat.com/" rel="noreferrer" target="_blank">https://www.redhat.com/</a>&gt;<br>
&gt;<br>
&gt; &lt;<a href="https://red.ht/sig" rel="noreferrer" target="_blank">https://red.ht/sig</a>&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; infinispan-dev mailing list<br>
&gt; <a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
&gt; <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
&gt;<br>
<br>
--<br>
Tristan Tarrant<br>
Infinispan Lead<br>
JBoss, a division of Red Hat<br>
_______________________________________________<br>
infinispan-dev mailing list<br>
<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a></blockquote></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr"><p class="inbox-inbox-fullname-container" style="box-sizing:border-box;color:rgb(0,0,0);font-family:overpass,sans-serif;font-weight:bold;margin:0px;padding:0px;font-size:14px;text-transform:uppercase"><span class="inbox-inbox-firstname-container" style="box-sizing:border-box">SEBASTIAN</span><span class="inbox-inbox-Apple-converted-space"> </span><span class="inbox-inbox-lastname-container" style="box-sizing:border-box">ŁASKAWIEC</span></p><p class="inbox-inbox-position-container" style="box-sizing:border-box;color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:10px;margin:0px 0px 4px;text-transform:uppercase"><span class="inbox-inbox-position" style="box-sizing:border-box">INFINISPAN DEVELOPER</span></p><p class="inbox-inbox-legal-container" style="box-sizing:border-box;font-family:overpass,sans-serif;margin:0px;font-size:10px;color:rgb(153,153,153)"><a class="inbox-inbox-redhat-anchor" href="https://www.redhat.com/" target="_blank" style="box-sizing:border-box;color:rgb(0,136,206);margin:0px;text-decoration:none">Red Hat<span class="inbox-inbox-Apple-converted-space"> </span><span style="box-sizing:border-box">EMEA</span></a></p><table border="0" style="box-sizing:border-box;color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:medium"><tbody style="box-sizing:border-box"><tr style="box-sizing:border-box"><td width="100px" style="box-sizing:border-box"><a href="https://red.ht/sig" style="box-sizing:border-box"><img width="90" height="auto" style="box-sizing: border-box;" src="https://www.redhat.com/files/brand/email/sig-redhat.png"></a></td></tr></tbody></table></div></div>