/kind feature
When @justinsb implemented the GCE AutoscalingGroupModelBuilder back in 2017, there wasn't a clear way to support Regional Managed Instance Groups 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
hashicorp/terraform-provider-google#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.
/kind feature
When @justinsb implemented the GCE AutoscalingGroupModelBuilder back in 2017, there wasn't a clear way to support Regional Managed Instance Groups 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_zonesparameter.https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_region_instance_group_manager#distribution_policy_zones-1
hashicorp/terraform-provider-google#1092
It should now be possible to refactor the
gcemodel.AutoscalingGroupModelBuilder#Buildto 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.