Ironic in Kolla

Ironic in Kolla


Currently Kolla can deploy the Ironic services:

  • ironic-api
  • ironic-conductor
  • ironic-dnsmasq
  • ironic-inspector

As well as a required PXE service, deployed as ironic-pxe.

Current status

The Ironic implementation is “tech preview”, so currently instances can only be deployed on baremetal. Further work will be done to allow scheduling for both virtualized and baremetal deployments.

Pre-deployment Configuration

Enable Ironic role in /etc/kolla/globals.yml:

enable_ironic: "yes"

Beside that an additional network type ‘vlan,flat’ has to be added to a list of tenant network types:

neutron_tenant_network_types: "vxlan,vlan,flat"

In the same file, optionally a default gateway to be used for the Ironic Inspector inspection network:


In the same file, specify the PXE bootloader file for Ironic Inspector. The file is relative to the /tftpboot directory. The default is pxelinux.0, and should be correct for x86 systems. Other platforms may require a different value, for example aarch64 on Debian requires debian-installer/arm64/bootnetaa64.efi.

ironic_dnsmasq_boot_file: pxelinux.0

Configuring Web Console

Configuration based off upstream web_console_documentation.

Serial speed must be the same as the serial configuration in the BIOS settings. Default value: 115200bps, 8bit, non-parity.If you have different serial speed.

Set ironic_console_serial_speed in /etc/kolla/globals.yml:

ironic_console_serial_speed: 9600n8

Post-deployment configuration

Configuration based off upstream documentation.

Again, remember that enabling Ironic reconfigures nova compute (driver and scheduler) as well as changes neutron network settings. Further neutron setup is required as outlined below.

Create the flat network to launch the instances:

neutron net-create --tenant-id $TENANT_ID sharednet1 --shared \
--provider:network_type flat --provider:physical_network physnet1

neutron subnet-create sharednet1 $NETWORK_CIDR --name $SUBNET_NAME \
--ip-version=4 --gateway=$GATEWAY_IP --allocation-pool \
start=$START_IP,end=$END_IP --enable-dhcp

And then the above ID is used to set cleaning_network in the neutron section of ironic.conf.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.