Uploaded image for project: 'Satellite'
  1. Satellite
  2. SAT-27009

Provisioning hosts with the Net Boot ISO

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • None
    • Provisioning
    • None
    • Provisioning hosts with the Net Boot ISO
    • False
    • Hide

      None

      Show
      None
    • False
    • To Do
    • SAT-23033 - Revamp provisioning
    • 0
    • 100% To Do, 0% In Progress, 0% Done

      A customized NetBoot ISO with the potential to replace the foreman_bootdisk plugin. The bootdisk plugin is based on the iPXE which has limited support and may beceome dropped from Fedora in future.
      With the mkksiso tool from the Lorax package, we can alter the boot ISO to include kernel installation parameters required to provision with Satellite (inst.ks, inst.ks.sendmac …).

      Basic workflow

      • A user creates a golden kickstart image.
      • A user creates a host in their Satellite (and puts it in the boot mode).
      • Boot the machine with the iso.
      • The machine is trying to fetch provisioning data.
      • If the Foreman host is in build mode, start provisioning.
      • If not, wait & repeat the step.
      • Build the host or timeout after X attempts or Y seconds.

      This workflow could replace the functionality of the Foreman Bootdisk plugin.
      In later phases, it could also replace the Foreman Discovery.

      Known limitations

      • Per Smart Proxy's operating system
      • EL family only
      • For other operating systems, users have to download ISOs manually.

      Acceptance Criteria

      • New Foreman plugin with this functionality
      • Implemented user stories

      To verify / Open questions

      • HTTPS & Self-signed certificates
      • Do we need to support BIOS?
      • Secure Boot
      • Can we build the net-boot iso by ourselves?
      • Auto creation of iso after RHEL kickstart repos are synced

      Playground

      # As a root
      
      mkdir -p /root/netboot
      cd /root/netboot
      
      dnf install -y lorax
      
      wget  -o /root/netboot/netboot.iso https://mirror.stream.centos.org/9-stream/BaseOS/x86_64/iso/CentOS-Stream-9-20240513.0-x86_64-boot.iso
      
      mkksiso -c "inst.ks=http://foreman.lan:8080/unattended/provision inst.ks.sendmac nameserver=192.168.190.1" ./netboot.iso ./customized.iso
      
      virt-install   --name=netboot   --vcpus=4   --memory=4096 \
        --disk size=20   --os-variant=centos-stream9 \
        --network "network=foreman_default,mac=00:aa:bb:38:91:9c" \
        --connect qemu:///system --boot cdrom,hd \
        --cdrom=/path/to/customized.iso
      
      

              rhn-engineering-lstejska Leos Stejskal
              rhn-engineering-lstejska Leos Stejskal
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: