From d2298873f931383fb57909347e70f3702731589e Mon Sep 17 00:00:00 2001 From: David Vallee Delisle Date: Tue, 20 Jul 2021 13:03:45 -0400 Subject: [PATCH] Role parameter for tripleo_kernel_defer_reboot To help operators protect their workload, they can now enable the KernelArgsDeferReboot role parameter. This will prevent the tripleo-kernel ansible module from automatically rebooting nodes even if KernelArgs were changed unexpectedly. Change-Id: I52e43f264a03775b6d609444f8da1a36d9565281 --- .../kernel-boot-params-baremetal-ansible.yaml | 16 ++++++++++++++++ ...r-kernelargsdeferreboot-5b8e8b2f64c64a91.yaml | 7 +++++++ 2 files changed, 23 insertions(+) create mode 100644 releasenotes/notes/add-parameter-kernelargsdeferreboot-5b8e8b2f64c64a91.yaml diff --git a/deployment/kernel/kernel-boot-params-baremetal-ansible.yaml b/deployment/kernel/kernel-boot-params-baremetal-ansible.yaml index 2b18122128..f3743d69ba 100644 --- a/deployment/kernel/kernel-boot-params-baremetal-ansible.yaml +++ b/deployment/kernel/kernel-boot-params-baremetal-ansible.yaml @@ -35,6 +35,19 @@ parameters: description: Kernel Args to apply to the host tags: - role_specific + KernelArgsDeferReboot: + default: false + type: boolean + description: > + When enabled, nodes will not get rebooted automatically by tripleo-kernel + if KernelArgs have been changed. Operators will have to manually reboot + nodes after the deployment or update process is completed. + + Leaving this enabled during a scale-up operation will prevent reboot on + new nodes. This might cause deployment errors as the KernelArgs will not + be applied. + tags: + - role_specific TunedProfileName: default: 'throughput-performance' type: string @@ -66,11 +79,13 @@ resources: - tuned_profile: TunedProfileName isolated_cores: IsolCpusList kernel_args: KernelArgs + kernel_args_defer_reboot: KernelArgsDeferReboot - values: {get_param: [RoleParameters]} - values: TunedProfileName: {get_param: TunedProfileName} IsolCpusList: {get_param: IsolCpusList} KernelArgs: {get_param: KernelArgs} + KernelArgsDeferReboot: {get_param: KernelArgsDeferReboot} outputs: role_data: @@ -94,6 +109,7 @@ outputs: tasks_from: kernelargs.yml vars: tripleo_kernel_args: {get_attr: [RoleParametersValue, value, kernel_args]} + tripleo_kernel_defer_reboot: {get_attr: [RoleParametersValue, value, kernel_args_defer_reboot]} tripleo_kernel_reboot_timeout: {get_param: NodeRebootWaitTimeout} upgrade_tasks: - name: upgrade prepare for leapp to align kernel arg shortcommings in leapp diff --git a/releasenotes/notes/add-parameter-kernelargsdeferreboot-5b8e8b2f64c64a91.yaml b/releasenotes/notes/add-parameter-kernelargsdeferreboot-5b8e8b2f64c64a91.yaml new file mode 100644 index 0000000000..928fbd9ad0 --- /dev/null +++ b/releasenotes/notes/add-parameter-kernelargsdeferreboot-5b8e8b2f64c64a91.yaml @@ -0,0 +1,7 @@ +--- +features: + - | + To help operators protect their workload, they can now enable the + KernelArgsDeferReboot role parameter. This will prevent the tripleo-kernel + ansible module from automatically rebooting nodes even if KernelArgs + were changed unexpectedly.