Merge "[install-guide] describe pxe.ipxe_swift_tempurl"
This commit is contained in:
commit
bd0f79ae00
@ -219,6 +219,8 @@ on the Bare Metal service node(s) where ``ironic-conductor`` is running.
|
|||||||
echo 'r ^([^/]) /tftpboot/\1' > /tftpboot/map-file
|
echo 'r ^([^/]) /tftpboot/\1' > /tftpboot/map-file
|
||||||
echo 'r ^(/tftpboot/) /tftpboot/\2' >> /tftpboot/map-file
|
echo 'r ^(/tftpboot/) /tftpboot/\2' >> /tftpboot/map-file
|
||||||
|
|
||||||
|
.. _HTTP server:
|
||||||
|
|
||||||
#. Set up TFTP and HTTP servers.
|
#. Set up TFTP and HTTP servers.
|
||||||
|
|
||||||
These servers should be running and configured to use the local
|
These servers should be running and configured to use the local
|
||||||
@ -231,24 +233,26 @@ on the Bare Metal service node(s) where ``ironic-conductor`` is running.
|
|||||||
|
|
||||||
The Bare Metal service's configuration file (/etc/ironic/ironic.conf)
|
The Bare Metal service's configuration file (/etc/ironic/ironic.conf)
|
||||||
should be edited accordingly to specify the TFTP and HTTP root
|
should be edited accordingly to specify the TFTP and HTTP root
|
||||||
directories and server addresses. For example::
|
directories and server addresses. For example:
|
||||||
|
|
||||||
[pxe]
|
.. code-block:: ini
|
||||||
|
|
||||||
# Ironic compute node's tftp root path. (string value)
|
[pxe]
|
||||||
tftp_root=/tftpboot
|
|
||||||
|
|
||||||
# IP address of Ironic compute node's tftp server. (string
|
# Ironic compute node's tftp root path. (string value)
|
||||||
# value)
|
tftp_root=/tftpboot
|
||||||
tftp_server=192.168.0.2
|
|
||||||
|
|
||||||
[deploy]
|
# IP address of Ironic compute node's tftp server. (string
|
||||||
# Ironic compute node's http root path. (string value)
|
# value)
|
||||||
http_root=/httpboot
|
tftp_server=192.168.0.2
|
||||||
|
|
||||||
# Ironic compute node's HTTP server URL. Example:
|
[deploy]
|
||||||
# http://192.1.2.3:8080 (string value)
|
# Ironic compute node's http root path. (string value)
|
||||||
http_url=http://192.168.0.2:8080
|
http_root=/httpboot
|
||||||
|
|
||||||
|
# Ironic compute node's HTTP server URL. Example:
|
||||||
|
# http://192.1.2.3:8080 (string value)
|
||||||
|
http_url=http://192.168.0.2:8080
|
||||||
|
|
||||||
#. Install the iPXE package with the boot images::
|
#. Install the iPXE package with the boot images::
|
||||||
|
|
||||||
@ -277,25 +281,69 @@ on the Bare Metal service node(s) where ``ironic-conductor`` is running.
|
|||||||
from source, see http://ipxe.org/download for more information.
|
from source, see http://ipxe.org/download for more information.
|
||||||
|
|
||||||
#. Enable/Configure iPXE in the Bare Metal Service's configuration file
|
#. Enable/Configure iPXE in the Bare Metal Service's configuration file
|
||||||
(/etc/ironic/ironic.conf)::
|
(/etc/ironic/ironic.conf):
|
||||||
|
|
||||||
[pxe]
|
.. code-block:: ini
|
||||||
|
|
||||||
# Enable iPXE boot. (boolean value)
|
[pxe]
|
||||||
ipxe_enabled=True
|
|
||||||
|
|
||||||
# Neutron bootfile DHCP parameter. (string value)
|
# Enable iPXE boot. (boolean value)
|
||||||
pxe_bootfile_name=undionly.kpxe
|
ipxe_enabled=True
|
||||||
|
|
||||||
# Bootfile DHCP parameter for UEFI boot mode. (string value)
|
# Neutron bootfile DHCP parameter. (string value)
|
||||||
uefi_pxe_bootfile_name=ipxe.efi
|
pxe_bootfile_name=undionly.kpxe
|
||||||
|
|
||||||
# Template file for PXE configuration. (string value)
|
# Bootfile DHCP parameter for UEFI boot mode. (string value)
|
||||||
pxe_config_template=$pybasedir/drivers/modules/ipxe_config.template
|
uefi_pxe_bootfile_name=ipxe.efi
|
||||||
|
|
||||||
# Template file for PXE configuration for UEFI boot loader.
|
# Template file for PXE configuration. (string value)
|
||||||
# (string value)
|
pxe_config_template=$pybasedir/drivers/modules/ipxe_config.template
|
||||||
uefi_pxe_config_template=$pybasedir/drivers/modules/ipxe_config.template
|
|
||||||
|
# Template file for PXE configuration for UEFI boot loader.
|
||||||
|
# (string value)
|
||||||
|
uefi_pxe_config_template=$pybasedir/drivers/modules/ipxe_config.template
|
||||||
|
|
||||||
|
|
||||||
|
#. It is possible to configure the Bare Metal service in such a way
|
||||||
|
that nodes will boot into the deploy image directly from Object Storage.
|
||||||
|
Doing this avoids having to cache the images on the ironic-conductor
|
||||||
|
host and serving them via the ironic-conductor's `HTTP server`_.
|
||||||
|
This can be done if:
|
||||||
|
|
||||||
|
#. the Image Service is used for image storage;
|
||||||
|
#. the images in the Image Service are internally stored in
|
||||||
|
Object Storage;
|
||||||
|
#. the Object Storage supports generating temporary URLs
|
||||||
|
for accessing objects stored in it.
|
||||||
|
Both the OpenStack Swift and RADOS Gateway provide support for this.
|
||||||
|
|
||||||
|
* See `Ceph Object Gateway support`_ on how to configure
|
||||||
|
the Bare Metal Service with RADOS Gateway as the Object Storage.
|
||||||
|
|
||||||
|
Configure this by setting the ``[pxe]/ipxe_use_swift`` configuration
|
||||||
|
option to ``True`` as follows:
|
||||||
|
|
||||||
|
.. code-block:: ini
|
||||||
|
|
||||||
|
[pxe]
|
||||||
|
|
||||||
|
# Download deploy images directly from swift using temporary
|
||||||
|
# URLs. If set to false (default), images are downloaded to
|
||||||
|
# the ironic-conductor node and served over its local HTTP
|
||||||
|
# server. Applicable only when 'ipxe_enabled' option is set to
|
||||||
|
# true. (boolean value)
|
||||||
|
ipxe_use_swift=True
|
||||||
|
|
||||||
|
Although the `HTTP server`_ still has to be deployed and configured
|
||||||
|
(as it will serve iPXE boot script and boot configuration files for nodes),
|
||||||
|
such configuration will shift some load from ironic-conductor hosts
|
||||||
|
to the Object Storage service which can be scaled horizontally.
|
||||||
|
|
||||||
|
Note that when SSL is enabled on the Object Storage service
|
||||||
|
you have to ensure that iPXE firmware on the nodes can indeed
|
||||||
|
boot from generated temporary URLs that use HTTPS protocol.
|
||||||
|
|
||||||
|
.. _Ceph Object Gateway support: http://docs.openstack.org/developer/ironic/deploy/radosgw.html
|
||||||
|
|
||||||
#. Restart the ``ironic-conductor`` process::
|
#. Restart the ``ironic-conductor`` process::
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user