Chapter 11. Configuring manual node reboot to define KernelArgs
Overcloud nodes are automatically rebooted when the overcloud deployment includes setting the KernelArgs
for the first time. Rebooting nodes can be an issue for existing workloads if you are adding KernelArgs
to a deployment that is already in production. You can disable the automatic rebooting of nodes when updating a deployment, and instead perform node reboots manually after each overcloud deployment.
If you disable automatic reboot and then add new Compute nodes to your deployment, the new nodes will not be rebooted during their initial provisioning. This might cause deployment errors because the configuration of KernelArgs
is applied only after a reboot.
11.1. Configuring manual node reboot to define KernelArgs
You can disable the automatic rebooting of nodes when you configure KernelArgs
for the first time, and instead reboot the nodes manually.
Procedure
-
Log in to the undercloud as the
stack
user. Source the
stackrc
file:[stack@director ~]$ source ~/stackrc
Enable the
KernelArgsDeferReboot
role parameter in a custom environment file, for example,kernelargs_manual_reboot.yaml
:parameter_defaults: <Role>Parameters: KernelArgsDeferReboot: True
Add your custom environment file to the stack with your other environment files and deploy the overcloud:
(undercloud)$ openstack overcloud deploy --templates \ -e [your environment files] \ -e /home/stack/templates/kernelargs_manual_reboot.yaml
Retrieve a list of your Compute nodes to identify the host name of the node that you want to reboot:
(undercloud)$ source ~/overcloudrc (overcloud)$ openstack compute service list
Disable the Compute service on the Compute node you want to reboot, to prevent the Compute scheduler from assigning new instances to the node:
(overcloud)$ openstack compute service set <node> nova-compute --disable
Replace
<node>
with the host name of the node you want to disable the Compute service on.Retrieve a list of the instances hosted on the Compute node that you want to migrate:
(overcloud)$ openstack server list --host <node_UUID> --all-projects
- Migrate the instances to another Compute node. For information on migrating instances, see Migrating virtual machine instances between Compute nodes.
- Log in to the node that you want to reboot.
Reboot the node:
[heat-admin@overcloud-compute-0 ~]$ sudo reboot
- Wait until the node boots.
Re-enable the Compute node:
(overcloud)$ openstack compute service set <node_UUID> nova-compute --enable
Check that the Compute node is enabled:
(overcloud)$ openstack compute service list