Description of problem: DOC BUG: Direct Deploy without using Swift Object Storage (Swift) - Image streamed onto device Swift has been used by default to serve images when using the direct deploy method. There is now an alternative way of serving them via the existing ironic-conductor HTTP server to the agent. This will avoid dependency on Swift alone. This new feature will be able to convert images to RAW format on the conductor, then stream them to IPA, avoiding in-memory conversion. "Image streamed onto device" - This should work for both whole disk images and also partitioned images. There needs to be documentation describing the feature and configurations to enablement. Reference RFE/Bugs/upstream links https://bugzilla.redhat.com/show_bug.cgi?id=1607779 https://bugzilla.redhat.com/show_bug.cgi?id=1630964
Basically we need to include documentation which give examples on how to configure this feature to work with Ironic in UC as well as Ironic in OC 1) Ironic in UC The openstack baremetal node direct_interface must be set to 'direct' and not iscsi Note: using undercloud_custom_env.yaml (undercloud) [stack@undercloud-0 ~]$ cat undercloud.conf [DEFAULT] # Network interface on the Undercloud that will be handling the PXE # boots and DHCP for Overcloud instances. (string value) local_interface = eth0 local_ip = 192.168.24.1/24 undercloud_public_host = 192.168.24.2 undercloud_admin_host = 192.168.24.3 #TODO: use release >= 10 when RHBZ#1633193 is resolved undercloud_ntp_servers=clock1.rdu2.redhat.com container_images_file=/home/stack/containers-prepare-parameter.yaml container_insecure_registries = brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888 undercloud_timezone = UTC undercloud_service_certificate = /etc/pki/instack-certs/undercloud.pem hieradata_override = /home/stack/hiera_override.yaml custom_env_files = /home/stack/undercloud_custom_env.yaml [ctlplane-subnet] local_subnet = ctlplane-subnet cidr = 192.168.24.0/24 dhcp_start = 192.168.24.5 dhcp_end = 192.168.24.24 gateway = 192.168.24.1 inspection_iprange = 192.168.24.100,192.168.24.120 masquerade = true #TODO(skatlapa): add param to override masq (undercloud) [stack@undercloud-0 ~]$ cat /home/stack/undercloud_custom_env.yaml parameter_defaults: IronicDefaultDeployInterface: direct IronicImageDownloadSource: http 2) Ironic in OC In this case we configure the same variable but in overcloud deployment. IronicImageDownloadSource: http See /home/stack/virt/ironic-custom.yaml (undercloud) [stack@undercloud-0 ~]$ cat overcloud_deploy.sh #!/bin/bash openstack overcloud deploy \ --timeout 100 \ --templates /usr/share/openstack-tripleo-heat-templates \ --stack overcloud \ --libvirt-type kvm \ --ntp-server clock1.rdu2.redhat.com \ -e /home/stack/virt/config_lvm.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \ -e /home/stack/virt/network/network-environment.yaml \ -e /home/stack/virt/network/dvr-override.yaml \ -e /home/stack/virt/inject-trust-anchor.yaml \ -e /home/stack/virt/hostnames.yml \ -e /home/stack/virt/debug.yaml \ -e /home/stack/virt/nodes_data.yaml \ --environment-file /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e ~/containers-prepare-parameter.yaml \ -e /home/stack/virt/ironic-custom.yaml \ --log-file overcloud_deployment_3.log (undercloud) [stack@undercloud-0 ~]$ cat /home/stack/virt/ironic-custom.yaml parameter_defaults: NeutronBridgeMappings: datacentre:br-ex,baremetal:br-baremetal NeutronFlatNetworks: datacentre,baremetal IronicCleaningNetwork: baremetal IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicEnabledHardwareTypes: - ipmi - fake-hardware IronicEnabledBootInterfaces: [pxe, fake] IronicEnabledConsoleInterfaces: [ipmitool-socat, no-console, fake] IronicEnabledDeployInterfaces: [iscsi, direct, fake] IronicEnabledManagementInterfaces: [ipmitool, fake] IronicEnabledPowerInterfaces: [ipmitool, fake] IronicEnabledRaidInterfaces: [no-raid, fake] IronicEnabledVendorInterfaces: [ipmitool, fake, no-vendor] IronicEnabledInspectInterfaces: [no-inspect, inspector, fake] NovaSchedulerDefaultFilters: - RetryFilter - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicImageDownloadSource: http In both cases, verification can be completed in the ramdisk deploy logs /var/log/container/ironic/deploy
Merged into master for OSP15.
Content is updated and published on the Customer Portal.