# Multiple publish\_host for nodes communication behind a firewall

**URL:** https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821
**Category:** Elasticsearch
**Created:** [November 18, 2020, 10:50am UTC](https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821 "2020-11-18T10:50:55Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![Vincent\_DOS\_SANTOS](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vincent_dos_santos/32/57535_2.png) [@Vincent\_DOS\_SANTOS](https://discuss.elastic.co/u/Vincent_DOS_SANTOS)
#### Post date: [November 18, 2020, 10:50am UTC](https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821/1 "2020-11-18T10:50:55Z")

</div>

Hi,

we currently have a cluster in version 7.6.0, composed of 28 nodes spread over 2 datacenters :

- 14 in datacenter A (named es1-A, es2-A, ..., es14-A)
- 14 in datacenter B (named es1-B, es2-B, ..., es14-B)  
3 nodes are master-elligible:
- es2-A
- es3-A
- es2-B  
The problem is therefore that if datacenter A falls, the cluster will not be able to reform itself just with the nodes of datacenter B, because they will only see the master node es2-B when they need at least 2.

So, we added a master-elligible node on a 3rd datacenter "C" called es1-C.  
And we remove the es3-A node from the master-elligible.

The 3 master-elligible nodes therefore become:

- es2-A
- es2-B
- es1-C  
Which will solve our problem.

But I am unable to integrate es1-C to the cluster for the following reasons:

- Datacenters A and B are on the same network, the nodes communicate with each other with their private hostname / IP.
- Datacenter C is not on the same network as A and B.
- es1-C therefore goes through a public firewall to call the nodes of es2-A and es2-B.
- But the nodes of A and B expect to be called by their private IP (conf "publish\_address")
- So es1-C tries to call them with their private IPs too, but it can't because it doesn't know them ....

See attached diagram.

 ![elastic_cluster_discovery](https://us1.discourse-cdn.com/elastic/original/3X/9/0/90da75ba9751d131d3f4a02091b11d7d3dadee80.png)

Here are my questions:

- Can a node be reachable for other nodes by multiple addresses ?
- Does a node need to be able to communicate with all the other nodes in the cluster or does it just need to see the master-elligibles ?

And I don't want all the other nodes of datecenter A and B to go through the firewall to connect to each other

Thank you.

---

<div class="post-metadata">

### Author: ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)
#### Post date: [November 18, 2020, 11:39am UTC](https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821/2 "2020-11-18T11:39:48Z")

</div>

> [@Vincent\_DOS\_SANTOS](#):
>
> - Can a node be reachable for other nodes by multiple addresses ?

No, Elasticsearch needs the network to "look the same" from every node.

> [@Vincent\_DOS\_SANTOS](#):
>
> - Does a node need to be able to communicate with all the other nodes in the cluster or does it just need to see the master-elligibles ?

Yes, all nodes need connectivity to all other nodes.

---

<div class="post-metadata">

### Author: ![Vincent\_DOS\_SANTOS](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vincent_dos_santos/32/57535_2.png) [@Vincent\_DOS\_SANTOS](https://discuss.elastic.co/u/Vincent_DOS_SANTOS)
#### Post date: [November 18, 2020, 1:33pm UTC](https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821/3 "2020-11-18T13:33:43Z")

</div>

Ok thank you for your response.

---

<div class="post-metadata">

### Author: ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)
#### Post date: [November 18, 2020, 9:48pm UTC](https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821/4 "2020-11-18T21:48:15Z")

</div>

Elasticsearch doesn't like forming clusters across networks either. Network latency can cause nodes to drop out for eg.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [December 16, 2020, 9:48pm UTC](https://discuss.elastic.co/t/multiple-publish-host-for-nodes-communication-behind-a-firewall/255821/5 "2020-12-16T21:48:30Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
