IBM Cloud Docs
Managing Satellite worker pools

Managing Satellite worker pools

Review the following differences from classic Red Hat OpenShift on IBM Cloud clusters when you manage the worker pool life cycle of clusters that are in a Satellite location.

Creating Satellite worker pools with host labels for autoassignment

Create a worker pool in your Satellite cluster with host labels. Then, Satellite can automatically assign available hosts to the worker pool. For more information, see Using host autoassignment.

Before you begin

  • Make sure that you have the Operator platform access role to Kubernetes Service for the cluster in IBM Cloud IAM.
  • Optional: Attach or list available hosts to your Satellite location with host labels that match your worker pool. Then, after you create your worker pool, these available hosts can be automatically assigned to the worker pool.

To create a worker pool in a Satellite cluster

  1. List the Satellite clusters in your account.

    ibmcloud oc cluster ls --provider satellite
    
  2. Get the details of the cluster that you want to create the worker pool in. Note the Worker Zones.

    ibmcloud oc cluster get --cluster CLUSTER
    
  3. Create the worker pool in your Satellite cluster, with the following parameters.

    --cluster
    Enter the name or ID of your cluster.
    --name
    Give a name for your worker pool.
    --size-per-zone
    Specify the number of worker nodes for each zone that the worker pool spans. You can change this value later by resizing the worker pool.
    --zone
    Select the initial zone in your Satellite location to create the worker pool in, which you retrieved from your cluster details. You can add more zones later. --host-label
    Add labels to match the requested capacity of the worker pool with the available hosts in the Satellite location. You can use just the cpu=number host label because Satellite hosts automatically get this host label. You can also add a custom host label like env=prod. Important: You can't update host labels on the worker pool later, so take care when assigning them. You can change the labels on Satellite hosts, if needed.

    --operating-system REDHAT_8_64|RHCOS : Optional. The operating system of the worker nodes in your cluster. For a list of available operating sysems by cluster version, see the Red Hat OpenShift on IBM Cloud version information. If no option is specified, the default operating system that corresponds to the cluster version is used.

    --entitlement ENTITLEMENT
    Optional: Set this option to ocp_entitled if you have a Red Hat OpenShift entitlement. When you specify the number of workers (--workers) and flavor (--flavor), make sure to specify only the number and size of worker nodes that you are entitled to use in IBM Passport Advantage.

Do not exceed your entitlement. Keep in mind that your OpenShift Container Platform entitlements can be used with other cloud providers or in other environments. To avoid billing issues later, make sure that you use only what you are entitled to use. For example, you might have an entitlement for the OCP licenses for two worker nodes of 4 CPU and 16 GB memory, and you create this worker pool with two worker nodes of 4 CPU and 16 GB memory. You used your entire entitlement, and you can't use the same entitlement for other worker pools, cloud providers, or environments.

Example worker-pool create command

ibmcloud oc worker-pool create satellite --cluster <cluster_name_or_ID> --name <pool_name> --size-per-zone <number> --zone <satellite_zone> --entitlement <entitlement> --host-label <cpu=number> --host-label <memory=number> [--host-label <key=value>] [--operating-system SYSTEM]

Example worker-pool create command for creating a worker pool that uses Red Hat CoreOS hosts.

ibmcloud oc worker-pool create satellite --cluster <cluster_name_or_ID> --name <pool_name> --size-per-zone <number> --zone <satellite_zone> --host-label <cpu=number> --host-label <memory=number> --operating-system RHCOS

Your worker pool is created!

  • If Satellite hosts with matching labels are available, the hosts are assigned to the worker pool as worker nodes. Keep in mind that hosts might also have a zone label and are assigned only to that zone.
  • If no hosts are available, you can manually assign hosts to the worker pool. Keep in mind that if you manually assign hosts, host autoassignment is disabled for future actions until you rebalance the worker pool.

When you assign hosts, you are charged a Satellite management fee per host vCPU. Learn more.

Resizing a Satellite worker pool

Resize your worker pool to request more compute capacity in your cluster.

  • When host autoassignment is enabled, Satellite automatically assigns available hosts to the worker pool, as long as the host labels match the host labels of the worker pool. If no hosts are available, attach more hosts with matching labels to the Satellite location.
  • If host autoassignment is disabled, resizing the worker pool enables autoassignment again.

Rebalancing a Satellite worker pool

When you rebalance a worker pool, the worker pool is sized up or down depending on the most recently requested number of worker nodes per zone. You can check the requested number in the worker pool details, or set the requested number by resizing the worker pool.

For Satellite clusters, do not use the ibmcloud oc worker-pool rebalance command if you have manually assigned worker nodes to your worker pool. Rebalancing a pool with manually assigned worker nodes might remove more than the expected number of worker nodes.

In Satellite worker pool, rebalancing also re-enables host autoassignment. You can rebalance the worker pool from the IBM Cloud console or the ibmcloud oc worker-pool rebalance command.

Updating worker nodes in a Satellite worker pool

Follow the same process as Updating classic worker nodes.

Adding zones to a Satellite worker pool

You can add zones to a worker pool. Available Satellite hosts with a zone label can be assigned only to that zone in the worker pool.

Removing a Satellite worker pool

When you remove a worker pool, all the worker nodes in the cluster are removed. The hosts that the worker nodes ran on are unassigned from the cluster, and become unusable by but still attached to the Satellite location. For more information, see Removing Satellite worker nodes or clusters.