Consolidating FOG and AikenWorkbench to one subnet. One PXE for both.
-
Hi, thank you for taking the time to read this.
We have FOG on subnet 192.168.3.0/24, and we use it for imaging laptops that go for sale. On the subnet 192.168.2.0/24, we have AikenWorkbench that we use to test those laptops before imaging. Aiken has its own DHCP server and uses pxelinux.0 and grub if I understand correctly.
We would love to have both servers on a single subnet. So we won’t need to double the ethernet cables and unplug them every time a task is done.
What would be the approach to achieve that?
- Having them both running on Type 1 Hypevisor or Containers? If this is even possible.
- Having two servers on the same subnet pointing to each other?
- Having them on separate subnets pointing to each other?
AikenWorkbench has a lot of proprietary code they don’t share, and their customer support says this is not possible to have another PXE server working along with theirs.
I was trying to install FOG along with Aiken, but I ran into some problems with SQL and FOG installation failed. Aiken uses SQL, and I don’t have the password for it. Also, we have only one licence, so no staging is possible.I have also tried Aiken grub.cfg to point to FOG, which failed. Then I tried Chainloading PXE to iPXE using pxelinux.0 and that completely broke Aiken. Had to restore from backup (which is in Acronis, not FOG, as they conflict)
I know nothing about PXE, iPXE and pxelinux.0. I know very little about DHCP and more about grub. I’m willing to learn, though. So if you could point me in the right direction and docs, I would really appreciate that.
Here is a part of the dhcpd.conf:
class "pxeclients" { match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; next-server 192.168.2.1; if (option arch = 00:00) { filename "bios/pxelinux.0"; }elsif (option arch = 00:06) { filename "grub/bootx32.efi"; }elsif (option arch = 00:07) { filename "grub/bootx64.efi"; }
Regards
Damian -
@jatosaj I think I would approach this by having FOG as your PXE boot source. This will use iPXE as your boot loader. iPXE is a very powerful boot loader as compare to syslinux (pelinux). Both are capable of doing what you want, just you’ll have an easier time managing this setup from FOG.
The idea is to pxe boot into the FOG menu, then have FOG chain (load) the aikenwb environment.
Understand I’m just spitballing this configuration. But within the fog UI under FOG Configuration there is an iPXE menu manager. You will create a new iPXE menu using these settings.
Menu Item: os.chainaikenwb
Description: Boot AikenWorkbench
Parameters:
iseq ${platform} pcbios && set bootfname “bios/pxelinux.0” ||
iseq ${platform} efi && set bootfname “grub/bootx64.efi” ||
chain -ar tftp://192.168.2.1/${bootfname}
boot || goto MENU
Menu Show with: All HostsIf AikenWorkbench requires the dhcp settings to contain the exact values we will need to get a bit more creative with the FOG menu.
(this one I have about 60% confidence I created the menu correctly)Menu Item: os.chainaikenwb
Description: Boot AikenWorkbench
Parameters:
set next-server 192.168.2.1iseq ${platform} efi && goto is_awb_efi || goto is_awb_bios
:is_awb_efi
set bootfile “grub/bootx64.efi”
goto awb_boot:is_awb_bios
set bootfile “bios/pxelinux.0”:awb_boot
set filename ${bootfile}
set net0.dhcp/filename ${bootfile}
set proxydhcp/filename ${bootfile}
chain -ar tftp://${next-server }/${bootfile}
boot || goto MENU
Menu Show with: All HostsEven if I missed on the menu, using FOG and iPXE is the easiest answer to get what you need. You CAN do it with FOG. For full disclosure you can also create a menu in syslinux to chain load into iPXE too. So if you have a way to create customer menues in AikenWB you can pxe boot into AikenWB and then chain to fog, but you’ll lose out in some of the boot features of FOG.