Skip to content

Commit ab0025b

Browse files
authored
Merge pull request #101464 from tfitzmac/0116fix
changed terms
2 parents 55c6312 + a6ec808 commit ab0025b

File tree

1 file changed

+27
-25
lines changed

1 file changed

+27
-25
lines changed

articles/azure-resource-manager/management/deployment-models.md

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,15 @@ ms.date: 08/22/2019
99
> [!NOTE]
1010
> The information provided in this article is only used when you migrate from the classic deployment to the Azure Resource Manager deployment.
1111
12-
In this article, you learn about Azure Resource Manager and classic deployment models. The Resource Manager and classic deployment models represent two different ways of deploying and managing your Azure solutions. You work with them through two different API sets, and the deployed resources can contain important differences. The two models are not compatible with each other. This article describes those differences.
12+
In this article, you learn about Azure Resource Manager and classic deployment models. The Resource Manager and classic deployment models represent two different ways of deploying and managing your Azure solutions. You work with them through two different API sets, and the deployed resources can contain important differences. The two models aren't compatible with each other. This article describes those differences.
1313

1414
To simplify the deployment and management of resources, Microsoft recommends that you use Resource Manager for all new resources. If possible, Microsoft recommends that you redeploy existing resources through Resource Manager.
1515

16-
If you are new to Resource Manager, you may want to first review the terminology defined in the [Azure Resource Manager overview](overview.md).
17-
18-
[!INCLUDE [updated-for-az](../../../includes/updated-for-az.md)]
16+
If you're new to Resource Manager, you may want to first review the terminology defined in the [Azure Resource Manager overview](overview.md).
1917

2018
## History of the deployment models
21-
Azure originally provided only the classic deployment model. In this model, each resource existed independently; there was no way to group related resources together. Instead, you had to manually track which resources made up your solution or application, and remember to manage them in a coordinated approach. To deploy a solution, you had to either create each resource individually through the portal or create a script that deployed all the resources in the correct order. To delete a solution, you had to delete each resource individually. You could not easily apply and update access control policies for related resources. Finally, you could not apply tags to resources to label them with terms that help you monitor your resources and manage billing.
19+
20+
Azure originally provided only the classic deployment model. In this model, each resource existed independently; there was no way to group related resources together. Instead, you had to manually track which resources made up your solution or application, and remember to manage them in a coordinated approach. To deploy a solution, you had to either create each resource individually through the portal or create a script that deployed all the resources in the correct order. To delete a solution, you had to delete each resource individually. You couldn't easily apply and update access control policies for related resources. Finally, you couldn't apply tags to resources to label them with terms that help you monitor your resources and manage billing.
2221

2322
In 2014, Azure introduced Resource Manager, which added the concept of a resource group. A resource group is a container for resources that share a common lifecycle. The Resource Manager deployment model provides several benefits:
2423

@@ -27,21 +26,21 @@ In 2014, Azure introduced Resource Manager, which added the concept of a resourc
2726
* You can apply access control to all resources in your resource group, and those policies are automatically applied when new resources are added to the resource group.
2827
* You can apply tags to resources to logically organize all the resources in your subscription.
2928
* You can use JavaScript Object Notation (JSON) to define the infrastructure for your solution. The JSON file is known as a Resource Manager template.
30-
* You can define the dependencies between resources so they are deployed in the correct order.
29+
* You can define the dependencies between resources so they're deployed in the correct order.
3130

32-
When Resource Manager was added, all resources were retroactively added to default resource groups. If you create a resource through classic deployment now, the resource is automatically created within a default resource group for that service, even though you did not specify that resource group at deployment. However, just existing within a resource group does not mean that the resource has been converted to the Resource Manager model.
31+
When Resource Manager was added, all resources were retroactively added to default resource groups. If you create a resource through classic deployment now, the resource is automatically created within a default resource group for that service, even though you didn't specify that resource group at deployment. However, just existing within a resource group doesn't mean that the resource has been converted to the Resource Manager model.
3332

3433
## Understand support for the models
3534

3635
There are three scenarios to be aware of:
3736

38-
1. Cloud Services does not support Resource Manager deployment model.
37+
1. Cloud Services doesn't support Resource Manager deployment model.
3938
2. Virtual machines, storage accounts, and virtual networks support both Resource Manager and classic deployment models.
4039
3. All other Azure services support Resource Manager.
4140

42-
For virtual machines, storage accounts, and virtual networks, if the resource was created through classic deployment, you must continue to operate on it through classic operations. If the virtual machine, storage account, or virtual network was created through Resource Manager deployment, you must continue using Resource Manager operations. This distinction can get confusing when your subscription contains a mix of resources created through Resource Manager and classic deployment. This combination of resources can create unexpected results because the resources do not support the same operations.
41+
For virtual machines, storage accounts, and virtual networks, if the resource was created through classic deployment, you must continue to operate on it through classic operations. If the virtual machine, storage account, or virtual network was created through Resource Manager deployment, you must continue using Resource Manager operations. This distinction can get confusing when your subscription contains a mix of resources created through Resource Manager and classic deployment. This combination of resources can create unexpected results because the resources don't support the same operations.
4342

44-
In some cases, a Resource Manager command can retrieve information about a resource created through classic deployment, or can perform an administrative task such as moving a classic resource to another resource group. But, these cases should not give the impression that the type supports Resource Manager operations. For example, suppose you have a resource group that contains a virtual machine that was created with classic deployment. If you run the following Resource Manager PowerShell command:
43+
In some cases, a Resource Manager command can retrieve information about a resource created through classic deployment, or can perform an administrative task such as moving a classic resource to another resource group. But, these cases shouldn't give the impression that the type supports Resource Manager operations. For example, suppose you have a resource group that contains a virtual machine that was created with classic deployment. If you run the following Resource Manager PowerShell command:
4544

4645
```powershell
4746
Get-AzResource -ResourceGroupName ExampleGroup -ResourceType Microsoft.ClassicCompute/virtualMachines
@@ -59,15 +58,16 @@ Location : westus
5958
SubscriptionId : {guid}
6059
```
6160

62-
However, the Resource Manager cmdlet **Get-AzVM** only returns virtual machines deployed through Resource Manager. The following command does not return the virtual machine created through classic deployment.
61+
However, the Resource Manager cmdlet **Get-AzVM** only returns virtual machines deployed through Resource Manager. The following command doesn't return the virtual machine created through classic deployment.
6362

6463
```powershell
6564
Get-AzVM -ResourceGroupName ExampleGroup
6665
```
6766

68-
Only resources created through Resource Manager support tags. You cannot apply tags to classic resources.
67+
Only resources created through Resource Manager support tags. You can't apply tags to classic resources.
6968

7069
## Changes for compute, network, and storage
70+
7171
The following diagram displays compute, network, and storage resources deployed through Resource Manager.
7272

7373
![Resource Manager architecture](./media/deployment-models/arm_arch3.png)
@@ -76,56 +76,58 @@ Note the following relationships between the resources:
7676

7777
* All the resources exist within a resource group.
7878
* The virtual machine depends on a specific storage account defined in the Storage resource provider to store its disks in blob storage (required).
79-
* The virtual machine references a specific NIC defined in the Network resource provider (required) and an availability set defined in the Compute resource provider (optional).
80-
* The NIC references the virtual machine's assigned IP address (required), the subnet of the virtual network for the virtual machine (required), and to a Network Security Group (optional).
79+
* The virtual machine references a specific network interface card defined in the Network resource provider (required) and an availability set defined in the Compute resource provider (optional).
80+
* The network interface card references the virtual machine's assigned IP address (required), the subnet of the virtual network for the virtual machine (required), and to a Network Security Group (optional).
8181
* The subnet within a virtual network references a Network Security Group (optional).
82-
* The load balancer instance references the backend pool of IP addresses that include the NIC of a virtual machine (optional) and references a load balancer public or private IP address (optional).
82+
* The load balancer instance references the backend pool of IP addresses that include the network interface card of a virtual machine (optional) and references a load balancer public or private IP address (optional).
8383

8484
Here are the components and their relationships for classic deployment:
8585

8686
![classic architecture](./media/deployment-models/arm_arch1.png)
8787

8888
The classic solution for hosting a virtual machine includes:
8989

90-
* A required cloud service that acts as a container for hosting virtual machines (compute). Virtual machines are automatically provided with a network interface card (NIC) and an IP address assigned by Azure. Additionally, the cloud service contains an external load balancer instance, a public IP address, and default endpoints to allow remote desktop and remote PowerShell traffic for Windows-based virtual machines and Secure Shell (SSH) traffic for Linux-based virtual machines.
91-
* A required storage account that stores the VHDs for a virtual machine, including the operating system, temporary, and additional data disks (storage).
92-
* An optional virtual network that acts as an additional container, in which you can create a subnetted structure and designate the subnet on which the virtual machine is located (network).
90+
* A required cloud service that acts as a container for hosting virtual machines (compute). Virtual machines are automatically provided with a network interface card and an IP address assigned by Azure. Additionally, the cloud service contains an external load balancer instance, a public IP address, and default endpoints to allow remote desktop and remote PowerShell traffic for Windows-based virtual machines and Secure Shell (SSH) traffic for Linux-based virtual machines.
91+
* A required storage account that stores the virtual hard disks for a virtual machine, including the operating system, temporary, and additional data disks (storage).
92+
* An optional virtual network that acts as an additional container, in which you can create a subnetted structure and choose the subnet on which the virtual machine is located (network).
9393

9494
The following table describes changes in how Compute, Network, and Storage resource providers interact:
9595

9696
| Item | Classic | Resource Manager |
9797
| --- | --- | --- |
9898
| Cloud Service for Virtual Machines |Cloud Service was a container for holding the virtual machines that required Availability from the platform and Load Balancing. |Cloud Service is no longer an object required for creating a Virtual Machine using the new model. |
99-
| Virtual Networks |A virtual network is optional for the virtual machine. If included, the virtual network cannot be deployed with Resource Manager. |Virtual machine requires a virtual network that has been deployed with Resource Manager. |
100-
| Storage Accounts |The virtual machine requires a storage account that stores the VHDs for the operating system, temporary, and additional data disks. |The virtual machine requires a storage account to store its disks in blob storage. |
99+
| Virtual Networks |A virtual network is optional for the virtual machine. If included, the virtual network can't be deployed with Resource Manager. |Virtual machine requires a virtual network that has been deployed with Resource Manager. |
100+
| Storage Accounts |The virtual machine requires a storage account that stores the virtual hard disks for the operating system, temporary, and additional data disks. |The virtual machine requires a storage account to store its disks in blob storage. |
101101
| Availability Sets |Availability to the platform was indicated by configuring the same “AvailabilitySetName” on the Virtual Machines. The maximum count of fault domains was 2. |Availability Set is a resource exposed by Microsoft.Compute Provider. Virtual Machines that require high availability must be included in the Availability Set. The maximum count of fault domains is now 3. |
102-
| Affinity Groups |Affinity Groups were required for creating Virtual Networks. However, with the introduction of Regional Virtual Networks, that was not required anymore. |To simplify, the Affinity Groups concept doesn’t exist in the APIs exposed through Azure Resource Manager. |
102+
| Affinity Groups |Affinity Groups were required for creating Virtual Networks. However, with the introduction of Regional Virtual Networks, that wasn't required anymore. |To simplify, the Affinity Groups concept doesn’t exist in the APIs exposed through Azure Resource Manager. |
103103
| Load Balancing |Creation of a Cloud Service provides an implicit load balancer for the Virtual Machines deployed. |The Load Balancer is a resource exposed by the Microsoft.Network provider. The primary network interface of the Virtual Machines that needs to be load balanced should be referencing the load balancer. Load Balancers can be internal or external. A load balancer instance references the backend pool of IP addresses that include the NIC of a virtual machine (optional) and references a load balancer public or private IP address (optional). |
104104
| Virtual IP Address |Cloud Services gets a default VIP (Virtual IP Address) when a VM is added to a cloud service. The Virtual IP Address is the address associated with the implicit load balancer. |Public IP address is a resource exposed by the Microsoft.Network provider. Public IP address can be static (reserved) or dynamic. Dynamic public IPs can be assigned to a Load Balancer. Public IPs can be secured using Security Groups. |
105105
| Reserved IP Address |You can reserve an IP Address in Azure and associate it with a Cloud Service to ensure that the IP Address is sticky. |Public IP Address can be created in static mode and it offers the same capability as a reserved IP address. |
106106
| Public IP Address (PIP) per VM |Public IP Addresses can also be associated to a VM directly. |Public IP address is a resource exposed by the Microsoft.Network provider. Public IP Address can be static (reserved) or dynamic. |
107107
| Endpoints |Input Endpoints needed to be configured on a Virtual Machine to be open up connectivity for certain ports. One of the common modes of connecting to virtual machines done by setting up input endpoints. |Inbound NAT Rules can be configured on Load Balancers to achieve the same capability of enabling endpoints on specific ports for connecting to the VMs. |
108108
| DNS Name |A cloud service would get an implicit globally unique DNS Name. For example: `mycoffeeshop.cloudapp.net`. |DNS Names are optional parameters that can be specified on a Public IP Address resource. The FQDN is in the following format - `<domainlabel>.<region>.cloudapp.azure.com`. |
109-
| Network Interfaces |Primary and Secondary Network Interface and its properties were defined as network configuration of a Virtual machine. |Network Interface is a resource exposed by Microsoft.Network Provider. The lifecycle of the Network Interface is not tied to a Virtual Machine. It references the virtual machine's assigned IP address (required), the subnet of the virtual network for the virtual machine (required), and to a Network Security Group (optional). |
109+
| Network Interfaces |Primary and Secondary Network Interface and its properties were defined as network configuration of a Virtual machine. |Network Interface is a resource exposed by Microsoft.Network Provider. The lifecycle of the Network Interface isn't tied to a Virtual Machine. It references the virtual machine's assigned IP address (required), the subnet of the virtual network for the virtual machine (required), and to a Network Security Group (optional). |
110110

111111
To learn about connecting virtual networks from different deployment models, see [Connect virtual networks from different deployment models in the portal](../../vpn-gateway/vpn-gateway-connect-different-deployment-models-portal.md).
112112

113113
## Migrate from classic to Resource Manager
114-
If you are ready to migrate your resources from classic deployment to Resource Manager deployment, see:
114+
115+
If you're ready to migrate your resources from classic deployment to Resource Manager deployment, see:
115116

116117
1. [Technical deep dive on platform-supported migration from classic to Azure Resource Manager](../../virtual-machines/windows/migration-classic-resource-manager-deep-dive.md)
117118
2. [Platform supported migration of IaaS resources from Classic to Azure Resource Manager](../../virtual-machines/windows/migration-classic-resource-manager-overview.md)
118119
3. [Migrate IaaS resources from classic to Azure Resource Manager by using Azure PowerShell](../../virtual-machines/windows/migration-classic-resource-manager-ps.md)
119120
4. [Migrate IaaS resources from classic to Azure Resource Manager by using Azure CLI](../../virtual-machines/virtual-machines-linux-cli-migration-classic-resource-manager.md)
120121

121122
## Frequently asked questions
123+
122124
**Can I create a virtual machine using Resource Manager to deploy in a virtual network created using classic deployment?**
123125

124-
This configuration is not supported. You cannot use Resource Manager to deploy a virtual machine into a virtual network that was created using classic deployment.
126+
This configuration isn't supported. You can't use Resource Manager to deploy a virtual machine into a virtual network that was created using classic deployment.
125127

126128
**Can I create a virtual machine using Resource Manager from a user image that was created using the classic deployment model?**
127129

128-
This configuration is not supported. However, you can copy the VHD files from a storage account that was created using the classic deployment model, and add them to a new account created through Resource Manager.
130+
This configuration isn't supported. However, you can copy the virtual hard disk files from a storage account that was created using the classic deployment model, and add them to a new account created through Resource Manager.
129131

130132
**What is the impact on the quota for my subscription?**
131133

0 commit comments

Comments
 (0)