I have a lot of servers in different data centers which should be reinstalled from time to time.

I am familiar with Puppet so I am able to configure the O/S after it boots up but I can't perform an automated reinstall.

All the tools for bare metal provisioning like Foreman or Razor use advantages of iPXE booting to run a micro distro and pull all necessary kickstart or preseed files from a master server and so on. But for me it's impossible because I can't organize servers into a network with my own DHCP and iPXE, etc.

But almost all data centers I am working with have a livecd/rescue mode function.

So I thought maybe there is an automated bare metal provisioning tool which can be used if I have an SSH access to the LiveCD? It can either simply SSH into system and directly run commands, or setup a local iPXE server, start QEMU, install O/S then reboot and run Puppet for further configuration process.

So does it exist?

PS. At the end of composing this answer I thought that maybe I can just solve the PXE problem using a bash script which installs GRUB2 over SSH to LieveCD which then will download all things needed for Razor/Foreman over HTTP?

  • If you can load your own kernel it's possible to install CentOS from GRUB. serverfault.com/a/634796/9517 – Iain Oct 19 '14 at 19:06
  • Which OS/flavor/distribution are you trying to install? – ewwhite Oct 19 '14 at 19:18
  • CentOS or Debian. – Glueon Oct 19 '14 at 20:02

You can use Foreman and the foreman_bootdisk plugin.

You should set up Foreman, add your hosts, and boot them using the foreman_bootdisk generated image, a hybrid ISO. In that case you don't need DHCP and iPXE for anything (in fact the plugin is meant for that exact use case).

The README of the foreman_bootdisk contains more documentation about how does it work, and it can be installed through the Foreman installer or as a package (deb and RPM)

  • How do I boot from a foreman_bootdisk if for example I do not have control over the bios, boot options, etc? – Glueon Feb 24 '15 at 1:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.