devstack/doc/source/guides/pxe-boot.rst
Sean M. Collins 0f3bafc74e Remove copyright footer from RST docs
Change-Id: I2fe6aac7caec21af26983636d6ec827b3525ee15
2014-10-24 10:48:46 -04:00

141 lines
3.5 KiB
ReStructuredText

`DevStack </>`__
- `Overview <../overview.html>`__
- `Changes <../changes.html>`__
- `FAQ <../faq.html>`__
- `git.openstack.org <https://git.openstack.org/cgit/openstack-dev/devstack>`__
- `Gerrit <https://review.openstack.org/#/q/status:open+project:openstack-dev/devstack,n,z>`__
PXE Boot Server Guide: Magic Dust for Network Boot
==================================================
Boot DevStack from a PXE server to a RAM disk.
Prerequisites Hardware & OpenWRT
--------------------------------
Hardware
~~~~~~~~
The whole point of this exercise is to have a highly portable boot
server, so using a small router with a USB port is the desired platform.
This guide uses a Buffalo WZR-HP-G300NH as an example, but it is easily
generalized for other supported platforms. See openwrt.org for more.
OpenWRT
~~~~~~~
Any recent 'Backfire' build of OpenWRT will work for the boot server
project. We build from trunk and have made the images available at
`http://openwrt.xr7.org/openwrt <http://openwrt.xr7.org/openwrt>`__.
Installation bit blasting
-------------------------
Install the Image
~~~~~~~~~~~~~~~~~
This process follows `the OpenWRT doc OEM
Install <http://wiki.openwrt.org/toh/buffalo/wzr-hp-g300h>`__ to tftp
the new image onto the router. You need a computer to set up the router,
we assume it is a recent Linux or OS/X installation.
- Get openwrt-ar71xx-wzr-hp-g300nh-squashfs-tftp.bin
::
wget http://openwrt.xr7.org/openwrt/ar71xx/openwrt-ar71xx-wzr-hp-g300nh-squashfs-tftp.bin
- Connect computer to LAN port 4 (closest to WAN port)
- Set computer interface to IP address in the 192.168.11.2
- Add static arp entry for router
::
arp -s 192.168.11.1 <mac-address>
- Start TFTP transfer attempt
::
tftp 192.168.11.1
binary
rexmt 1
timeout 60
put openwrt-ar71xx-wzr-hp-g300nh-squashfs-tftp.bin
- Power on router. Router will reboot and initialize on 192.168.1.1.
- Delete static arp entry for router
::
arp -d 192.168.11.1
- Set computer to DHCP, connect and telnet to router and set root
password.
Configure the Router
~~~~~~~~~~~~~~~~~~~~
- Update ``/etc/opkg.conf`` to point to our repo:
::
src/gz packages http://192.168.5.13/openwrt/build/ar71xx/packages
- Configure anon mounts:
::
uci delete fstab.@mount[0]
uci commit fstab
/etc/init.d/fstab restart
- Reset the DHCP address range. DevStack will claim the upper /25 of
the router's LAN address space for floating IPs so the default DHCP
address range needs to be moved:
::
uci set dhcp.lan.start=65
uci set dhcp.lan.limit=60
uci commit dhcp
- Enable TFTP:
::
uci set dhcp.@dnsmasq[0].enable_tftp=1
uci set dhcp.@dnsmasq[0].tftp_root=/mnt/sda1/tftpboot
uci set dhcp.@dnsmasq[0].dhcp_boot=pxelinux.0
uci commit dhcp
/etc/init.d/dnsmasq restart
Set Up tftpboot
~~~~~~~~~~~~~~~
- Create the ``/tmp/tftpboot`` structure and populate it:
::
cd ~/devstack
tools/build_pxe_boot.sh /tmp
This calls ``tools/build_ramdisk.sh`` to create a 2GB ramdisk
containing a complete development Oneiric OS plus the OpenStack code
checkouts.
- Copy ``tftpboot`` to a USB drive:
::
mount /dev/sdb1 /mnt/tmp
rsync -a /tmp/tftpboot/ /mnt/tmp/tftpboot/
umount /mnt/tmp
- Plug USB drive into router. It will be automounted and is ready to
serve content.
Now `return <ramdisk.html>`__ to the RAM disk Guide to kick off your
DevStack experience.