4 ms·
I have put our implementation of _exactly_ this in production last week. Boot a "CD-ROM" via IPMI into a custom installer, flash image (generated from a Docker
by deivid 4y ago
I have put our implementation of _exactly_ this in production last week.
Boot a "CD-ROM" via IPMI into a custom installer, flash image (generated from a Dockerfile!) to disk, reboot.
Install takes ~15 seconds, full process (going via POST once) takes ~4 minutes. This also allows us to have a "hardware validation" image (that one doesn't get persisted to disk).
Not sure if there's any plans to make it public right now, but I'll ask around. Feel free to contact me via email (in profile)
- justinclift 4y ago> but I'll ask around. Please do. There's a need for it. :)
- yjftsjthsd-h 4y ago> flash image (generated from a Dockerfile!) Any hints about how to do this? I'd love to use something as nice to work with as a Dockerfile to build bare metal installs.
- deivid 4y agoI wrote down the kernel of the idea quite a while ago here[0], however, the actual version we run nowadays is using UEFI and written in Go (installer) + Python (API that generates the ISO on demand) Fly.io[1] also does this (although they boot the result in a VM, the concepts are the same) [0]: https://blog.davidv.dev/docker-based-images-on-baremetal.html https://blog.davidv.dev/docker-based-images-on-baremetal.htm... [1]: https://fly.io/blog/docker-without-docker/ https://fly.io/blog/docker-without-docker/
- Klasiaster 4y agoYes, automation with IPMI can be done (for a particular hardware due to quirks), and I recommend doing it (and I have done it) with a separate DHCP environment for the BMC NICs to be at least agnostic about the OS NIC's network environment. So, I share your excitement when it works but I'm not happy with the out-of-the box experience of IPMI. I wish there was something better but unfortunately this is just one case of a split/mismatch of what HW people provide and what software people need.
- voltagex_ 4y agoWhy do we still use "CD" or "ISO" images in virtual environments?