Metal3 Uses OpenStack’s Ironic for Declarative Bare Metal Kubernetes

Red Hat sponsored this post.
Last week at the Open Infrastructure Summit in Denver, Colorado, the name of the game, among other things, was bare metal.
The OpenStack Foundation touted its bare metal provisioning and management tool Ironic, taking to the stage during the keynotes not only to show that bare metal was a key focus of its latest release, but also to unveil a new project Metal3 (pronounced “metal cubed”) that uses Ironic “as a foundation for declarative management of bare metal infrastructure for Kubernetes” according to a company statement. The description of the keynote also offers the following, which helps put things into context — “While [OpenStack Ironic] is frequently used as a compute driver for cloud infrastructure like Nova, we will demonstrate how a new project is using Ironic as a foundation for declarative management of bare metal infrastructure for Kubernetes.”
Of course, bare metal is nothing new. Immediately preceding the announcement of Ironic and Metal3, James Penick, an architect at Yahoo, offered his explanation of Verizon Media’s use of bare metal on OpenStack, noting that the company was managing hundreds of thousands of machines and millions of cores.
“VMs, containers, functions, are all awesome, but each thing stands on the layer beneath, and they all stand on top of the foundation, which is bare metal. Bare metal is not flashy, it’s not glamorous, it’s not the latest cool new toy that people are making breathless blog posts about, but you gotta deal with it, so we invested there,” said Penick. “We changed the business to make infrastructure as a service bare metal an option, and then a default, and then it was mandatory. What was once a heretical idea became common sense.”
Following Penick, Chris Hoge, senior strategic program manager at OpenStack Foundation, and Julia Kreger, OpenStack Ironic Project Team Leader, took to the stage to offer a demonstration of Metal3, the new project that provides “bare metal host provisioning integration for Kubernetes.”
In an email interview with The New Stack, Kreger explained that she saw Metal3 as part of a bigger trend, where users are looking for better and more efficient ways to do what they’re doing, especially using common tooling and methods.
“I think the bigger trend that we’re starting to see is a recognition that common tooling and substrate helps everyone succeed faster with more efficiency,” wrote Kreger. “This is combined with a shift in the way operators are choosing to solve their problems at scale, specifically in regards to isolation, cost, or performance.”
When asked what problems Metal3 would solve and who it was aimed at, Kreger offered the following answers.
“Metal3 provides an easy path for Kubernetes friendly controlled and orchestrated bare metal machines which utilizes OpenStack Ironic internally, and as such is able to leverage much of the lessons learned and technology in Ironic,” explained Kreger. “There are always varying types of users. Some users need or want more declarative methods and patterns for managing their infrastructure. Metal Cubed provides this on top of the capabilities of Ironic in order to help reach the declared end point all through a Kubernetes “Custom Resource Definition,” which helps enable the use of a single tool for the user to interact with.”
“When operating at a smaller scale, either by needs of the application or organization, a declarative model, such as those driven by the Kubernetes CRD interface, allows for the consumption of a modeling language via the Kubernetes API interface. This allows for back-end logic to re-use the same model/document contract in terms of contents, which helps a user in terms of similarity and easier adoption,” Kreger wrote, in a follo-up e-mail. “The CRDs ultimately allow for cross-vendor similarity in terms of basic interaction with the API which is extremely powerful, however fragmentation can also harm the usefulness if standards are not eventually created and formed from those interactions. The most powerful aspect of Metal3 is in the fact that it is leveraging OpenStack Ironic, which has already and continues to abstract and expose generic vendor neutral interfaces.”
For further detail, check out the video of the keynote, which includes a demonstration of Metal3 being used to quickly provision three bare metal servers with Kubernetes:
Feature Image by Jarkko Mänty from Pixabay.