ironic: default to ipxe booting

Enable the Ironic ipxe boot interface by default, following a similar
change in Ironic [1].

Drop the kolla_enable_ironic_ipxe flag, following a similar change in
Kolla Ansible [2]. Both PXE and iPXE are now enabled by default. Users
may revert to using PXE for ironic inspector's dnsmasq, by setting
ironic_dnsmasq_serve_ipxe to false in etc/kayobe/kolla/globals.yml.

[1] https://review.opendev.org/c/openstack/ironic/+/816824
[2] https://review.opendev.org/c/openstack/kolla-ansible/+/834512/

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/832159
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/834511
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/837069

Change-Id: Ifb80bd15a20c9cfb8fbc6e0f6ac23baae631a18e
This commit is contained in:
Mark Goddard 2022-04-01 17:23:20 +01:00
parent 7b8c2fa6a6
commit 05c09523fa
12 changed files with 15 additions and 25 deletions

View File

@ -16,11 +16,12 @@ kolla_ironic_default_bios_interface: no-bios
# Specify the list of boot interfaces to load during service initialization.
kolla_ironic_enabled_boot_interfaces:
- ipxe
- pxe
# Default boot interface to be used for nodes that do not have boot_interface
# field set.
kolla_ironic_default_boot_interface: pxe
kolla_ironic_default_boot_interface: ipxe
# Specify the list of console interfaces to load during service initialization.
kolla_ironic_enabled_console_interfaces:

View File

@ -536,7 +536,6 @@ kolla_enable_grafana: "{{ kolla_enable_monasca | bool }}"
kolla_enable_heat: "{{ kolla_enable_openstack_core | bool }}"
kolla_enable_horizon: "{{ kolla_enable_openstack_core | bool }}"
kolla_enable_influxdb: "{{ kolla_enable_monasca | bool or kolla_enable_cloudkitty | bool }}"
kolla_enable_ironic_ipxe: "no"
kolla_enable_ironic: "no"
kolla_enable_ironic_neutron_agent: "{{ kolla_enable_neutron | bool and kolla_enable_ironic | bool }}"
kolla_enable_iscsid: "{{ kolla_enable_cinder | bool and kolla_enable_cinder_backend_iscsi | bool }}"

View File

@ -210,7 +210,6 @@ kolla_openstack_logging_debug:
#kolla_enable_horizon:
#kolla_enable_influxdb:
#kolla_enable_ironic:
#kolla_enable_ironic_ipxe:
#kolla_enable_kafka:
#kolla_enable_kuryr:
#kolla_enable_magnum:

View File

@ -428,7 +428,7 @@ ironic_dnsmasq_default_gateway: {{ kolla_inspector_default_gateway }}
ironic_inspector_kernel_cmdline_extras:
{{ kolla_inspector_extra_kernel_options | to_nice_yaml }}
{% endif %}
# PXE bootloader file for Ironic Inspector, relative to /tftpboot.
# PXE bootloader file for Ironic Inspector, relative to /var/lib/ironic/tftpboot.
#ironic_dnsmasq_boot_file: "pxelinux.0"
# Configure ironic upgrade option, due to currently kolla support

View File

@ -251,10 +251,10 @@ ironic
{{ groups['controllers'][0] }}
{% endif %}
[ironic-pxe:children]
[ironic-tftp:children]
ironic
[ironic-ipxe:children]
[ironic-http:children]
ironic
# Magnum

View File

@ -138,7 +138,6 @@ kolla_feature_flags:
- horizon_zun
- influxdb
- ironic
- ironic_ipxe
- ironic_neutron_agent
- ironic_pxe_uefi
- iscsid

View File

@ -265,9 +265,6 @@ kolla_ironic_pxe_append_params: []
# Free form extra configuration to append to ironic.conf.
kolla_extra_ironic:
# Enable iPXE support in Ironic
kolla_enable_ironic_ipxe:
###############################################################################
# Ironic inspector configuration.

View File

@ -822,11 +822,6 @@ function to_bool {
fi
}
function is_ipxe_enabled {
flag="$(run_kayobe configuration dump --host controllers[0] --var-name kolla_enable_ironic_ipxe)"
to_bool "$flag"
}
function is_cinder_enabled {
flag="$(run_kayobe configuration dump --host controllers[0] --var-name kolla_enable_cinder)"
to_bool "$flag"

View File

@ -328,7 +328,6 @@
#kolla_enable_horizon_zun:
#kolla_enable_influxdb:
#kolla_enable_ironic:
#kolla_enable_ironic_ipxe:
#kolla_enable_ironic_neutron_agent:
#kolla_enable_ironic_pxe_uefi:
#kolla_enable_iscsid:

View File

@ -37,13 +37,6 @@ compute_libvirt_sasl_password: "{% raw %}{{ lookup('password', '/tmp/libvirt-sas
# Enable ironic for testing baremetal compute.
kolla_enable_ironic: true
{% if ironic_boot_mode == 'uefi' %}
# iPXE is currently required for UEFI boot mode in Kolla Ansible.
kolla_enable_ironic_ipxe: true
kolla_ironic_enabled_boot_interfaces: [ipxe]
kolla_ironic_default_boot_interface: ipxe
{% endif %}
{% if tls_enabled %}
kolla_enable_nova_libvirt_container: false
compute_libvirt_enable_tls: true

View File

@ -0,0 +1,8 @@
---
upgrade:
- |
Starting with Yoga, Ironic has changed the default PXE from plain PXE to
iPXE.
Kayobe follows this upstream decision but allows users to revert to
the previous default of plain PXE. For details, please refer to
Kolla Ansible's documentation.

View File

@ -20,8 +20,8 @@ copy_logs() {
# Don't save the IPA images.
rm ${LOG_DIR}/kayobe_configs/kolla/config/ironic/ironic-agent.{kernel,initramfs}
rm ${LOG_DIR}/kolla_configs/config/ironic/ironic-agent.{kernel,initramfs}
rm ${LOG_DIR}/kolla_node_configs/ironic-ipxe/ironic-agent.{kernel,initramfs}
rm ${LOG_DIR}/kolla_node_configs/ironic-pxe/ironic-agent.{kernel,initramfs}
rm ${LOG_DIR}/kolla_node_configs/ironic-http/ironic-agent.{kernel,initramfs}
rm ${LOG_DIR}/kolla_node_configs/ironic-tftp/ironic-agent.{kernel,initramfs}
fi
if [[ -n ${PREVIOUS_CONFIG_DIR} ]] && [[ -d ${PREVIOUS_CONFIG_DIR} ]]; then
mkdir -p ${LOG_DIR}/previous_{kayobe,kolla}_configs