Infrastructure-as-a-service (IaaS), also known as cloud infrastructure services, is a form of cloud computing in which infrastructure services are provided to the user via a cloud, through the internet. The user handles any applications, data, operating system(s), middleware, and runtimes.The user relies on the provider to manage the virtualization, storage, network, and servers for them. This way, the user doesn’t have to have an on-site datacenter and doesn’t have to worry about physically updating or maintaining these components themselves—it’s all handled by the provider.
In most cases, the IaaS user has complete control of the infrastructure via an application programming interface (API) or dashboard. As the most flexible as-a-Service cloud model, IaaS makes it easier to scale, upgrade, and add resources as needed, instead of having to anticipate future needs and pay those costs up front.
IaaS vs. SaaS vs. PaaS
The term as-a-Service generally means a service that is managed for you so that you can focus on what’s more important, like your code and relationships with your customers. In addition to IaaS, there are two other major as-a-Service options: Software-as-a-Service (SaaS) and Platform-as-a-Service (PaaS).
SaaS is a service that delivers an application, which the service provider manages, to its users typically via a web browser. Software updates, bug fixes, and other general software maintenance are taken care of for the user, and they connect to the app via a dashboard or API. SaaS also eliminates the need to have an application installed locally on each individual user’s computer, allowing greater methods of group or team access to the software as desired.
With PaaS, hardware and an application-software platform are provided and managed by an outside service provider, but the user handles the actual application and data themselves. Primarily for developers and programmers, a PaaS gives the user a platform on which to develop, run, and manage their own applications without having to build and maintain the infrastructure usually associated with the process.
Things to consider when choosing an IaaS provider
- Flexibility: Purchase only the components you need and scale them up or down as needed.
- Affordability: Low overhead and no maintenance costs make IaaS an affordable option. Pay only for what you use and how often you use it—similar to paying a utility bill.
- Control: The user has control of their infrastructure.
- Security: Does the provider have a trusted reputation and the resources to prevent and manage any security threats?
- Multitenant systems: As IaaS providers tend to allocate infrastructure resources to multiple clients as needed, the provider is required to make sure that customers are unable to access each others’ data.
Also, having multiple customers using a provider’s infrastructure can create an imbalance known as noisy neighbor—where a single user’s monopoly of a specific resource can slow down performance for others—so providers need to plan resource allocation carefully. This is why it’s important to understand how the provider scales with their consumer loads.
- Service reliability: Performance and speed largely depend on the provider. Any software or hardware problems on their end will impact user runtimes.