Scale stateful workloads

Scale your stateful workloads to your evolving container workload requirements.

Before you begin

To run commands against a Kubernetes cluster, ensure you have the following resources:

  1. Locate the Kubernetes cluster name, or ask your Platform Administrator what the cluster name is.

  2. Sign in and generate the kubeconfig file for the Kubernetes cluster if you don't have one.

  3. Use the kubeconfig path of the Kubernetes cluster to replace KUBERNETES_CLUSTER_KUBECONFIG in these instructions.

To get the required permissions to scale stateful workloads, ask your Organization IAM Admin to grant you the Namespace Admin role (namespace-admin) in your project namespace.

Scale a StatefulSet resource

Leverage the scaling functionality of Kubernetes to appropriately scale the amount of pods running in your StatefulSet resource.

Manually scale the pods of a StatefulSet resource

To manually scale your StatefulSet resource, run:

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    scale statefulset STATEFULSET_NAME \
    --replicas NUMBER_OF_REPLICAS

Replace the following:

  • KUBERNETES_CLUSTER_KUBECONFIG: the kubeconfig file for the cluster.

  • NAMESPACE: the project namespace.

  • STATEFULSET_NAME: the name of the StatefulSet object in which to scale.

  • NUMBER_OF_REPLICAS: the desired number of replicated Pod objects in the StatefulSet object.

Scale the pods by making an in-place update

To scale the pods of a StatefulSet resource directly in the manifest file, run:

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    patch statefulsets STATEFULSET_NAME \
    -p '{"spec":{"replicas":NUMBER_OF_REPLICAS}}'

Replace the following:

  • KUBERNETES__CLUSTER_KUBECONFIG: the kubeconfig file for the cluster.

  • NAMESPACE: the project namespace.

  • STATEFULSET_NAME: the name of the StatefulSet object in which to scale.

  • NUMBER_OF_REPLICAS: the desired number of replicated Pod objects in the StatefulSet object.