The 3 main cloud computing models: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS) allow you to outsource varying degrees of computing work and hardware maintenance to a cloud provider like Amazon or Microsoft. These cloud services are hosted in gigantic datacenters strategically located around the world.
An easy way to remember the differences between IaaS, PaaS, and SaaS, is by differentiating these 3 cloud service models by the amount of control over computing resources they provide and the relative ease of managing them.
On one hand with a Software-as-a-Service model, you outsource almost everything to the cloud provider, making setup and management extremely simple. On the other hand, Infrastructure-as-a-service gives you almost full control over server instances, making for a highly customizable but relatively complicated environment. PaaS falls somewhere in between.
An easier way of learning the differences between IaaS, PaaS, and SaaS is using an easy-to-understand analogy compares cloud services to painting.
Analogy comparing IaaS, PaaS, SaaS and on-premises servers to painting
In both painting and setting up cloud services, your end goal is to create a masterpiece, whether that’s a beautiful painting hanging on your wall or fully functioning IT services. In both cases, you can get to the end result by doing everything yourself or outsource much of the work.
On-premises servers: DIY everything
You buy the paints, brushes, easel, and canvas. Then you set aside space for a studio in a spare room. Because you buy everything, you have the freedom to choose whatever tools or mediums you want so the possibilities are endless. However, control comes at a cost. You have to put in a lot of time to set things up and you have to know what you’re doing to get a good result.
IaaS: Paying to take an art class
The art teacher lets you use whatever painting supplies she has and lets you use one corner of her classroom. She lets you select a blank canvas to start with, so you can paint any subject you want. It takes a little skill and patience to get to the end result, but she provides a good deal of guidance so it’s much easier than doing everything on your own.
PaaS: Paying to take a paint-by-numbers art class
In this class, like the last one, you’re given everything you need to paint, but this time your subject matter is limited to predefined templates. It’s very easy to get started because much of the work is done already. You can finish your art project quickly, but you have less creative freedom to paint outside the lines.
SaaS: Buying a painting from a gallery
Here, you don’t have to paint anything at all. Someone else does all of the hard work behind the scenes. You had little control over the artistic vision, but the end result is polished out of the box. And for the price you pay, you get a finished product to hang on the wall almost immediately.
In summary, compared to a traditional IT model where organizations manage and maintain on-premises servers, all three cloud services models are easier to set up, but typically give you less control than on-premises servers. Now that we understand that, lets get a bit more technical.
Technical descriptions of SaaS, PaaS, IaaS, and on-premises servers
Software as a Service (SaaS) is a cloud service model that lets you access applications online that previously would have been installed on a local computer. It’s the easiest cloud model for users to set up and manage, but you have no control over the cloud infrastructure your SaaS applications run on. Popular examples of SaaS include Google Apps, TurboTax Online, Dropbox, and Salesforce. SaaS can be a layer on top of other cloud models. For example, TurboTax has used Amazon Web Services EC2 (IaaS) to power its tax return software.
Platform as a Service (PaaS) provides a pre-defined software environment that IT professionals and software developers can use to easy set up and run applications. PaaS gives users control over applications they install on the platform, but they have no control over the underlying hardware or operating system. Examples of PaaS include web servers, database servers including SQL, or programming environments that support Java, .NET, or Python. PaaS can save organizations a lot of time by providing an easy way to quickly stand up web or SQL server located halfway across the world.
Infrastructure as a Service (IaaS) gives IT professionals control over low-level computing resources like storage, memory, CPUs, and lets them choose and control the OS that runs on cloud servers. Control comes at a cost though, as you’ll also have patch the OS every time there’s a critical update. IaaS cloud instances behave much like physical computers in that you can reboot them as needed or shut them down if they are no longer used. Examples of IaaS include Amazon Web services EC2, Microsoft Azure VM, and Google Compute Engine.
On-premises servers are the traditional way of hosting applications and services and unless you have a private cloud, are not cloud computing. In contrast to public cloud services, they are physical computers you can touch because they’re located where you are. On-prem servers give you ultimate control but you manage everything about your machines. You buy the hardware, find space for it, supply the power, hook up the cables, install the OS and software, and you’re on the hook for repair them if they fail. On-premises servers make sense in many cases, but require a level of expertise and manpower to configure, manage, and maintain.
SaaS, PaaS, and IaaS: Are they for you?
Knowing which cloud service model is appropriate for you is much like the decision between public, private, and hybrid cloud: it all depends on your situation. Understanding what your organization really needs in the requirements-gathering phase, whether it’s convience or complete control, goes a long way to making the decision. Speaking to vendors and cloud providers before taking the plunge and chatting with other IT pros who have set up their own cloud infrastructure can also help you decide one way or the other.