Perform a graceful reboot of a cluster

Available since 2.23.0 for non-MOSK clusters

Caution

For MOSK-based deployments, the feature support will become available in one of the following Container Cloud releases.

You can perform a graceful reboot on a management, regional, or managed cluster. Use the below procedure to cordon, drain, and reboot the required cluster machines using a rolling reboot without workloads interruption. The procedure is also useful for a bulk reboot of machines, for example, on large clusters.

The reboot occurs in the order of cluster upgrade policy that you can change for managed clusters as described in Change the upgrade order of a machine or machine pool.

Caution

The cluster and machines must have the Ready status to perform a graceful reboot.

To perform a rolling reboot of a cluster:

  1. Create a GracefulRebootRequest resource with a name that matches the name of the required cluster. For the resource fields description, see GracefulRebootRequest resource.

  2. In spec:machines, add the machine list or leave it empty to reboot all cluster machines.

    Wait until all specified machines are rebooted. You can monitor the reboot status of the cluster and machines using the Conditions:GracefulReboot fields of the corresponding Cluster and Machine objects.

    The GracefulRebootRequest object is automatically deleted once the reboot on all target machines completes.

    To monitor the live machine status:

    kubectl get machines <machineName> -o wide
    

    Example of system response:

    NAME    READY  LCMPHASE  NODENAME            UPGRADEINDEX  REBOOTREQUIRED  WARNINGS
    demo-0  true   Ready     kaas-node-c6aa8ad3  1             true
    

Note

To reboot a single node, for example, for maintenance purposes, refer to Enable cluster and machine maintenance mode.