From 3ba07b28be8a468dd263833f741fadc7e21af45a Mon Sep 17 00:00:00 2001 From: Claudia Watson Date: Mon, 8 Sep 2025 11:21:45 +0100 Subject: [PATCH] Add redfish pxe args for virtual media Use ironic pxe variables for redfish. Both Redfish and PXE boot are now supported using a common set of configuration parameters. New variables are in the form kolla_ironic_kernel_append_params. References to old pxe variables in other documentation has been updated. Change-Id: I4bb2930c145da7ca413e3e99a003e14a1e159439 Signed-off-by: Claudia Watson --- ansible/inventory/group_vars/all/ironic | 21 ++++++++++++------- .../roles/kolla-openstack/defaults/main.yml | 5 ++++- .../templates/kolla/config/ironic.conf | 5 +++++ .../reference/ironic-python-agent.rst | 4 ++-- etc/kayobe/ironic.yml | 8 +++++++ .../kayobe-overcloud-base/overrides.yml.j2 | 2 +- ...gs-for-virtual-media-1446188235feaaac.yaml | 12 +++++++++++ 7 files changed, 46 insertions(+), 11 deletions(-) create mode 100644 releasenotes/notes/add-redfish-pxe-args-for-virtual-media-1446188235feaaac.yaml diff --git a/ansible/inventory/group_vars/all/ironic b/ansible/inventory/group_vars/all/ironic index 72f26e2f7..e67526a79 100644 --- a/ansible/inventory/group_vars/all/ironic +++ b/ansible/inventory/group_vars/all/ironic @@ -98,20 +98,27 @@ kolla_ironic_cleaning_network: "{{ kolla_ironic_provisioning_network if cleaning kolla_ironic_provisioning_network: 'provision-net' # List of default kernel parameters to append for baremetal PXE boot. -kolla_ironic_pxe_append_params_default: +kolla_ironic_pxe_append_params_default: "{{ kolla_ironic_kernel_append_params_default }}" + +# List of additional kernel parameters to append for baremetal PXE boot. +kolla_ironic_pxe_append_params_extra: "{{ kolla_ironic_kernel_append_params_extra }}" + +# List of kernel parameters to append for baremetal PXE boot. +kolla_ironic_pxe_append_params: "{{ kolla_ironic_pxe_append_params_default + kolla_ironic_pxe_append_params_extra }}" + +# List of default kernel parameters to append for baremetal boot. +kolla_ironic_kernel_append_params_default: - nofb - nomodeset - vga=normal - console=tty0 - console=ttyS0,115200n8 -# List of additional kernel parameters to append for baremetal PXE boot. -kolla_ironic_pxe_append_params_extra: [] +# List of additional kernel parameters to append for baremetal boot. +kolla_ironic_kernel_append_params_extra: [] -# List of kernel parameters to append for baremetal PXE boot. -kolla_ironic_pxe_append_params: > - {{ kolla_ironic_pxe_append_params_default + - kolla_ironic_pxe_append_params_extra }} +# List of kernel parameters to append for baremetal boot. +kolla_ironic_kernel_append_params: "{{ kolla_ironic_kernel_append_params_default + kolla_ironic_kernel_append_params_extra }}" ############################################################################### # Ironic Node Configuration diff --git a/ansible/roles/kolla-openstack/defaults/main.yml b/ansible/roles/kolla-openstack/defaults/main.yml index 0d9f2b697..780cca622 100644 --- a/ansible/roles/kolla-openstack/defaults/main.yml +++ b/ansible/roles/kolla-openstack/defaults/main.yml @@ -550,7 +550,10 @@ kolla_ironic_cleaning_network: # Name or UUID of the Neutron network to use for provisioning. kolla_ironic_provisioning_network: -# List of additional append parameters for baremetal PXE boot. +# List of additional append parameters for baremetal boot. +kolla_ironic_kernel_append_params: [] + +#List of additional append parameters for baremetal PXE boot. kolla_ironic_pxe_append_params: [] # Deprecated: diff --git a/ansible/roles/kolla-openstack/templates/kolla/config/ironic.conf b/ansible/roles/kolla-openstack/templates/kolla/config/ironic.conf index f91aad0db..5485efb21 100644 --- a/ansible/roles/kolla-openstack/templates/kolla/config/ironic.conf +++ b/ansible/roles/kolla-openstack/templates/kolla/config/ironic.conf @@ -18,6 +18,11 @@ enabled_hardware_types: {{ kolla_ironic_enabled_hardware_types | join(',') }} [agent] deploy_logs_local_path = /var/log/kolla/ironic/deploy +[redfish] +{% if kolla_ironic_kernel_append_params %} +kernel_append_params = {{ kolla_ironic_kernel_append_params | join(' ') }} +{% endif %} + [neutron] cleaning_network = {{ kolla_ironic_cleaning_network }} provisioning_network = {{ kolla_ironic_provisioning_network }} diff --git a/doc/source/configuration/reference/ironic-python-agent.rst b/doc/source/configuration/reference/ironic-python-agent.rst index 23f7f4f06..b61a6a562 100644 --- a/doc/source/configuration/reference/ironic-python-agent.rst +++ b/doc/source/configuration/reference/ironic-python-agent.rst @@ -162,12 +162,12 @@ Bifrost can be configured to use ``dynamic-login`` with the The updated configuration is applied with ``kayobe seed service deploy``. Overcloud Ironic can be configured with the -``kolla_ironic_pxe_append_params_extra`` variable: +``kolla_ironic_kernel_append_params_extra`` variable: .. code-block:: yaml :caption: ``ironic.yml`` - kolla_ironic_pxe_append_params_extra: + kolla_ironic_kernel_append_params_extra: - sshkey="ssh-rsa BBA1..." The updated configuration is applied with ``kayobe overcloud service deploy``. diff --git a/etc/kayobe/ironic.yml b/etc/kayobe/ironic.yml index 1298fcb67..e1f36579e 100644 --- a/etc/kayobe/ironic.yml +++ b/etc/kayobe/ironic.yml @@ -106,6 +106,14 @@ # List of kernel parameters to append for baremetal PXE boot. #kolla_ironic_pxe_append_params: +# List of default kernel parameters to append for baremetal boot. +#kolla_ironic_kernel_append_params_default: + +# List of additional kernel parameters to append for baremetal boot. +#kolla_ironic_kernel_append_params_extra: + +# List of kernel parameters to append for baremetal boot. +#kolla_ironic_kernel_append_params: ############################################################################### # Ironic Node Configuration diff --git a/playbooks/kayobe-overcloud-base/overrides.yml.j2 b/playbooks/kayobe-overcloud-base/overrides.yml.j2 index c13f16f1a..a0a46b5c6 100644 --- a/playbooks/kayobe-overcloud-base/overrides.yml.j2 +++ b/playbooks/kayobe-overcloud-base/overrides.yml.j2 @@ -52,7 +52,7 @@ compute_libvirt_enable_tls: true kolla_enable_tls_external: "yes" kolla_enable_tls_internal: "yes" -kolla_ironic_pxe_append_params_extra: +kolla_ironic_kernel_append_params_extra: - ipa-insecure=1 {% endif %} diff --git a/releasenotes/notes/add-redfish-pxe-args-for-virtual-media-1446188235feaaac.yaml b/releasenotes/notes/add-redfish-pxe-args-for-virtual-media-1446188235feaaac.yaml new file mode 100644 index 000000000..24837912e --- /dev/null +++ b/releasenotes/notes/add-redfish-pxe-args-for-virtual-media-1446188235feaaac.yaml @@ -0,0 +1,12 @@ +--- +features: + - | + Adds support for Redfish virtual media and + PXE boot using a common set of variables. + Migration to using + ``kolla_ironic_kernel_append_params`` is + advised. + New boot variables are: + kolla_ironic_kernel_append_params, + kolla_ironic_kernel_append_params_default, + kolla_ironic_kernel_append_params_extra.