As outlined in last week’s article, “Simplifying Cloud – Which Cloud Solution/Model Best Optimizes Your IT Workload,” trying to understand the various cloud models can be an overwhelming task for those trying to align their future IT strategy with their current capabilities. Organizations with mature datacenters that want to leverage the cloud’s enhanced control of their underlying components will likely use the Infrastructure as a Service (IaaS) model. Likewise, organizations looking to develop, test, deploy, and host applications without investing in the hardware necessary to support these functions will primarily be interested in Platform as a Service (PaaS).
This powerful combination of managed and unmanaged services provided by Microsoft Azure is the only major cloud platform ranked by Gartner as an industry leader for both Infrastructure as a Service (IaaS) and Platform as a Service (PaaS).
Defining Platform as a Service
PaaS rests in the center of the 3-tiered “…as a Service” cloud solution hierarchy. PaaS allows IT to build and manage applications as an independent developer or as an enterprise applications Test/Dev. Ideally, developers will create solutions that utilize data acquired from an application – a common occurrence regarding CRM systems. Furthermore, coding software often requires collaboration from multiple developers to work on the same project, built on a scalable solution with load balancing and failover.
With the PaaS model, the customer is focused solely on application and data, while the cloud vendor provides the underlying platform and performs maintenance (OS patching, service/hardware).
As a leader in Gartner’s Magic Quadrant for Enterprise Application Platform as a Service (aPaaS), Microsoft Azure provides a cloud OS and a set of services to support easy development and operation of applications. As Gartner describes, “Its PaaS capabilities go beyond aPaaS and include its SQL Database (dbPaaS) as well as messaging middleware services (Azure Service Bus), in-memory data grid services (Azure Cache) and iPaaS (Azure BizTalk Services). Microsoft also provides Azure Mobile Services, a cloud mobile back-end service offering.”
Although pricing for PaaS and IaaS follow the same “pay for what you use” model, PaaS is much more predictable because Microsoft is managing the infrastructure, the customer just needs the resources.
Defining Infrastructure as a Service
Azure provides the opportunity for organizations to link between a customer’s on-premise infrastructure and the public cloud (IaaS), enabling a hybrid cloud solution. The customer does not manage or control any of the cloud physical infrastructure; rather, Microsoft provisions essential computing resources to the customer to deploy software, OS, and applications. IaaS is especially useful for:
- Rapid creation of infrastructure solutions (networking, storage, VMs)
- Disaster recovery solutions
- Large-scale unstructured data storage
- Cloud Integrated Storage
Azure Virtual Networking enables IT to securely link on-premise infrastructure to Azure via VPN or Private Networking (ExpressRoute). Azure Virtual Machines enables organizations to deploy Windows Server or Linux machines; the pricing of Azure Virtual Machines depends entirely on the length of time they’re used – whether they’re heavily loaded for an hour or not used at all, the price-per-minute remains the same.
Crossing the Chasm Between IaaS and PaaS Solutions
Azure provides different execution models for running applications. Each one provides a different set of services, and so which one you choose depends on exactly what you’re trying to accomplish.
Sometimes, no single execution model is right. In situations like this, it’s perfectly viable to combine IaaS and PaaS. For example, suppose you’re building an application where you’d like the management benefits of Cloud Services web roles, but you also need to use standard SQL Server for compatibility or performance reasons. Cloud Services VMs (PaaS) run in a separate cloud service from the Virtual Machines VMs (IaaS). Still, the two can communicate quite efficiently, so building an app this way is sometimes the best option.
Virtual Machines provide the most general solution. If you want the most control possible, or if you need generic VMs, such as for Dev/Test, this is the best option. VMs are also the best choice for running off-the-shelf on-premise applications in the cloud. And because the VMs you create with this technology can look just like your on-premise VMs (via networking configuration), it’s also likely to be the best choice for disaster recovery. The trade-off, of course, is that with great power comes great responsibility — IaaS requires you to take on some administrative work.
Azure provides different execution models because cloud platforms need to support many different scenarios; any organization interested in leveraging Azure’s comprehensive capabilities needs to understand each one. Click the banner below if you would like a SoftwareONE Cloud Specialist to provide you with a more detailed education on Azure’s vast capabilities.