PXEfAI is a network provisioning platform for installing and preparing operating systems on physical servers, Linux gateways, embedded systems and edge devices, being built as an independent product in the IoTOcean portfolio. It takes the PXE network boot that most machines already support and builds a provisioning workflow around it: iPXE, HTTP delivery, reusable deployment profiles, rules that decide what each device receives, and a web interface to manage it all.
The provisioning challenge
Installing an operating system once is easy. Installing it on the tenth gateway of the week, with the same network settings, the same SSH keys and the same container runtime, is where mistakes creep in. USB sticks go out of date, steps get skipped, and two machines that should be identical end up slightly different. When a device needs rebuilding in the field, someone has to prepare the media and go through the steps again.
How PXEfAI works
A device that boots from its network card asks the network what to do. PXEfAI is designed to answer that question for every machine, consistently. The planned flow:
- Device boots The machine starts from its network card and asks the network for a boot server.
- PXE and iPXE DHCP points it to PXEfAI, which hands over iPXE and continues the boot over HTTP.
- Provisioning rules Rules checked in priority order, first match wins, pick the operating system and profile from the MAC address or another identifier.
- OS installation The installer runs unattended from the chosen image and installation template.
- Configuration Post-installation tasks apply network settings, SSH access, a container runtime or a WireGuard client.
- Ready-to-use device The machine restarts into its new system, ready for its job in the fleet or the lab.
Reprovisioning is planned to follow the same path: mark the device, let it boot from the network, and have it rebuilt from the same profile. The flow is meant for physical devices and virtual machines alike.
Supported operating systems
Provisioning profiles are being developed for:
- Alpine Linux;
- Ubuntu Server;
- Flatcar Container Linux;
- BalenaOS;
- OpenWrt-based gateway deployments.
The profiles are at different stages of development, and none is presented as production-ready yet. The status of each one will be published in the IoTOcean Journal as it is tested.
Edge and IoT applications
PXEfAI is aimed especially at IoT and edge environments, where the same gateway setup has to be repeated many times. Flatcar and Ubuntu gateway profiles are planned to come out of installation with SSH configured, a container runtime ready and a WireGuard client set up, ready to be handed over to a fleet management tool. Integration with the wider IoTOcean ecosystem is an opportunity being explored; none is planned yet.
Architecture and deployment options
The web management interface is being built with a FastAPI backend, Jinja2 templates, HTMX and Tailwind CSS, on top of the existing PXE and provisioning scripts. The deployment options being worked on are:
- a VirtualBox-based lab for development and testing;
- a native Linux PXE server, set up with installation scripts;
- a dedicated PXE gateway for a site or a lab.
Cloud-managed provisioning, with a light local bootstrap service at each site, is a later goal and is not ready for production use.
Development status and roadmap
PXEfAI, previously developed under the name PXE Ocean, is in development. Progress on the operating-system profiles, the management interface and the deployment options will be shared in the IoTOcean Journal. If you install Linux on more machines than you would like to by hand, get in touch.