In AWS, for EKS Cluster 1 (VPC 1), I experienced public service 1 can call private service 1 by Kubernetes DNS, but I have no idea how it can be achieved when it is from EKS Cluster 2 (VPC 2) public service 4 or private service 4.
Actually, the calling of private service 2 should be private and not exposed to the public in all cases.
What AWS / k8s technology shall I use?
I have 2 solutions for you to choose: 1. Open the services outside by using Nodeport service type, connect those 2 VPCs by VPC Peering and call by private-IP:nodeport. 2. I guess there is an ALB in front of your ingress nginx so you can also open the services by using Ingress service type, and create a record mapped with the domain and point to that ALB.