An Azure subscription is a fundamental concept in the billing and management structure of Microsoft Azure. It serves as an agreement with Microsoft to use Azure services, where the services used are either paid for or are part of a free offer. Here’s a detailed breakdown:
- Billing Boundary: An Azure subscription is a boundary for billing. The usage of Azure resources within a subscription is aggregated, and charges are billed to the account holder of the subscription. This makes it easier to manage and predict costs.
- Access Control Boundary: A subscription also serves as an access control boundary. Azure Role-Based Access Control (RBAC) can be used within a subscription to define who has access to Azure resources and what they can do with those resources. This is crucial for maintaining security and governance over your resources.
- Resource Container: It acts as a container for Azure resources. Resources like virtual machines, databases, and storage accounts are deployed in a subscription. Depending on your organizational needs, you might have different subscriptions for different environments (like development, testing, and production) or different departments.
- Subscription Types: Azure offers various types of subscriptions, like Pay-As-You-Go, Enterprise Agreement (EA), or free account (which includes a limited amount of free services for a year and a limited amount of credit for the first 30 days). The type of subscription determines factors like pricing, payment methods, and available offers.
- Limitations: Each subscription has limits on the number of resources that can be created. These limits are in place to ensure the quality of service across Azure. If needed, you can request to increase these limits.
- Multiple Subscriptions: Organizations often use multiple subscriptions to separate concerns, manage costs, and maintain different environments. This can also aid in compliance, as resources related to specific compliance requirements can be isolated in separate subscriptions.
- Management with Azure Management Groups: For organizations with multiple subscriptions, Azure Management Groups provide a level of scope above subscriptions, allowing you to manage access, policies, and compliance for these subscriptions efficiently.
An Azure subscription is, therefore, a critical part of how you manage and pay for your services in Azure, and it’s important to choose the right type of subscription and manage it effectively to align with your organizational needs.
Most organizations use a single subscription, most often an Enterprise Agreement, and segregate different environments by using different Resource Groups. Although, from a management perspective it is simpler and easier to manage the different permissions and configurations for a single subscription. This approach has a disadvantage or penalty from a cost perspective. Despite being “your” concept of a production environment or nonproductive environment … to Microsoft, all those services are production environments, and the charge as such, including SLA, will be the same.
Azure Dev/Test Subscription
if you opt to isolate your non-production environments within a single Azure Dev/Test Subscription, or several, you’ll benefit from discounted rates on certain Azure services for non-production tasks as part of the Microsoft Customer Agreement. This ongoing arrangement significantly lowers the expenses associated with operating and maintaining applications in the development and testing stages, encompassing various Microsoft products.
Using an Azure Dev/Test subscription can offer several benefits, particularly for development and testing environments. Here’s why it’s a good choice:
- Cost Savings: One of the primary advantages of an Azure Dev/Test subscription is the cost efficiency. It provides discounted rates on Azure services, making it more affordable for developers to build and test applications. These discounts apply to services like Windows Virtual Machines, Cloud Services, SQL Database, SQL Managed Instance, HDInsight, App Service (Basic, Standard, Premium v2, Premium v3), and Logic Apps, which are commonly used in development and testing scenarios.
- Additional savings with Reservations for a one-year or three-year commitment on VMs, Azure SQL Database, and Azure SQL Managed Instance.
- Isolated Environment: Azure Dev/Test subscriptions create an environment separate from production. This isolation helps in ensuring that development and testing activities do not interfere with production workloads, maintaining the integrity and performance of the production environment.
- No additional charge for software through your Visual Studio subscription: The Visual Studio subscription software that you run for development and testing on Azure Virtual Machines, such as Windows Server and SQL Server, is available at no additional charge. Also, with your subscription, you may use preconfigured virtual machine images, such as SQL Server and BizTalk Server, without incurring software charges.
- No separate payment: just use the funds already on your Enterprise Agreement
Once again, the Dev/Test Subscription is exclusively for the development and testing of your applications (non-production environments), and it doesn’t have the same SLA as a “regular” subscription.
Here are some price comparisons between Pay-as-you-go and Dev/Test pricing:
- Same Azure SQL Database configuration:
- Monthly: US$1,338.20 – Dev/Test Pricing
- Monthly: US$2,213.91 – Pay-as-you-go
- Same Virtual Machine configuration:
- Monthly: US$70.08 – Dev/Test Pricing
- Monthly: US$137.24 – Pay-as-you-go
- Same App Service configuration:
- Monthly: US$111.54 – Dev/Test Pricing
- Monthly: US$310.98 – Pay-as-you-go
Read more: Azure App Service Pricing Details
And many more. Of course, not everything is great. Unfortunately, many services like Service Bus or, most likely, all premium services have the same costs. If we check the Azure Integration Services, except Logic Apps and API Management that has a developer tier, the cost will be the same:
Nevertheless, the use of an Azure Dev/Test Subscription is a good strategy to save some costs.
I hope you enjoy this cost reduction tip, and stay tuned for more content.