add_node_group
Add a new worker node group to an Ankra-provisioned self-managed cluster (Hetzner, OVH, UpCloud, DigitalOcean, Scaleway, Proxmox VE, or HPE Morpheus): creates count workers (default 1) of the given instance_type with optional labels, taints, and autoscaling settings. Instance types are provider-specific (e.g. 'cx23' on Hetzner, 'px-medium' on Proxmox VE; for HPE Morpheus pass the numeric service-plan id as a string). Group names are lowercase alphanumeric with hyphens and must not already exist. Works on a running or stopped cluster; new workers provision in the background.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Unique node group name (lowercase alphanumeric with hyphens). | |
| zone | No | UpCloud multi-zone clusters only: pin every node of the group to one zone of the cluster's pool (e.g. 'fi-hel2'). Omit to spread the group across the pool. | |
| count | No | Number of workers to create. Default: 1. | |
| labels | No | Optional Kubernetes node labels. | |
| taints | No | Optional Kubernetes node taints, each {key, value, effect}. | |
| disk_tier | No | Ankra Cloud only: storage tier of the root disk of every server the group creates, scale-ups included. Omit it for the zone's default tier. local-nvme puts the disk on the node's own fast disks (the right choice for CI nodes); standard, maxiops and hdd are the zone's Ankra Storage tiers. Refused on other providers. | |
| user_data | No | OVH only: opaque cloud-init user data applied verbatim at first boot by every instance the group ever creates, replacements included. Ankra sends no cloud-init of its own, so the document applies unmerged - use it for provision-time disk layouts (e.g. growpart mode off + sgdisk to carve a LUKS partition). Max 65535 bytes. | |
| cluster_id | No | UUID of the target cluster. Optional when a cluster is selected. | |
| autoscaling | No | Optional autoscaling settings: {enabled, min_count, max_count}. Bounds default to 1 and 100. min_count 0 (scale-to-zero) is allowed only when Ankra can size the group's instance_type, and is refused naming the instance type when it cannot. Enabling requires a recent cluster agent. | |
| cluster_name | No | Exact name of the target cluster. Optional when a cluster is selected. | |
| instance_type | Yes | Provider instance type for the group's workers (list_instance_types / list_proxmox_options / list_morpheus_options). It must be in stock at the cluster's location: call list_instance_types with cluster_id and pick an available type that fits the workloads' requests - an out-of-stock type is refused before the card is raised, naming in-stock types of at least its size. | |
| disk_gibibytes | No | Ankra Cloud only: root disk size in GiB of every server the group creates, scale-ups included. Omit it for the plan's included disk. Refused on other providers. | |
| availability_zone | No | OVH 3-AZ regions only: pin every node of the group to one availability zone (e.g. 'eu-west-par-b'). Omit to spread the group across the cluster's zones. Pin when the group runs zonal storage - an OVH High Speed volume cannot attach from another zone. |