All Products
Search
Document Center

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

Last Updated:Aug 16, 2024

The node instant scaling feature supports dynamically selecting types and zones based on the inventory status of Elastic Compute Service (ECS) instances. To monitor the health of the instance within a node pool, obtain configuration suggestions for instance optimization, and ensure the execution of node scaling activities, check the ConfigMap of the node pool. This allows you to assess the health status of the node pool inventory, evaluate its inventory, and proactively analyze and adjust instance types.

Feature description

After you enable instant scaling for the node pool, the node instant scaling add-on can obtain instance types used by the node pool, obtain the real-time inventory status of the instance in the zone where the node pool is configured, and update the inventory to the ConfigMap used to monitor inventory health status in the node pool.

ConfigMap for inventory health status

The ConfigMap for inventory health status displays the overall health status of the node pool inventory, which includes the inventory status of the instance in the configured zone and any supply interruptions. This allows you to monitor the health of the node pool inventory and make decisions to analyze and adjust instance types when inventory levels are low or at risk of becoming insufficient.

Event

The change in supply status of an instance specification within the configured zone triggers the node instant scaling to generate the InstanceInventoryStatusChanged event.

Event name

Event object

Description

InstanceInventoryStatusChanged

ACKNodePool

The supply status of an instance specification in the configured zone changes. The format is {InstanceType}/{Zone} inventory status changed from {OldInventoryStatus} to {NewInventoryStatus}.

Prerequisites

  • A node pool that has auto scaling enabled is configured and node instant scaling is enabled. For more information, see Enable node instant scaling.

  • The node instant scaling add-on is upgraded to version 0.2.1. For more information, see Manage add-ons.

    This add-on version is in a canary release. Submit a ticket to request it.

Steps

The ConfigMap for inventory health status of the node pool is in the kube-system namespace, and the naming format is {node pool id}-inventory-status. This section describes the fields in the ConfigMap for inventory health status.

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

  2. On the Clusters page, find the cluster that you want to manage and click its name. In the left-side navigation pane, choose Configurations > ConfigMaps.

  3. In the upper part of the page, select kube-system from the Namespace drop-down list and find the target ConfigMap based on the node pool ID.

    Expand to view the YAML template of the ConfigMap for inventory health status

    {
        "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"
    }

    The following table describes the fields in the YAML template.

    Field

    Description

    SupplySeqs

    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. Valid values:

    • WithStock: Resources are in sufficient stock.

    • 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

    "Type": "InventoryNoStock"

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

    Status

    Whether the instance type configured for the node pool in the zone is out of stock. Valid values:

    • True: The inventory is out of stock.

    • False: The inventory is normal.

    Reason

    The reason for the current inventory status of the node pool. Valid values:

    • NoInterruption: All instance types configured for the node pool are healthy.

    • PartialInterruption: Some instance types configured for the node pool are not healthy.

    • AllInterruption: All instance types configured for the node pool are unhealthy.

    Message

    Detailed information.

    LastTransitionTime

    The time when the most recent modification was made to the Conditions field.

    Phase

    Health status of the inventory. Valid values:

    • Healthy

    • UnHealthy

    LastTransitionTime

    The time when the most recent modification was made to the data.status field in the ConfigMap.

References

You can use the node scaling dashboard to view pods, node details, and changes. For more information, see Node scaling dashboard.