Today I’ve been trying to spin up a new cluster in terraform and have been unable to add a peering route between my network and the control plane. When I check the private cluster config I get the following:
Note there is no peeringName in the config and no master cidr block is automatically assigned. This used to happen automatically. My terraform looks like:
Check the release notes from March 11. Starting with GKE 1.29.3, private clusters now use PSC (which has been the case for public clusters for a while now) rather than VPC peering. This blog from Dec 2022 explains the new control plane networking (it was about public clusters, but now this applies to new private cluster 1.29.3 and later as well).
I’d like to understand how this breaks your automation … are you checking for something after the fact? Generally speaking, this should be more or less a transparent change.
Thanks. Correct. GKE peering update is part of our pipelined tf run (importing/exporting custom routes). Errors out now and as peering property on gke cluster resource is ‘’.
Thanks for pointing this out. We do have a new feature coming in GKE which will remove the need to do this at all coming in 4Q, but we’ll take a look at this in the meantime to figure out what can be done with the current PSC architecture. I actually think the GKE control plane endpoint will actually still be available even when using the architecture in the tutorial above since there’s a VPN tunnel in place so the control plane endpoint should actually still be available.
Also, would you mind using the “Feedback” button on the tutorial page you linked to file the issue? You can also ask them to reach out to me as well when you submit the feedback.
Same here - private cluster, shared vpc, private cloud build pools, needs peering to gke control plane and vpn gw architecture so you can hit control plane from cb to deploy k8s manifests. Only way i found to retain current set up is to provision gke @ v1.28.
I’ve sent Feedback on the tutorial. I have tried to just remove the peering route update step, however my build cannot hit the control plane (times out). I’ll revert to v1.28 for now as I think if I just bootstrap the cluster with that version I’ll get the peering and can upgrade it after.
But please let me know if you find a path to use PSC without any intervention. Thanks!
@garisingh Could you please state what changes were made from the tutorial?
with a couple modifications, I’m able to use this pattern to access the new PSC-based private clusters (created with 1.29.3 and later) from a Cloud Build private pool.
I was anyway not able to perform the steps in this section of the guide since the version of our Autopilot Private Cluster is v1.30.2-gke.1587003.
I have created a FW rule (VPC firewall rules) in the direction of Ingress with below config: