A cloud-first strategy is the catchcry for many IT strategies. As the on-premises footprint dwindles and the cloud footprint grows, ongoing costs come to the forefront of IT budgets.
Database Administrators face challenges in keeping databases running as performance demands and data steadily increase. With the advent of cloud, the role of a traditional database administrator has evolved to become a more visible resource in an organisation. One of the key focuses now for DBAs is managing costs and learning different ways to optimise the cloud spend.
In this post, we will review the various cost saving options which are available in Microsoft Azure.
1. Understand available licensing benefits
The first thing to ensure, is that you are taking advantage of licences that you’ve already purchased. If you previously purchased licences for your on-premises SQL Server estate, then you may be able to leverage these licences to reduce your Azure bill, as long as these licences include active Software Assurance.
The first benefit that can be taken advantage of is the Azure Hybrid Benefit for Windows Server. This permits Windows Server licences with active Software Assurance to be applied against Azure Virtual Machine’s (VM). This results in the Azure VM base pricing being applied instead of Azure Windows Server VM pricing.
The second Software Assurance second benefit to leverage is the Azure Hybrid Benefit for SQL Server, which is available for SQL Server Core Licences with active Software Assurance and can be applied to both IaaS (VMs) and many PaaS SQL workloads in Azure.
The final benefit to discuss is Licence Mobility Rights for SQL Server. This benefit allows you to run the licenced SQL Server software on an Azure VM, instead of in an on-premises data centre.
2. Take advantage of Azure Dev/Test pricing for non-production workloads
Running non-production workloads in Azure can result in bill shock so make sure that you’re running these workloads in an Azure Dev/Test subscription.
Azure Dev/Test Pricing provides extensive discounts on services that are solely used for development and testing by active Visual Studio subscribers, and by end users providing feedback and performing acceptance tests. For example, the following discounts can be applied to your SQL Server non-production workloads in Azure:
- Window and SQL Server virtual machines billed at Linux virtual machine rates.
- Azure SQL Database provides savings of up to 55%
3. Save money by reserving instances in advance
By forecasting and committing to your resource requirements in advance, Microsoft can more accurately forecast and plan for their Azure data centre capacity requirements. This allows Microsoft to be more efficient, and in return they pass these saving onto you by providing deep discounts.
You can reserve resource instances for a specified period; 1 or 3-year reservations can be purchased directly through the Azure Portal. Additionally, you have the choice of paying for reservations upfront or on a monthly basis. The monthly payment option is available at no extra cost.
Some examples of the discounts that may apply, compared to Pay-As-You-Go pricing are:
- Up to 80 percent savings on Windows Virtual Machines
- Up to 80 percent savings on Azure SQL Database
- Up to 65 percent savings on Azure Synapse Analytics
- Up to 38 percent savings on Azure Storage Reserved Capacity
4. Consider using Azure Spot Virtual Machines for non-critical workloads
For non-critical workloads that can be interrupted from time to time, you might want to consider Azure Spot Virtual Machines. These VMs allow you to access unused Azure compute capacity at significant discounts (up to 90%) compared to pay-as-you-go prices.
These virtual machines are ideal for workloads that can be interrupted, like batch processing jobs and dev/test environments. Evaluating your environment for opportunities to take advantage of Azure Spot Virtual Machine pricing can bring significant cost savings.
5. Don’t pay for orphaned disks
When you delete a virtual machine in Azure, by default, in order protect against data loss, any disks that are attached to the VM aren’t deleted. One thing to remember is that after a VM is deleted, you will continue to pay for these “orphaned” unattached disks.
In order to minimise storage costs, make sure that you identify and remove any orphaned disk resource.
6. Do you really need premium storage?
For performance, Azure Premium Storage (SSD) is king, but it comes with a significantly higher price tag than Standard Storage (HDD). Carefully selecting where disk performance is necessary can greatly assist in lowering overall costs, as the cost per GB is generally negligible when compared with performance tiers.
7. Take advantage of Azure SQL Database Elastic Pools
Most database workloads vary over time, for example a database workload supporting an ecommerce website may peak on particular day of the week. Traditionally to support these workload peaks, we need to capacity plan compute, memory and storage resources to cater for these peaks, however this leaves us with plenty of unused capacity during quieter periods.
Azure SQL Database Elastic Pools allow you to create a pool of resources that are shared by multiple database workloads. Rather than allocating separate resources to cater for the peak workload requirements of each database, a shared pool of resources is allocated to multiple databases. To make the most of this configuration, it’s important that these peak workloads across the multiple databases occur at different times.
Elastic pools provide the flexibility of achieving high performance at a greatly discounted cost if configured appropriately.
8. Plan and manage your Azure resources
Accurate capacity planning and management are essential to ensure that you right size your Azure Resources. Allocating only the resources your workloads need to perform well, means not paying for resources that you do not require.
Performance testing of existing systems should illuminate the suitability of your current resource allocations, highlighting where resources can be scaled back or altered to more a cost-effective resource. Auto-scaling is also a useful option in order to meet varying performance demands, reigning in costs at the same time.
Azure Monitor is a key service for this activity, allowing you to quickly gain insights into resource consumption, helping you to make changes in order to reduce costs.
9. Turn off services if you’re not using them
In Azure, you pay for what you use, so if you’re not using a service, turn it off!
A great way of facilitating this is Azure Virtual Machine Automatic Shutdown, which can be configured to automatically shut down virtual machines here possible to minimize virtual machine operating costs. This works well for any environment which does not require 24×7 operation and can be configured to shut down on a schedule.
10. Understand the bigger picture
Azure Cost Management is a built-in Azure tool which provides an overall picture of your Azure subscriptions running costs. There are easy drill-down options to examine exactly where costs are occurring, allowing you to quickly identify high-cost items and examine their resources closely. Azure also provides additional tools such as Azure Pricing Calculator and Azure Advisor to assist with cost planning and optimization.
Microsoft Azure provides many resources to allow business to achieve their cloud-first strategies. Although business requirements can be easily translated to solutions with the help of Microsoft Azure, it is also important to note the cost factor involved in implementing a solution. In this blog we looked at concepts and various tools which allow simple Azure resource cost optimisations, both before and after deployment.
Reach out to WARDY IT Solutions to begin your Azure Cost Optimisation journey today.CONTACT US