scale_workers
Scale the workers of an Ankra-provisioned self-managed cluster (Hetzner, OVH, UpCloud, DigitalOcean, Scaleway, Proxmox VE, or HPE Morpheus). With node_group_name, scales that node group to worker_count (0-100; the target is clamped into the group's autoscaling bounds when autoscaling is enabled); without it, performs the legacy whole-cluster scale to worker_count (1-10; refused while any node group has autoscaling enabled - scale the group directly instead). The cluster must be online and free of in-progress operations. New workers provision in the background. On scale-down the highest-index workers drain one at a time through the eviction API, honouring PodDisruptionBudgets, and are then terminated; a worker whose drain a PodDisruptionBudget refuses is kept in service and the scale-down is withdrawn for it, so the group can settle above worker_count. Call list_node_groups first to see the current counts, and again afterwards to confirm them.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Alias for worker_count. | |
| cluster_id | No | UUID of the target cluster. Optional when a cluster is selected. | |
| force_drain | No | Scale-down only. Remove the workers without honouring PodDisruptionBudgets: each is drained the way a cluster teardown drains it, and removed even when its drain is refused or the node is unreachable. Off by default: a scale-down drains each worker through its budgets and keeps a worker whose drain is refused. Set it only when the user explicitly asks to remove a worker anyway - for example a dead worker, or one a budget keeps refusing - never on your own. | |
| cluster_name | No | Exact name of the target cluster. Optional when a cluster is selected. | |
| worker_count | No | Desired worker count. Required ('count' is accepted as an alias). | |
| node_group_name | No | Node group to scale (from list_node_groups). Omit for the legacy whole-cluster scale. |