eddycharly / terraform-provider-kops

Brings kOps into terraform in a fully managed way
Apache License 2.0
85 stars 20 forks source link

kops_cluster_updater rolling_update by instance-group/instance-group-roles #1113

Open partcyborg opened 6 months ago

partcyborg commented 6 months ago

Our kops clusters have a number of workloads that are sensitive to disruption so we try to avoid unplanned pod restarts. One of the ways that we do this is when we upgrade kops or kubernetes, we only perform kops rolling-update on the masters and specific node groups by running

$ kops update cluster --yes
$ kops rolling-update cluster --instance-group-roles Master --yes
$ kops rolling-update cluster --instance-group <safe pool a>,<safe pool b>... --yes

We then taint the nodes in the other pools and allow them to recycle naturally as workloads restart on their own.

Is there a way to implement an equivalent workflow using kops_cluster_updater? I know we can just disable rolling updates altogether and run the kops rolling-update commands manually, but it would be great to avoid any manual kops commands if possible.

partcyborg commented 6 months ago

Since there does not appear to be support for this. I went ahead and sent out a PR adding it.