All Products
Search
Document Center

Container Service for Kubernetes:View the health status of node instant scaling

Last Updated:Jun 03, 2026

When a node pool runs out of a specific instance type in a zone, scaling requests fail silently. The node instant scaling add-on monitors inventory levels across all configured zones and writes real-time status to a ConfigMap in the kube-system namespace. Check this ConfigMap to catch low-stock conditions before they block scale-out.

Two signals are available:

Signal

Name

When to use

ConfigMap

{node pool id}-inventory-status

Ongoing monitoring and proactive instance type adjustments — continuously updated.

Event

InstanceInventoryStatusChanged

Reacting to inventory shifts as they happen — fired each time supply status changes for an instance type in a zone.

Prerequisites

Before you begin, make sure you have:

How it works

After you enable instant scaling for a node pool, the node instant scaling add-on:

  1. Retrieves all instance types configured for the node pool.

  2. Polls real-time inventory status for each instance type in each configured zone.

  3. Writes the results to a ConfigMap named {node pool id}-inventory-status in the kube-system namespace.

When supply status changes for any instance type in a configured zone, the add-on also emits an InstanceInventoryStatusChanged event on the ACKNodePool object, in the format:

{InstanceType}/{Zone} inventory status changed from {OldInventoryStatus} to {NewInventoryStatus}

Check inventory health status

  1. Log on to the ACK console. In the left navigation pane, click Clusters.

  2. On the Clusters page, click the name of the cluster.

  3. In the left-side navigation pane, choose Configurations > ConfigMaps.

  4. In the Namespace drop-down list, select kube-system. Find the ConfigMap named {node pool id}-inventory-status.

  5. View the data.status field for real-time inventory health.

Understand the ConfigMap fields

The data.status field contains a JSON object. The examples below show a healthy and a degraded inventory state side by side so you can identify anomalies quickly.

Example: healthy inventory

{
    "SupplySeqs": [
        {
            "InstanceType": "ecs.g6.8xlarge",
            "Zone": "cn-hongkong-c",
            "State": "WithStock"
        },
        {
            "InstanceType": "ecs.g6.8xlarge",
            "Zone": "cn-hongkong-b",
            "State": "WithStock"
        },
        {
            "InstanceType": "ecs.g5ne.4xlarge",
            "Zone": "cn-hongkong-c",
            "State": "WithStock"
        },
        {
            "InstanceType": "ecs.g5ne.4xlarge",
            "Zone": "cn-hongkong-b",
            "State": "WithStock"
        }
    ],
    "Conditions": [
        {
            "Type": "InventoryNoStock",
            "Status": "False",
            "Reason": "NoInterruption",
            "Message": "all instanceTypes are with stock",
            "LastTransitionTime": "2024-08-01T08:20:49Z"
        }
    ],
    "Phase": "Healthy",
    "LastTransitionTime": "2024-08-01T08:20:49Z"
}

Example: degraded inventory

{
    "SupplySeqs": [
        {
            "InstanceType": "ecs.g6.8xlarge",
            "Zone": "cn-hongkong-c",
            "State": "WithoutStock"
        },
        {
            "InstanceType": "ecs.g6.8xlarge",
            "Zone": "cn-hongkong-b",
            "State": "WithStock"
        },
        {
            "InstanceType": "ecs.g5ne.4xlarge",
            "Zone": "cn-hongkong-c",
            "State": "ClosedWithoutStock"
        },
        {
            "InstanceType": "ecs.g5ne.4xlarge",
            "Zone": "cn-hongkong-b",
            "State": "WithStock"
        }
    ],
    "Conditions": [
        {
            "Type": "InventoryNoStock",
            "Status": "True",
            "Reason": "PartialInterruption",
            "Message": "some instanceTypes are out of stock",
            "LastTransitionTime": "2024-08-01T09:15:00Z"
        }
    ],
    "Phase": "UnHealthy",
    "LastTransitionTime": "2024-08-01T09:15:00Z"
}

SupplySeqs fields

Field

Description

InstanceType

The name of the instance type.

Zone

The zone where the instance type resides.

State

Inventory status of the instance type in the zone. See the table below for valid values.

`State` values

Value

Meaning

Action

WithStock

Resources are in sufficient stock.

No action needed.

ClosedWithStock

Resources are low on stock and may not be available for purchase.

We recommend that you use instance types with WithStock state.

WithoutStock

Resources are out of stock and will be replenished.

We recommend that you use instance types with WithStock state.

ClosedWithoutStock

Resources are out of stock and will not be replenished.

We recommend that you use instance types with WithStock state.

Conditions fields

Field

Description

Type

Only one type is specified in this field (InventoryNoStock), which means the instance type configured for the node pool is currently out of stock.

Status

Whether any instance type is out of stock. True means out of stock; False means inventory is normal.

Reason

Overall inventory health reason. NoInterruption means all instance types are healthy. PartialInterruption means some instance types are unhealthy. AllInterruption means all instance types are unhealthy.

Message

Detailed description of the current condition.

LastTransitionTime

Timestamp of the most recent change to the Conditions field.

Top-level fields

Field

Description

Phase

Overall inventory health. Healthy or UnHealthy.

LastTransitionTime

Timestamp of the most recent change to the data.status field.

What's next

View pod and node details and scaling activity history on the node scaling dashboard. See Node scaling dashboard.