The question is pretty generic so I can only suggest generic solutions
Yes, you can make a distributed cluster. Just use GKE in this problem. For references on this, do check Kubernetes documentation and GKE documentation.
If you create many VMs (assuming your first GKE cluster), pricing follows Google Compute VM. On stop of instance, billing stops. If you have more than 1 GKE instance, you would need to pay for the "master node" fee which is pretty pricey