The options available for where and how to deploy SQL Server in Microsoft Azure are often confusing for organizations who are new to the cloud platform. IaaS and PaaS offer different services and selecting the wrong option for your data can cause implementation delays, performance issues, and failed deployment projects.
In this post, I’ll be giving a high-level overview of what these options are, as well as how those of you with legacy SQL Server footprints can take advantage of Microsoft Azure for extended support during your transition to the cloud.
One of the most important things to understand is that not all SQL Server offerings are created equal in Azure. Organizations have the choice of deploying SQL Server to:
- Infrastructure as a Service (IaaS) virtual machines,
- or by leveraging Azure SQL Database, which is a Platform as a Service (PaaS).
Microsoft has also recently released Azure SQL Database Managed Instances, which is a hybrid of the previous two options. They each have their pros and cons and understanding what those are is critical to a successful deployment.
SQL Server on a Microsoft Azure VM
This IaaS option is going to be the most familiar option to most IT professionals reading this. When deploying SQL Server onto an Azure VM, it’s functionally identical to deploying SQL Server to an on-prem VM. You have all of the features and functionality available to you, along with all of the overhead of managing it.
In this scenario, you have guaranteed application compatibility, but you also have to manage:
- The backup,
- Failover, and
Additionally, all of the other day-to-day tasks that come with keeping the lights on in a SQL Server environment require your attention as well.
Microsoft Azure SQL Database
With this PaaS option, Microsoft manages the underlying operating system and SQL Server Database Engine instances, and everything associated with them, including patches, backup, clustering, and failover.
This is a very compelling option for organizations that want to reduce management overhead and quickly deliver highly resilient services.
It’s important to note that not all SQL Server features are available in Azure SQL Database, due to its streamlined nature. Additionally, while geo-failover and point-in-time restore are excellent options that come with Azure SQL Database, some organizations will need more application-specific failover optimization.
If your application can support Azure SQL Database, it’s a fantastic option, but if your application doesn’t support it, there may be development overhead necessary to make it compatible.
IaaS vs PaaS? Get both with Azure SQL Managed Instances
Azure SQL Managed Instances are a “best of both worlds” approach to the above two options. If you need the additional flexibility and feature set of a full SQL Server installation but you want the hands-off infrastructure management style that PaaS provides, managed instances may be a good fit.
Additionally, they come with the benefit of being able to reside within an Azure vNet; a feature often requested for Azure SQL Databases.
Optimize how you use Microsoft Azure, even if you’re hosting On Premise
If you’re still primarily hosted in your own data center or co-location, there are still many ways that Azure can add value to your SQL Server infrastructure. Microsoft has invested significantly in hybrid data solutions which allow you to leverage the scalability of Azure while your data center is still primarily on premise.
One example is called a SQL Server stretched database.
This allows for you to take a database that is on SQL Server 2017 in your data center today and “stretch” the cold transactional data out to Azure SQL Database services. This reduces the need for high-performance storage on-prem and introduces “cloud tier” SQL capabilities for your coldest transactional SQL data.
This can allow you to:
- Grow without limitations,
- Expand without the need to procure additional on-prem storage, and
- Is transparent to the applications accessing the data.
Can SQL Server on Microsoft Azure help as Windows 7 End of Life approaches?
If you have SQL Server 2008 or 2008 R2 in your environment, you’re probably rushing to identify your upgrade path as the Windows 7 End of Life date draws closer for those products. Many customers want to leverage Azure SQL Database (PaaS), but don’t think they have the time left to re-architect their applications to be compatible.
If you fit this description, then there’s good news!
If you migrate these workloads to Azure, you get free security updates for these products for an additional three years. In the past, this would require a custom support agreement and would be extremely expensive.
But now you can lift-and-shift your existing SQL Server 2008 and 2008 R2 into Azure VMs and enjoy that additional window of extended support while you continue to modernize your applications.