Container Service for Kubernetes (ACK) Edge clusters can manage different node resources, both online and offline, including Elastic Compute Service (ECS) nodes across regions, data center nodes, nodes from other cloud service providers, and server nodes located in various settings such as factories, retail outlets, motor vehicles, and ships. In scenarios where offline node resources are inadequate, the auto scaling feature can seamlessly expand cloud nodes for ACK Edge clusters, enhancing scheduling capabilities. This dynamic scaling conserves resources, thereby significantly saving costs.
Before you begin
Read this topic to understand ACK node scaling solutions and choose the one that best fits your workload before enabling node scaling.
Familiarize yourself with manual scaling, auto scaling, horizontal scaling, and vertical scaling in the Kubernetes official documentation.
How it works
Kubernetes node scaling differs from the traditional resource-utilization-threshold model. You may need to address this when migrating from data centers or other orchestration systems to Kubernetes.
Node scaling solution
The node scaling model scales resources at the resource layer. When the size of a cluster cannot meet pod scheduling requirements, this model automatically scales node resources to provide additional scheduling capacity. Node scaling is managed by the cluster-autoscaler component, which periodically polls and maintains the cluster state to identify conditions that meet scaling requirements, thereby automatically adjusting the number of cluster nodes.
Scaling speed and efficiency
A scaling activity requires 60 seconds in standard mode and 50 seconds in swift mode.
When the duration of a scaling activity reaches 1 minute, auto scaling encounters a performance bottleneck. The efficiency of auto scaling will fluctuate based on the number of node pools and scaling scenarios. For example, if the number of node pools exceeds 100, the duration of a scaling activity is increased to 100 to 150 seconds.
Using a polling model, and constrained by the dependency on cluster state maintenance, the minimum latency is 5 seconds.
Usage notes
Quotas and limits
-
A VPC route table supports up to 200 custom route entries. To increase this limit, submit an application in the Quota Center console. For other resource quotas, see Underlying Cloud Product Quotas.
-
Configure the maximum number of nodes in an auto scaling-enabled node pool carefully. Ensure dependent resources and quotas are sufficient, such as VPC CIDR blocks and vSwitches, or scale-out activities may fail. For node pool limits, see Enable node autoscaling. For network planning, see ACK managed cluster network planning.
-
Node scaling does not support subscription nodes. Do not set the billing method to subscription when creating an auto scaling-enabled node pool. For existing node pools, ensure no subscription nodes are present before enabling auto scaling.
-
The node scaling feature is incompatible with SideCar Containers. Deploy Sidecar Container workloads to node pools with auto scaling disabled.
Maintenance of dependent resources
If elastic IP addresses (EIPs) are associated with ECS nodes added by node scaling, do not delete these nodes directly from the ECS console. The EIPs will not be automatically released.
Further reading
If you encounter issues when you use node scaling, refer to FAQs of node scaling for troubleshooting.