Boot DevStack from a PXE server to a RAM disk.
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.
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.
This process follows the OpenWRT doc OEM Install 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.
wget http://openwrt.xr7.org/openwrt/ar71xx/openwrt-ar71xx-wzr-hp-g300nh-squashfs-tftp.bin
arp -s 192.168.11.1 <mac-address>
tftp 192.168.11.1 binary rexmt 1 timeout 60 put openwrt-ar71xx-wzr-hp-g300nh-squashfs-tftp.bin
arp -d 192.168.11.1
/etc/opkg.conf
to point to our repo:
src/gz packages http://192.168.5.13/openwrt/build/ar71xx/packages
uci delete fstab.@mount[0] uci commit fstab /etc/init.d/fstab restart
uci set dhcp.lan.start=65 uci set dhcp.lan.limit=60 uci commit dhcp
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
/tmp/tftpboot
structure and populate it:
cd ~/devstack tools/build_pxe_boot.sh /tmpThis calls
tools/build_ramdisk.sh
to create a 2GB ramdisk
containing a complete development Oneiric OS plus the
OpenStack code checkouts.
tftpboot
to a USB drive:
mount /dev/sdb1 /mnt/tmp rsync -a /tmp/tftpboot/ /mnt/tmp/tftpboot/ umount /mnt/tmp
Now return to the RAM disk Guide to kick off your DevStack experience.