kubernetes / kubernetes/kops

Add Support for multiAZ GCE Regional Managed Instance Groups

Open
#18,411 7 comments 0 reactions 1 assignee Claimed by @wasimat404 View on GitHub
kind/feature
Dominant language
Go
Stars
16.7k
Forks
4.7k
Avg merge
17h 21m
Merged PRs (30d)
68

Description

/kind feature

When @justinsb implemented the GCE AutoscalingGroupModelBuilder back in 2017, there wasn't a clear way to support [Regional Managed Instance Groups](https://docs.cloud.google.com/compute/docs/instance-groups/regional-migs) with a single autoscaling Instance Group spread across multiple zones. This was left as a TODO item here: https://github.com/kubernetes/kops/blame/master/pkg/model/gcemodel/autoscalinggroup.go#L285-L289

Since then, this support has been added to the Google Cloud terraform provider, including the ability to specify the AZs with a `distribution_policy_zones` parameter.
https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_region_instance_group_manager#distribution_policy_zones-1
https://github.com/hashicorp/terraform-provider-google/pull/1092

It should now be possible to refactor the `gcemodel.AutoscalingGroupModelBuilder#Build` to avoid the need to split a single logical Autoscaling Group across multiple underlying GCE InstanceGroups. Though, there might be reasons to allow multi-IG creation for backwards compatibility with autoscaling groups created the old way.

My motivating example for advocating for this change would be to help with bugs related to ASG scaling across multiple GCE zones where some have limited spot instance availability.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.