Skip to main contentIBM Cloud Patterns

Overview - Auto-Scaling of IKS on VPC

What is IBM Cloud Kubernetes Service (IKS)?

IBM Cloud Kubernetes Service is a managed offering to create your own Kubernetes cluster of compute hosts to deploy and manage containerized apps on IBM Cloud. As a certified Kubernetes provider, IBM Cloud Kubernetes Service provides intelligent scheduling, self-healing, horizontal scaling, service discovery and load balancing, automated rollouts and rollbacks, and secret and configuration management for your apps.

IKS on VPC

To understand the sample cluster architectures and the components that are created in an IBM Cloud Kubernetes Service VPC cluster architecture, kindly refer this link. It describes the default components that are setup and how they interact with each other.

Auto scaling of IKS

Automatic scaling in Kubernetes comes in two forms:

  • Horizontal Pod Autoscaler (HPA) scales the pods in a deployment or replica set. It is autoscaling at pod level.

    Horizontal Pod Autoscaler

    It is implemented as a Kubernetes API resource and a controller. The controller manager queries the resource utilization against the metrics specified in each HorizontalPodAutoscaler definition. For more details, please refer this.

  • Cluster Autoscaler (CA) is the Kubernetes component that can be used to perform scaling nodes in a cluster. It periodically scans the cluster to adjust the number of worker nodes within the worker pools for pending pods to scales-up and to scale down underutilized worker nodes. The following diagram depicts the flow it works.

    Cluster Autoscaler

    To know more in detail, you can read here.