Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Setup the cluster with the [terraform google provider][1], instead of the higher level [gke module][2]. The code gets simpler, and makes more terraform features (like for_each) accessible more easily. - Allow multiple notebook and dask nodepools to be set up. Most research hubs want 2-3 options of notebook sizes to optimize for spend. I attempted to use [gke node autoprovisioning][3] instead of requiring manual nodepool provisioning, but it consistently provisioned nodes bigger than required. We should re-evaluate it later. - Expose the GCP SA used by the k8s nodes to the user pods. A highly restricted SA is used for this, to prevent damage as much as possible. Users can then make requests to GCS buckets in other projects on behalf of this project. - Dask Nodepools will default to matching sizes of the notebook nodepools. Can be overriden if necessary. - Split terraform code into multiple files for easier maintenance - Move tfvars files into a subdirectory and split terraform code into multiple files for easier maintenance - Remove unused terraform variables - Add some inline terraform docs - Setup MOEM-IGE cluster + hub with new terraform code [1]: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/container_cluster [2]: https://registry.terraform.io/modules/terraform-google-modules/kubernetes-engine/google/latest [3]: https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-provisioning
- Loading branch information