Hello, I would like to confirm whether this guide is valid also to help schedule the time of EKS AutoMode managed nodes version upgrade (let's say from 1.32 to 1.33)? It is mentioned in the post "specifically allowing updates during a controlled maintenance window while restricting updates at other times.", just want to confirm.
I mean we are interested to control the day and time window of our EKS AutoMode managed nodes upgrade because we want to real time monitor the deployments, perform tests and sync our teams: NOC, developers, SRE/DevOps, PO.
Let's say we upgrade the control plane on day X, 11:00. If we set the EKS AutoMode managed nodes to be automatically upgraded on day X, between 12:00 - 15:00, can we be sure that the nodes will upgrade? Or we have to wait a minumum number of hours between control plane upgrade and AutoMode managed nodes upgrade? Like I mentioned this is important for us to involve several teams during the worker nodes upgrade: NOC, SRE, developers.
If in the AutoMode managed nodes upgrade schedule we choose a day and time window, let's say 11:00 - 15:00. Will the upgrade of the nodes start around 11:00 (11:15, 11:30) or it can even start at 14:00 ? This is important to us because we (again) need to allocate people for workloads monitoring (deploys, daemon sets, ....). We prefer not to have them stand-by for 2 hours and the upgrade of the nodes start in the 3rd hour.
Thank you.
replied 7 months ago
I can confirm that a new EKS version marks the nodeclaim as "Drifted" as well. You can't predict when nodes are exactly terminated within the maintenance window. Please note, that pod shutdownGracePeriodSeconds and nodepool terminationGracePeriod can further impact when nodes are terminated. Pods blocking eviction like PDBs and do-not-disrupt will be respected during draining until the terminationGracePeriod is reached, where those pods will be forcibly deleted. The "nodes" value determines the number or percentage of nodes considered disruption candidates at any time during the maintenance window. This value together with duration and the above will determine, if all nodes could be updated during the window. You should experiment with different values to make sure it works like required.
Related to the maintenance window set for Drifted nodeclaims, does EKS AutoMode guarantees that the nodes will be terminated during this maintenance window considering no pod PDB/do-not-disrupt and no pod shutdownGracePeriodSeconds exists or no nodepool terminationGracePeriod exists? Thank you.
replied 7 months ago
Terminating disruption candidates is default Karpenter behaviour. If nodes and durationallows enough candidates to get terminated during the maintenance schedule, it will work.
Relevant content
- AWS OFFICIALUpdated 2 years ago
