You could argue that Google was providing GCE and therefore GCE couldn't scale, but GCE is really just hosted Kubernetes and it's scaling limits were known in advance. Luckily GCP was able to push a quick version update and migrate the cluster but that took considerable time, coordination and engineering effort that couldn't be done "seamlessly".
This is a clear situation where the software Niantic chose couldn't handle the resources that were available. It turns out a lot of the choices you made for your worst case capacity aren't necessarily adequate for 50x that amount :)
(disclaimer I work at Google but not on GCP)
GCE - Google Compute Engine. VMs in the Cloud.
GKE - Google Container Engine. Hosted Kubernetes. Runs on top of GCE.
(I work on GCE)