OpenStack Ironic: Delivering non-virtualized workloads in a Cloud

Despite the gains in deployment automation tooling over the last decade which have enabled small Dev/Ops teams to manage very large web applications, there are still certain workloads (MySQL being one of them) that do not perform as well in a virtualized environment. The trade-offs necessary in order to get reasonable performance, durability, and availability from your MySQL servers when running in a public cloud are, by now, well understood -- but not trivial. It has been my experience that this tradeoff encourages many growing companies to return to real, physical hardware, despite the loss of agility.

This dichotomy (“Agility is good! We need raw performance!”) can be addressed in a single cloud today, but it is not in wide use yet. Want to pack a lot of CI tests onto your hardware? Use a virtualization driver (KVM, Xen, etc). Need to deploy a performance-sensitive application in production? Use a physicalization driver -- or rather, use Ironic.

With Ironic, the cloud model is preserved: physical servers can be managed like any other cloud instance, deleted and re-provisioned on demand in minutes. Ironic uses standard, open source technologies (IPMI, PXE) to deploy complete images (no installer!) on a fleet of servers. Vendor, such as HP, Dell, IBM, and others, have contributed drivers which provide more advanced functionality, if you are using their hardware.