Make cluster nodes to communicate with each other by private network and allow client connections from public network.

Some introduction:
I have four nodes in private network with IP’s

  • 192.168.0.1
  • 192.168.0.2
  • 192.168.0.3

And also each node has public IP/hostname

Currently I’ve configured cluster to use hostnames.
Everything is ok and all clients have access to cluster.
And nodes communicate with each other by hostnames - by public network. And it’s slower than private network.

If I configure cluster using private IP’s, clients that’re not in private network will not be able to access the cluster.

How should I configure cluster to make nodes communicate with each other by private network and allow client from public network access it?
Thanks.

Hi @dub,

This is definitely an issue we’re aware of and working on that will be available in a future release. It’s come up in the context of various cloud providers, but the improvement should also be able to help you out.

Hi Matthew
Is this feature now available?
I have got the following version of Couchbase database in my system:

couchbase-server-community-4.5.0-2601.x86_64

Regards
Damian

Are you not able to use host files or DNS on the nodes, so that the external names resolve to the internal IPs?

That way clients still get the correct external names, but the cluster comms is internal.

I have actually used the internal comms for adding hosts to the cluster and it seems that both internal/external communication is taken care of. I think using DNS/ host files would have complicated a matter as you would not know which ones are used by the system /etc and we have got no DNS available on this system.

I would like to know if this is the supported configuration on the couchbase system.

I have got Eth0 - public IP -< available externally
and Eth1 - private IP (RFC1918) -< used for adding hosts into the cluster and for private comms.

Dub, which version of Couchbase have you used?

hi Matthew, any idea which version it was not supported in and whether it is now supported in 4.5?

@emboss,

I’m working getting the details (and a case number if I can find one), but I think there plan is to support it in 5.5. (I’m not sure if it’s supported in the current 5.5 developer build that’s available for download).

Thank you Matthew, how about 4.5.0 community. Is this not supported either?

Is there a setup guide on how to do this from admin? I’m also looking for a set up where internode communication is on internal netowork

Is this available in CB server Enterprise Edition 5.5?

Also, can a different network be used for bkp?

Basically, is the foll. possible:
network_1 for internal comm
network_2 for client comm
network_3 for XDCR
network_4 for bkp

If network_1 & network_2 is same, that will also do.

Thanks

Hi @pccb,

I’ve tagged @anil who can hopefully address your question.

Hi @pccb,

As @matthew.groves mentioned we shipped a server feature “alternate address” in Couchbase Server 5.5.0 release here is the JIRA MB-24250 but this feature is not fully GA with documentation until (next release) upcoming 6.5.0 release. Here is the JIRA MB-32751 DOC-4493 for GA in 6.5.0.

Hope that helps!

Anil Kumar

Thanks Matthews and Anil.

Hi Anil, I tried but could not access either of the docs/pages.

Meanwhile, as I understand from your response, at this point it’s not possible. Even if all of the mentioned 4 are not possible, is any 1/2/3 possible?

Alternately, any workarounds that you can suggest? In enterprise environments, as you would be aware, these are different subnets/vLANs. And this should be a common req so other users would be working around somehow, I guess.

Thanks again

Regards

Hi Anil Kumar, Was checking if this is this coming through in 6.5. Thanks