We have a Shared VPC used across our organisation. In order to preserve IP space, teams create GKE clusters in separate VPCs (in their own GCP projects) with some fixed CIDR range (that does not overlap with the Shared VPC) and then create proxy instances in their own VPC with a second interface coming from a compute address in the Shared VPC.
GKE clients in the Shared VPC can then do export HTTPS_PROXY=<compute-address>:<proxy-port>
and kubectl
commands will be proxied through the proxy to reach the GKE cluster.
A improvement of this would be to run this proxy on the GKE clusters themselves and use a GCP internal load balancer to bridge the Shared VPC and each team-owned VPC.
Is this possible on GCP? i.e. can you have an internal load balancer that has an ingress IP in the Shared VPC but with backends that reside in a separate VPC?