IBM Cloud Docs
Preparing for host maintenance updates

Preparing for host maintenance updates

IBM engineers perform host maintenance to improve stability, provide security enhancements, and support upcoming new features. At times, IBM Cloud infrastructure providers perform maintenance on the hosts that house the Virtual Servers that are used as workers in your cluster, which may cause some of your workers to briefly go offline. However, there are actions you can take before the maintenance period that can minimize disruptions to your worker nodes. A notification with maintenance details and a list of affected workers is sent to customers before the maintenance window. Follow these steps to prepare your workers for an upcoming maintenance period.

Identifying your affected workers

If your workers are scheduled to undergo maintenance, you receive a notification before the maintenance window begins. A list of the workers that are affected is included in the notification.

The list of impacted components may look similar to the following example. The steps documented here apply to the workers listed in the IBM Kubernetes Service or Red Hat OpenShift on IBM Cloud Workers section.

**Virtual Server Instances scheduled for maintenance**

    Virtual Server Instances in your account:

           ID                                           Name
           1111_1a111aaa-1a1a-1aa1-1111-a11a111a1111    my_vpc_cluster_1

    Virtual Server Instances in service accounts:

        Application Load Balancer
            alb-11aa111a-1111111
    
        IBM Kubernetes Service or Red Hat OpenShift on IBM Cloud workers
            kube-aaaa1aaa111aa11aa11a-aaaaaaaaaaa-aaaaaaa-00001a11
            kube-aaaa2aaa222aa22aa22a-aaaaaaaaaaa-aaaaaaa-00002a22
            kube-aaaa3aaa333aa33aa33a-aaaaaaaaaaa-aaaaaaa-00003a33

Actions to take before the maintenance period

Follow these steps to prepare your workers for the maintenance period. Workers can't be scheduled on hosts that are scheduled for maintenance. You can avoid disruptions to your workload by rebooting or replacing your workers so that they move to different hosts that are not undergoing maintenance.

Workers in Classic clusters

Follow the steps to reboot the worker before the maintenance period begins.

  1. Cordon the worker.
    oc cordon <worker_id>
    
  2. Drain the worker.
    oc drain <worker_id>
    
  3. Reboot the worker. Make sure you include the --hard option.
    ibmcloud oc worker reboot --cluster <cluster_name_or_id> --worker <worker_id> --hard
    
  4. Mark the worker as available to be scheduled.
    oc uncordon <worker_id>
    

Workers in VPC clusters

For workers in VPC clusters, the steps to take depend on the flavor of the worker node. To check a worker node's flavor, run ibmcloud oc worker get --worker <worker_id> --cluster <cluster_name_or_id>.

For workers with the cx2., bx2., or mx2. flavors:

  1. Cordon the worker.
    oc cordon <worker_id>
    
  2. Drain the worker.
    oc drain <worker_id>
    
  3. Reboot the worker. Make sure you include the --hard option.
    ibmcloud oc worker reboot --cluster <cluster_name_or_id> --worker <worker_id> --hard
    
  4. Mark the worker as available to be scheduled.
    oc uncordon <worker_id>
    

For workers with the cx2d., bx2d., or mx2d. flavors:

  1. Cordon the worker.

    oc cordon <worker_id>
    
  2. Drain the worker.

    oc drain <worker_id>
    
  3. Replace the worker. A new worker node is provisioned on a host that is not undergoing maintenance.

    ibmcloud oc worker replace --cluster <cluster_name_or_ID> --worker <worker_node_ID>