Merge "Add DHCP documentation"

This commit is contained in:
Jenkins 2015-06-09 19:07:54 +00:00 committed by Gerrit Code Review
commit 37db143f20
2 changed files with 60 additions and 2 deletions

View File

@ -0,0 +1,59 @@
=======================================
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 |
+-------------+ +-----------+

View File

@ -45,8 +45,7 @@ By default this role installs dnsmasq to act as a DHCP server for provisioning h
include_dhcp_server: false
In the event of an external DHCP server being used, the user will need to configure their DHCP server such that PXE, and iPXE chain loading occurs.
In the event of an external DHCP server being used, the user will need to configure their DHCP server such that PXE, and iPXE chain loading occurs. For additional information for setting up DHCP in this scenario refer to the Bifrost documentation file doc/source/deploy/dhcp.rst.
Additional default variables exist in defaults/main.yml, however these are mainly limited to settings which are unlikely to be modified, unless a user has a custom Ironic Python Agent image, or needs to modify where the httpboot folder is set to.
Dependencies