Default Node Template

What is a Default Node Template?

The Default Node Template is a crucial part of the Autoscaler component. It is created when you turn on the Unscheduled pods policy. It lets you define a set of properties that the Autoscaler uses to decide which nodes to select for scaling up the cluster.

Default Node Template allows you to:

  • Specify various constraints to limit the range of instance types used for upscaling the cluster;
  • Select a preferred instance lifecycle (e.g., build a spot-only cluster without the need for specific tolerations or selectors);
  • Link a default provisioning configuration to be applied when creating new nodes;
  • Create a partial autoscaler behaviour to restrict the Autoscaler to react only to pending Pods from specifically marked workloads.

CAST AI will use the rules you define in the Default Node Template for selecting nodes in response to upscale events not triggered by workloads configured to use other Node templates, i.e., virtual node pools you can create for specific applications.

πŸ“˜

There is no dependency between the Default Node Template and other Node Templates. They can be enabled or disabled independently, depending on the use case.

Main attributes

AttributeDescriptionAvailability per Cloud provider
Custom labels and taintsChoose this if custom labels or taints should be applied on the nodes created by CAST AI.

Based on the selected properties, NodeSelector and Toleration must be applied to the workload to trigger the autoscaling.
All
Node configuration linkA link to a set of attributes to be configured on the Nodes provisioned by the CAST AI. To learn more, see Node configuration.All
LifecycleThis attribute tells the Autoscaler which node lifecycle (spot or on-demand) it should create. There is an option to configure both lifecycles, in which case workloads targeted to run on spot nodes must be marked accordingly. Check this guide.

Additional configuration settings available when you want the Autoscaler to use spot nodes:

Spot fallback – when spot capacity is unavailable in the cloud, CAST AI will create temporary on-demand fallback nodes.

Interruption prediction model - this feature works only for AWS customers: CAST AI can react to AWS rebalancing notifications or its own ML model to predict spot interruptions and rebalance affected nodes proactively. See this guide for more details.

Diversified spot instances - by default, CAST AI seeks the most cost-effective instances without assessing your cluster's current composition. To limit the impact of a potential mass spot reclaim, you can instruct the Autoscaler to evaluate and enhance the diversity of spot nodes in the cluster, but this may increase your costs. Read more
The interruption prediction model is only available for AWS
Processor architectureYou can select x86_64, ARM64, or both architecture nodes to be created by CAST AI. When using a multi-architecture Node Template, also use the NodeSelector kubernetes.io/arch: "arm64" to ensure that the Pod lands on an ARM node.AWS, GCP
GPU-enabled instancesChoose this attribute to run workloads on GPU-enabled instances only. Once you select it, Instance constraints get enhanced with GPU-related properties.AWS, GCP
Apply Instance constraintsApply additional constraints on instances to be selected, such as:
- Instance Family;
- Min/Max CPU;
- Min/Max Memory;
- Compute-optimized;
- Storage-optimized;
- GPU manufacturer, name, count.
- Bare metal* (only supported on AWS)
All
Custom instancesThe Autoscaler will consider GCP custom VM types in addition to predefined machines. The extended memory setting will allow the Autoscaler to determine whether a custom VM with an increased amount of memory per vCPU would be the most optimal choice.GCP