In the same data center I have an application server (the client) connecting to a couchbase cluster containing 3 nodes.
I would like the client to connect via the intern
Couchbase uses a single address (IP or hostname) to identify each cluster node. These addresses are then sent to clients when bootstrapping so they can connect to all the nodes in the cluster. What you are seeing will be due to you initially setting up the cluster nodes using the external IP address as their names, and this is what is sent to clients when they connect.
To achieve what you want to do you will need to use hostnames (Admin guide) instead of IP addresses for identifying each node, then configure your clients' DNS to use the external IP address, but the nodes' DNS (or /etc/hosts
) to use the internal IP.