bhouse-nexthop opened a new issue, #14615:
URL: https://github.com/apache/cloudstack/issues/14615

   ### problem
   
   The service offering, root disk size and affinity groups of the nodes of an 
existing CKS (CloudManaged) Kubernetes cluster can't be changed in a way that 
keeps the workloads running:
   
   - `scaleKubernetesCluster` with a new service offering (`serviceofferingid` 
or `nodeofferings`) changes every node of the type at once, with no cordon or 
drain.
   - The root disk size of the nodes is fixed at creation. A node that runs out 
of disk can only be grown by hand, one volume at a time, outside CKS.
   - The affinity groups of the nodes are set at creation. Changing them needs 
each VM stopped by hand, and CKS keeps creating new nodes with the old groups.
   
   There's no supported way to move the nodes of a cluster to new settings a 
few at a time, for example to spread the workers over hosts with an 
anti-affinity group, or to give the control plane more memory.
   
   ### versions
   
   Apache CloudStack main (24.0), CKS with CloudManaged clusters. Not specific 
to a hypervisor or a storage type.
   
   ### The steps to reproduce the bug
   
   1. Create a CKS cluster with 3 workers.
   2. Try to give the workers a larger root disk, a different service offering 
than the control nodes, or a new anti-affinity group.
   3. There is no API for the root disk or the affinity groups. The scale 
changes the offering of every worker at once, without draining them.
   
   ### What to do about it?
   
   Let `updateKubernetesCluster` set the service offering, root disk size and 
affinity groups of each node type (control, worker, etcd). New nodes get these 
settings. With `rollout=true`, the existing nodes that differ are restarted 
with them a few at a time: each node is cordoned and drained, its VM is 
stopped, changed and started, and the node is uncordoned once Kubernetes 
reports it Ready again. The rollout can be resumed if it stops, and other 
operations are refused while it runs.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

  • [I] CKS: change the service o... bhouse-nexthop (via GitHub) via commits

Reply via email to