When creating a GKE cluster in GCP, we need to specify a zone. Can all users use any zone? like this:
gcloud container clusters create gke-cluster --zone=us-central1-a
In addition, according with your node requirement (GPU, TPU, CPU generation, number of vCPU available,...) it's possible that some zone aren't available because these aren't available.
It's not a GKE limitation, it's a compute engine limitation.
Each GCP product availability is set on a per region basis. If it's available in a region, it's available in all zones within that region. Google documents each product availability by region here. As you can see, GKE is available in all regions so you can choose whichever you want when creating your cluster.
Having said that, one exception to this is if your GCP project is under an organization that has defined an organization policy that includes a resource locations constraint. In this case, you'll only be allowed to create your cluster in the regions/zones permitted by that policy.