When AppLovin learns of an advertising opportunity in an app, the company has 100 milliseconds to decide if it will bid on the spot in a real-time auction. If it wins the bid, it consults a database storing billions of user preferences to serve an ad personalized to that user. AppLovin processes about 30 billion to 50 billion actions per day, all of which need to happen in millisecond timeframes and on a global basis.
The company started as a customer of Amazon Web Services' IaaS public cloud. But in the past few years CTO John Krystynak – an early VMware employee - has moved AppLovin’s operations to another platform: Hosted bare metal infrastructure.
Bare metal servers are non-virtualized compute infrastructure, meaning that unlike a public cloud there is no hypervisor that creates virtual machines. Through provider Internap, AppLovin’s engineers can spin up as many bare metal servers as it needs, and it’s not sharing any of that infrastructure with other customers in a public cloud.
“Once you get to a point where you’re trying to optimize the infrastructure at a granular level, you really want to understand the whole infrastructure stack you’re running on,” Krystynak says.
AppLovin isn’t alone in embracing hosted bare metal infrastructure. Earlier this year Forrester’s Vice President and principle analyst for infrastructure and operations professionals Richard Fichera published a report titled “Consider bare metal as a viable cloud option.” Many vendors have recently begun offering bare metal options, including IBM through its acquisition of SoftLayer, Rackspace, Internap, and others.
“Bare-metal clouds offer a way for I&O pros to deploy workloads that demand dedicated hardware for performance and isolation reasons with all the operational advantages of VM-based infrastructure-as-a-service cloud services,” Fichera wrote in the report.
But as hosted bare metal has emerged as an attractive option, analysts don’t believe they’re a panacea that will replace IaaS. Instead, they encourage users to consider it another tool in the toolbox of enterprise IT.
Vendors typically offer hosted bare metal infrastructure similar to how IaaS cloud is consumed: Users access an online portal, request resources and pay for it by the hour or month. There are some important differences between IaaS and bare metal though. They’re meant for different types of workloads.
Bare metal infrastructure is great for high-performing workloads that strain compute and memory capacity. VMs from a public cloud are great for highly variable workloads that spin up and down frequently. Neither is better than the other, they’re just for different use cases.
There are other important differences too – perhaps the most notable one is price. SoftLayer’s Bare Metal cloud offering costs $0.37 per hour for a four-core server with 8GB of RAM. Its IaaS virtual machine starts at $0.038 per hour with 1GB of RAM. Microsoft Azure has VMs that start at $0.018 per hour. A massive price difference, but a big performance difference too.
Krystynak says one of the things that frustrated him most about operating in an IaaS public cloud four years ago was the concept of “noisy neighbors.” In a public cloud, customers share infrastructure and sometimes other customers can impact the performance of virtual machines running on the same server. In a bare metal environment, customers get access to the full server, so there are no neighbors, noisy or otherwise.
Noisy neighbors are a minor and rare inconvenience for most users that is fairly easy to remediate, says a spokesperson for operational analytics company Datadog. But for customers like AppLovin who are pushing the infrastructure to the max, any inconsistency in performance, even if minor, can become problematic.
In recent months an interesting new use case has emerged for hosted bare metal offerings: Application containers. “There’s really no reason to put a VM under a container unless you’re really trying to isolate it for security,” says Rackspace CTO John Engates. “Otherwise, if you can take the VM out of the equation, you can put containers right on the bare metal, and we have customers doing that.”
Fichera in his Forrester report notes that bare metal infrastructure is a compelling option for latency-sensitive workloads, or users who are currently using large sized VMs that are constantly loaded.
Bare metal has its disadvantages though. For one, customers don’t get the same agility from bare metal servers as they do with virtual machines. IaaS public cloud resources spin up very quickly compared to bare metal servers. There also are not as advanced management tools for bare metal servers – so for example replicating machine images for backup and testing is more difficult. And they require using physical networking and storage, whereas VMs can take advantage of more-agile virtual networking and storage. And most workloads don’t need access to the whole server – it’s overkill.
Gartner Vice President and Distinguished Analyst Lydia Leong says any debate between IaaS and hosted bare metal harkens back to the debate from the early and mid 2000s about whether workloads should run on virtualized infrastructure or not.
Bare metal infrastructure has its place – especially for workloads with large memory footprints, like an SAP HANA in-memory database. Batch computing can also benefit from bare metal performance.
But the IaaS public cloud providers like AWS have gotten really good at offering bare-metal-like performance in their virtualized environments, and they have options for customers to get bare-metal like performance in its public cloud. IaaS cloud providers gain important management, security and efficiency advantages by using hypervisors. So, while the hosted bare metal market is gaining traction, it doesn’t appear to be threatening the meteoric growth of the IaaS public cloud market.