Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Terraform, GKE - Option to create a Regional Cluster #1441

Closed
markmandel opened this issue Apr 1, 2020 · 5 comments · Fixed by #2813
Closed

Terraform, GKE - Option to create a Regional Cluster #1441

markmandel opened this issue Apr 1, 2020 · 5 comments · Fixed by #2813
Assignees
Labels
area/operations Installation, updating, metrics etc good first issue These are great first issues. If you are looking for a place to start, start here! help wanted We would love help on these issues. Please come help us! kind/documentation Documentation for Agones kind/feature New features for Agones
Milestone

Comments

@markmandel
Copy link
Member

Is your feature request related to a problem? Please describe.
A best practice for production workload on GKE would be to run on Regional Clusters, and not Zonal Clusters. Regional clusters provide redundancy on the masters, as well as allowing nodepools to exist across zones as well.

Describe the solution you'd like
Have an option to create the cluster as Regional within GKE on the Terraform config.
This should also turn off cluster auto balancing as well.

We should discuss if this should be the default or not.

Default on is a breaking change, but drives people towards a production setup.
Default off is a nicer "try out" experience, but drives people towards a non-production setup. We could potentially solve this with documentation.

Describe alternatives you've considered
None.

Additional context

@markmandel markmandel added kind/feature New features for Agones area/operations Installation, updating, metrics etc labels Apr 1, 2020
@aLekSer
Copy link
Collaborator

aLekSer commented Apr 6, 2020

Current Terraform config design allows creating Regional clusters, by changing zone parameter to a regional one:

make gcloud-terraform-cluster GCP_CLUSTER_ZONE=us-west1 

This creates 18 nodes in total - 3 (1 per zone) nodes for agones-system, 12 for default gameservers NodePool.
Running test-e2e against this cluster - they run successfully.

https://www.terraform.io/docs/providers/google/r/container_cluster.html#location

I am looking at what additionally should be added to Terraform configs to support Regional Cluster.

There is also an option to switch to different Terraform module:
https://github.com/terraform-google-modules/terraform-google-kubernetes-engine

@roberthbailey roberthbailey added the kind/documentation Documentation for Agones label Dec 17, 2020
@markmandel
Copy link
Member Author

We could add a new "location" variable, and make it backward compatible with "zone", and slowly deprecate "zone" over time.

I like this idea 👍 Then it's less confusing creating a regional cluster via the "zone" param.

@roberthbailey
Copy link
Member

We discussed this during the community meeting today and came to the following conclusions:

  1. We should leave the getting started flow using zonal clusters, since they are faster to create and use less resources.
  2. We should add a note / tip to the getting started docs for GKE to recommend using regional clusters for production.
  3. We should modify terraform to use location instead of zone, but as Mark mentioned above we should make sure we keep things backwards compatible for at least 1 release and give folks a warning in the release notes that the variable name is changing.

@roberthbailey roberthbailey added good first issue These are great first issues. If you are looking for a place to start, start here! help wanted We would love help on these issues. Please come help us! labels May 5, 2021
@zmerlynn
Copy link
Collaborator

zmerlynn commented Nov 4, 2022

@chiayi is working on this but not a collaborator here so I can't assign.

@markmandel
Copy link
Member Author

Invite pending! 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/operations Installation, updating, metrics etc good first issue These are great first issues. If you are looking for a place to start, start here! help wanted We would love help on these issues. Please come help us! kind/documentation Documentation for Agones kind/feature New features for Agones
Projects
None yet
6 participants