bifrost/doc/source/deploy/dhcp.rst
stephane f2c5cee22e Add new docs to index
Some of our documentation wasn't in the index. Add it. Also
clean up one bulleted list which was causing some errors.

Change-Id: I5459d8914ddef905e7783a711477bad116d585a8
2015-08-05 11:09:35 -07:00

60 lines
2.0 KiB
ReStructuredText

=======================================
Using Bifrost with your own DHCP server
=======================================
The possibility exists that a user may already have a Dynamic Host
Configuration Protocol (DHCP) server on their network.
Currently Ironic, when configured with Bifrost in standalone mode, does not
utilize a DHCP provider. This would require a manual configuration of the
DHCP server to deploy an image. Bifrost utilizes dnsmasq for this
functionality; however, any DHCP server can be utilized. This is largely
intended to function in the context of a single flat network although
conceivably the nodes can be segregated.
What is required:
- DHCP server on the network segment
- Appropriate permissions to change DHCP settings
- Network access to the API and conductor. Keep in mind the iPXE image does
not support ICMP redirects.
Example DHCP server configurations
----------------------------------
In the examples below port 8080 is used. However, the port number may vary
depending on the environment configuration.
dnsmasq::
dhcp-match=set:ipxe,175 # iPXE sends a 175 option.
dhcp-boot=tag:!ipxe,undionly.kpxe,<TFTP Server Hostname>,<TFTP Server IP Address>
dhcp-boot=http://<Bifrost Host IP Address>:8080/boot.ipxe
Internet Systems Consortium DHCPd::
if exists user-class and option user-class = "iPXE" {
filename "http://<Bifrost Host IP Address>:8080/boot.ipxe";
} else {
filename "undionly.kpxe";
next-server <TFTP Server IP Address>;
}
Architecture
------------
It should be emphasized that Ironic in standalone mode is intended to be used only
in a trusted environment.
::
+-------------+
| DHCP Server |
+-------------+
|
+--------Trusted-Network----------+
| |
+-------------+ +-----------+
|Ironic Server| | Server |
+-------------+ +-----------+