I have a private GKE cluster running in a single subnet and region. The nodes in the cluster utilize the subnet's CIDR of
10.60.0.0/16. The cluster has two secondary CIDR ranges for its pods and services (
On-prem I have a Meraki router with an established IKEv1 VPN tunnel to the single subnet. The router does not support IKEv2 and I currently cannot configure BGP (however I think this may be a possibility and am reaching out to our rep). I believe the Meraki expects to handle this situation by specifying multiple traffic selectors, however GCP does not support this for static routing as it goes against the standard. I am able to connect to the nodes using their internal IPs in the subnet, but I cannot connect to any of the pods or services running in the secondary CIDRs from on-prem.
I am very inexperienced with this area so I apologize for any inconsistencies, but here is what I've tried so far and what I'm thinking may work:
I've tried a second VPN connection specifically for the GKE service CIDR. I can get the tunnel connected but still cannot connect to the services. I created this using a terraform module that I also used for my other VPN. Not sure if there may be some firewall rules I need to add?
If I can get my router to support BGP then that may work from what I can see in Google's guides. Can you even use BGP over IKEv1?
Using single VPN, create an internal load balancer running in the subnet. However this would have some drawbacks and would increase complexity I think.
If I cannot get my router to support BGP, and this is the only way to make this work, I could spin up a separate VPN server on-prem if I had to. I would prefer not to do this though.