Today Microsoft released the public preview of Azure SQL Database Managed Instances – an exciting new option for running SQL Server workloads in the cloud. I’m pleased to say that initial support for this new offering is already available across the development tools in Redgate’s SQL Toolbelt, as well as in SQL Monitor. This support will continue to improve as the platform evolves throughout its public preview.
What are Managed Instances?
Managed Instances (or Azure SQL Database Managed Instances, to give them the long name) are a new PaaS database offering, joining the Azure SQL Database and Elastic Pool services. As part of this PaaS family, Managed Instances take care of many operational aspects like ensuring high availability, backups, and applying patches, making them simpler and less time-consuming to administer.
While many organizations have benefited from using Azure SQL Database for new applications, it has been a significant challenge to migrate existing workloads because of key functionality gaps versus on-premises SQL Server.
Managed Instances squarely address that problem, providing vastly improved compatibility. Organizations can therefore easily migrate existing on-premises SQL Server workloads to the cloud while retaining many of the manageability benefits of a PaaS offering.
Redgate’s relationship with Microsoft has enabled us to be part of the private preview program for Managed Instances over the last few months, so we’re pleased to be able to provide support from day one.
Special considerations for monitoring
While Managed Instances will require less operational oversight compared to traditional on-premises SQL Server, many responsibilities for the DBA will remain. For example, using the service doesn’t free you from the responsibility for checking availability or ensuring that security is configured appropriately. It also remains your responsibility to optimize performance, and handle other operational concerns like making sure jobs complete successfully and general troubleshooting.
In the medium term, organizations migrating on-premises workloads to Managed Instances are likely to be running a combination of Managed Instances and on-premises SQL Server, so monitoring both seamlessly as part of a single SQL Server estate is important. SQL Monitor lets you achieve this.
One point to note about Managed Instances is that by design they don’t expose a direct public endpoint – instead you must connect to the instance from within the same Virtual Network (VNET). Therefore there are three options for monitoring Managed Instances using SQL Monitor:
- Run SQL Monitor in your own datacenter (perhaps monitoring other SQL Server instances), and set up a site-to-site Virtual Private Network between your SQL Monitor installation and the VNET containing the Managed Instance.
- Run SQL Monitor on a VM in Azure, either on the same VNET as the Managed Instance, or on a different VNET but with direct connectivity setup between those two VNETs (for example, using peering).
- Run an existing SQL Monitor installation in your own datacenter, but create an additional SQL Monitor installation on an Azure VM in the same VNET as the Managed Instance. The new Distributed Monitoring capabilities in SQL Monitor 8 allow your on-premises SQL Monitor installation to connect to the separate installation in Azure, and to consolidate the data up to a single user interface. Data from both SQL Monitor installations – whether looking at metric analysis, overviews, reporting, or viewing alerts – is all seamlessly integrated. This feels just like using a single installation, while providing the benefits of easier configuration.
Find out more about how SQL Monitor lets you proactively monitor your SQL Server estate, whether on-premises or in the cloud.