PXE Install

The Fluid OS is easily installed in any environment that supports PXE booting, that is, has a running DHCP server and access to a TFTP sever to boot the Fluid image.

Fluid is constructed into two major booting components, the immutable operating system and the iPXE bootloader. The iPXE image generated on demand from the Fluid cloud console by defining a PXE Boot Key in your environment.

The iPXE can then be parsed as a configuration option to your local iPXE environment. An example iPXE file downloaded from Fluid might look like this:

#!ipxe

iseq ${platform} efi && goto fluid_efi || goto fluid_bios

:fluid_efi
chain --replace --autofree http://boot.fluidhq.io/pxe/d809580c-457f-4380-8632-549091d361ff/default/ipxe.efi

:fluid_bios
chain --replace --autofree http://boot.fluidhq.io/pxe/d809580c-457f-4380-8632-549091d361ff/default/undionly.kpxe

In this example we’ll use the isc dhcpd server for configuration reference however, many DHCP servers are likely to support similar configurations.

Configure dhcpd for chainloading iPXE

After installing dhcpd on your chosen distribution, add and ammend the below block to your dhcpd.conf file. Note the boot.fluidhq.io URL which has been retrieved from the Fluid Console.

option client-arch code 93 = unsigned integer 16;
subnet 10.8.8.0 netmask 255.255.255.0 {
    range 10.8.8.100 10.8.8.199;
    option routers 10.8.8.1;
    option domain-name-servers 10.8.8.1;
    next-server 10.8.8.1;
    if exists user-class and option user-class = "iPXE" {
        filename "http://boot.fluidhq.io/pxe/d809580c-457f-4380-8632-549091d361ff/default/boot.ipxe";
    } elsif option client-arch != 0 {
        filename "ipxe.efi";
    } else {
        filename "undionly.kpxe";
    }
}

Note, the above config will allow both BIOS and EFI computers to boot from your DHCP server, however are predicated on both ipxe.efi and undionly.kpxe existing on your TFTP server located at 10.8.8.1. You may note that the Fluid iPXE file above also has these files, which are already modified for your particular cluster tokens. It is possible to download or curl these files directly into your tftp servers root directory.