Implementación mediante Azure Resource Manager frente a la implementación clásica: Conozca los modelos de implementación y el estado de los recursosAzure Resource Manager vs. classic deployment: Understand deployment models and the state of your resources

Nota

La información que se proporciona en este artículo se usa solo cuando se migra desde la implementación clásica a la implementación mediante Azure Resource Manager.The information provided in this article is only used when you migrate from the classic deployment to the Azure Resource Manager deployment.

En este artículo aprenderá sobre Azure Resource Manager y los modelos de implementación clásicos.In this article, you learn about Azure Resource Manager and classic deployment models. El modelo de implementación de Resource Manager y el modelo de implementación clásica representan dos formas diferentes de implementar y administrar las soluciones de Azure.The Resource Manager and classic deployment models represent two different ways of deploying and managing your Azure solutions. Usted trabaja con ellos a través de dos conjuntos de API distintos y los recursos implementados pueden contener diferencias importantes.You work with them through two different API sets, and the deployed resources can contain important differences. Los dos modelos no son compatibles entre sí.The two models are not compatible with each other. En este artículo se describen esas diferencias.This article describes those differences.

Para simplificar la implementación y administración de recursos, Microsoft recomienda que utilice Resource Manager para los nuevos recursos.To simplify the deployment and management of resources, Microsoft recommends that you use Resource Manager for all new resources. Si es posible, Microsoft recomienda que vuelva a implementar los recursos existentes a través de Resource Manager.If possible, Microsoft recommends that you redeploy existing resources through Resource Manager.

Si no está familiarizado con Resource Manager, quizás quiera revisar primero la terminología definida en la Información general de Azure Resource Manager.If you are new to Resource Manager, you may want to first review the terminology defined in the Azure Resource Manager overview.

Nota

Este artículo se ha actualizado para usar el nuevo módulo Az de Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Aún puede usar el módulo de AzureRM que continuará recibiendo correcciones de errores hasta diciembre de 2020 como mínimo.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Para más información acerca del nuevo módulo Az y la compatibilidad con AzureRM, consulte Introducing the new Azure PowerShell Az module (Presentación del nuevo módulo Az de Azure PowerShell).To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Para obtener instrucciones sobre la instalación del módulo Az, consulte Instalación de Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Historia de los modelos de implementaciónHistory of the deployment models

Originalmente, Azure solo proporcionaba el modelo de implementación clásica.Azure originally provided only the classic deployment model. En este modelo, cada recurso existía de forma independiente; no había manera de agrupar los recursos relacionados.In this model, each resource existed independently; there was no way to group related resources together. En su lugar, debía realizarse un seguimiento manual de los recursos que componían la solución o aplicación, y acordarse de administrarlos de manera coordinada.Instead, you had to manually track which resources made up your solution or application, and remember to manage them in a coordinated approach. Para implementar una solución, había que crear cada recurso individualmente mediante el portal o crear un script que implementara todos los recursos en el orden correcto.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. Para eliminar una solución, tenía que eliminar cada recurso individualmente.To delete a solution, you had to delete each resource individually. No se podía aplicar ni actualizar fácilmente las directivas de control de acceso para los recursos relacionados.You could not easily apply and update access control policies for related resources. Por último, no podía aplicar etiquetas a los recursos para etiquetarlos con términos que le ayudaran a supervisar los recursos y administrar la facturación.Finally, you could not apply tags to resources to label them with terms that help you monitor your resources and manage billing.

En 2014, Azure presentó Resource Manager, que incorpora el concepto de un grupo de recursos.In 2014, Azure introduced Resource Manager, which added the concept of a resource group. Un grupo de recursos es un contenedor para los recursos que comparten un ciclo de vida común.A resource group is a container for resources that share a common lifecycle. El modelo de implementación de Resource Manager ofrece varias ventajas:The Resource Manager deployment model provides several benefits:

  • Puede implementar, administrar y supervisar todos los servicios para su solución como grupo, en lugar de controlar estos servicios individualmente.You can deploy, manage, and monitor all the services for your solution as a group, rather than handling these services individually.
  • Puede implementar la solución repetidamente a lo largo del ciclo de vida y tener la seguridad de que los recursos se implementan de forma coherente.You can repeatedly deploy your solution throughout its lifecycle and have confidence your resources are deployed in a consistent state.
  • Puede aplicar control de acceso a todos los recursos del grupo de recursos y las directivas se aplican automáticamente cuando se agregan nuevos recursos al grupo de recursos.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.
  • Puede aplicar etiquetas a los recursos para organizar de manera lógica todos los recursos de la suscripción.You can apply tags to resources to logically organize all the resources in your subscription.
  • Puede usar la notación de objetos JavaScript (JSON) para definir la infraestructura de la solución.You can use JavaScript Object Notation (JSON) to define the infrastructure for your solution. El archivo JSON se conoce como una plantilla de Resource Manager.The JSON file is known as a Resource Manager template.
  • Puede definir las dependencias entre recursos de modo que se implementen en el orden correcto.You can define the dependencies between resources so they are deployed in the correct order.

Al agregarse el Administrador de recursos, todos los recursos se agregaron retroactivamente a los grupos de recursos predeterminados.When Resource Manager was added, all resources were retroactively added to default resource groups. Si ahora crea un recurso a través de la implementación clásica, el recurso se crea automáticamente dentro de un grupo de recursos predeterminado para el servicio, aunque no se especifique dicho grupo de recursos durante la implementación.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. Sin embargo, solo el hecho de existir dentro de un grupo de recursos no significa que el recurso se haya convertido al modelo del Administrador de recursos.However, just existing within a resource group does not mean that the resource has been converted to the Resource Manager model.

Descripción de la compatibilidad para los modelosUnderstand support for the models

Hay tres escenarios principales que se han de tener en cuenta:There are three scenarios to be aware of:

  1. Cloud Services no es compatible con el modelo de implementación de Resource Manager.Cloud Services does not support Resource Manager deployment model.
  2. Las máquinas virtuales, las cuentas de almacenamiento y las redes virtuales son compatibles con Resource Manager y los modelos de implementación clásicos.Virtual machines, storage accounts, and virtual networks support both Resource Manager and classic deployment models.
  3. Todos los demás servicios de Azure admiten Resource Manager.All other Azure services support Resource Manager.

En el caso de las máquinas virtuales, las cuentas de almacenamiento y las redes virtuales, si el recurso se creó mediante la implementación clásica, debe continuar trabajando en él mediante las operaciones clásicas.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. Si la máquina virtual, la cuenta de almacenamiento o la red virtual se crearon con la implementación de Resource Manager, debe continuar usando operaciones de Resource Manager.If the virtual machine, storage account, or virtual network was created through Resource Manager deployment, you must continue using Resource Manager operations. Esta distinción puede resultar confusa cuando la suscripción contiene una combinación de los recursos creados mediante Resource Manager y la implementación clásica.This distinction can get confusing when your subscription contains a mix of resources created through Resource Manager and classic deployment. Esta combinación de recursos puede crear resultados inesperados porque los recursos no son compatibles con las mismas operaciones.This combination of resources can create unexpected results because the resources do not support the same operations.

En algunos casos, un comando de Resource Manager puede recuperar información sobre un recurso creado mediante la implementación clásica, o puede realizar tareas administrativas tales como mover un recurso clásico a otro grupo de recursos.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. Sin embargo, estos casos no deben dar la impresión de que el tipo es compatible con las operaciones de Resource Manager.But, these cases should not give the impression that the type supports Resource Manager operations. Por ejemplo, supongamos que tiene un grupo de recursos que contiene una máquina virtual creada con la implementación clásica.For example, suppose you have a resource group that contains a virtual machine that was created with classic deployment. Si ejecuta el siguiente comando de PowerShell para Resource Manager:If you run the following Resource Manager PowerShell command:

Get-AzResource -ResourceGroupName ExampleGroup -ResourceType Microsoft.ClassicCompute/virtualMachines

Devuelve la máquina virtual:It returns the virtual machine:

Name              : ExampleClassicVM
ResourceId        : /subscriptions/{guid}/resourceGroups/ExampleGroup/providers/Microsoft.ClassicCompute/virtualMachines/ExampleClassicVM
ResourceName      : ExampleClassicVM
ResourceType      : Microsoft.ClassicCompute/virtualMachines
ResourceGroupName : ExampleGroup
Location          : westus
SubscriptionId    : {guid}

Sin embargo, el cmdlet Get-AzVM de Resource Manager solo devuelve las máquinas virtuales implementadas mediante Resource Manager.However, the Resource Manager cmdlet Get-AzVM only returns virtual machines deployed through Resource Manager. El siguiente comando no devuelve la máquina virtual creada mediante la implementación clásica.The following command does not return the virtual machine created through classic deployment.

Get-AzVM -ResourceGroupName ExampleGroup

Solo los recursos creados a través del Administrador de recursos son compatibles con las etiquetas.Only resources created through Resource Manager support tags. No puede aplicar etiquetas a los recursos clásicos.You cannot apply tags to classic resources.

Cambios de proceso, red y almacenamientoChanges for compute, network, and storage

En el siguiente diagrama se muestran los recursos de proceso, red y almacenamiento implementados a través de Resource Manager.The following diagram displays compute, network, and storage resources deployed through Resource Manager.

Arquitectura de Resource Manager

Tenga en cuenta las siguientes relaciones entre los recursos:Note the following relationships between the resources:

  • Todos los recursos existen dentro de un grupo de recursos.All the resources exist within a resource group.
  • La máquina virtual depende de una cuenta de almacenamiento específica definida en el proveedor de recursos de almacenamiento para almacenar sus discos en Blob Storage (obligatorio).The virtual machine depends on a specific storage account defined in the Storage resource provider to store its disks in blob storage (required).
  • La máquina virtual hace referencia a una NIC específica definida en el proveedor de recursos de red (obligatorio) y un conjunto de disponibilidad definido en el proveedor de recursos de proceso (opcional).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).
  • La NIC hace referencia a la dirección IP asignada a la máquina virtual (obligatoria), la subred de la red virtual para la máquina virtual (obligatoria) y a un grupo de seguridad de red (opcional).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).
  • La subred dentro de una red virtual hace referencia a un grupo de seguridad de red (opcional).The subnet within a virtual network references a Network Security Group (optional).
  • La instancia de equilibrador de carga hace referencia al grupo de backend de direcciones IP que incluye la NIC de una máquina virtual (opcional) y hace referencia a una dirección IP pública o privada del equilibrador de carga (opcional).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).

Aquí se encuentran los componentes y sus relaciones para la implementación clásica:Here are the components and their relationships for classic deployment:

arquitectura clásica

La solución clásica para hospedar una máquina virtual incluye:The classic solution for hosting a virtual machine includes:

  • Un servicio de nube requerido que actúa como contenedor para hospedar máquinas virtuales (cálculo).A required cloud service that acts as a container for hosting virtual machines (compute). Las máquinas virtuales se proporcionan automáticamente con una tarjeta de interfaz de red (NIC) y una dirección IP asignada por Azure.Virtual machines are automatically provided with a network interface card (NIC) and an IP address assigned by Azure. Además, el servicio de nube contiene una instancia de equilibrador de carga externa, una dirección IP pública y extremos predeterminados para permitir un escritorio remoto y tráfico de PowerShell remoto para máquinas virtuales basadas en Windows y tráfico de Secure Shell (SSH) para máquinas virtuales basadas en Linux.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.
  • Una cuenta de almacenamiento necesaria que almacena discos duros virtuales para una máquina virtual, incluido el sistema operativo, los discos de datos temporales y adicionales (almacenamiento).A required storage account that stores the VHDs for a virtual machine, including the operating system, temporary, and additional data disks (storage).
  • Una red virtual opcional que actúa como un contenedor adicional, en el que se puede crear una estructura de subredes y designar la subred en la que se encuentra la máquina virtual (red).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).

En la siguiente tabla se describen los cambios en la interacción de los proveedores de recursos de Compute, Network y Storage:The following table describes changes in how Compute, Network, and Storage resource providers interact:

itemItem ClásicoClassic Resource ManagerResource Manager
Servicio en la nube para máquinas virtualesCloud Service for Virtual Machines El servicio en la nube es un contenedor para las máquinas virtuales que exige la disponibilidad de la plataforma y el equilibrio de carga.Cloud Service was a container for holding the virtual machines that required Availability from the platform and Load Balancing. El servicio en la nube ya no es un objeto necesario para crear una máquina virtual usando el nuevo modelo.Cloud Service is no longer an object required for creating a Virtual Machine using the new model.
Virtual NetworksVirtual Networks Una red virtual es opcional para la máquina virtual.A virtual network is optional for the virtual machine. En caso de incluirse, la red virtual no puede implementarse con Resource Manager.If included, the virtual network cannot be deployed with Resource Manager. La máquina virtual requiere una red virtual que se ha implementado con Resource Manager.Virtual machine requires a virtual network that has been deployed with Resource Manager.
Cuentas de almacenamientoStorage Accounts La máquina virtual requiere una cuenta de almacenamiento que almacena los discos duros virtuales para los discos de datos del sistema operativo, temporales y adicionales.The virtual machine requires a storage account that stores the VHDs for the operating system, temporary, and additional data disks. La máquina virtual requiere una cuenta de almacenamiento para almacenar sus discos en Blob Storage.The virtual machine requires a storage account to store its disks in blob storage.
Conjuntos de disponibilidadAvailability Sets La disponibilidad en la plataforma se ha indicado mediante la configuración del mismo "AvailabilitySetName" en las máquinas virtuales.Availability to the platform was indicated by configuring the same “AvailabilitySetName” on the Virtual Machines. El número máximo de dominios con error era de 2.The maximum count of fault domains was 2. Un conjunto de disponibilidad es un recurso expuesto por el proveedor de Microsoft.Compute.Availability Set is a resource exposed by Microsoft.Compute Provider. Las máquinas virtuales que requieren alta disponibilidad deben incluirse en el conjunto de disponibilidad.Virtual Machines that require high availability must be included in the Availability Set. Ahora, el recuento máximo de dominios con error es de 3.The maximum count of fault domains is now 3.
Grupos de afinidadAffinity Groups Los grupos de afinidad eran necesarios para crear redes virtuales.Affinity Groups were required for creating Virtual Networks. Sin embargo, con la introducción de las redes virtuales regionales, ya no era necesario.However, with the introduction of Regional Virtual Networks, that was not required anymore. Para simplificar, no existe el concepto de grupos de afinidad en las API expuestas a través del Administrador de recursos de Azure.To simplify, the Affinity Groups concept doesn’t exist in the APIs exposed through Azure Resource Manager.
Equilibrio de cargaLoad Balancing La creación de un servicio en la nube proporciona un equilibrador de carga implícito para las máquinas virtuales implementadas.Creation of a Cloud Service provides an implicit load balancer for the Virtual Machines deployed. El equilibrador de carga es un recurso expuesto por el proveedor de Microsoft.Network.The Load Balancer is a resource exposed by the Microsoft.Network provider. La interfaz de red principal de las máquinas virtuales cuya carga se debe equilibrar debe hacer referencia al equilibrador de carga.The primary network interface of the Virtual Machines that needs to be load balanced should be referencing the load balancer. Los equilibradores de carga pueden ser internos o externos.Load Balancers can be internal or external. Una instancia de equilibrador de carga hace referencia al grupo de backend de direcciones IP que incluye la NIC de una máquina virtual (opcional) y hace referencia a una dirección IP pública o privada del equilibrador de carga (opcional).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).
Dirección IP virtualVirtual IP Address Cloud Services obtiene una VIP (dirección IP virtual) predeterminada cuando se agrega una máquina virtual a un servicio en la nube.Cloud Services gets a default VIP (Virtual IP Address) when a VM is added to a cloud service. La dirección IP virtual es la dirección asociada al equilibrador de carga implícito.The Virtual IP Address is the address associated with the implicit load balancer. La dirección IP pública es un recurso expuesto por el proveedor de Microsoft.Network.Public IP address is a resource exposed by the Microsoft.Network provider. La dirección IP pública puede ser estática (reservada) o dinámica.Public IP address can be static (reserved) or dynamic. Las direcciones IP públicas dinámicas pueden asignarse a un equilibrador de carga.Dynamic public IPs can be assigned to a Load Balancer. Las direcciones IP públicas se pueden proteger mediante grupos de seguridad.Public IPs can be secured using Security Groups.
Dirección IP reservadaReserved IP Address Puede reservar una dirección IP en Azure y asociarlo a un servicio en la nube para asegurarse de que la dirección IP es permanente.You can reserve an IP Address in Azure and associate it with a Cloud Service to ensure that the IP Address is sticky. La dirección IP pública puede crearse en modo "Estático" y ofrece la misma capacidad que una "dirección IP reservada".Public IP Address can be created in static mode and it offers the same capability as a reserved IP address.
Dirección IP pública (PIP) por máquina virtualPublic IP Address (PIP) per VM Las direcciones IP públicas también se pueden asociar directamente a una VM.Public IP Addresses can also be associated to a VM directly. La dirección IP pública es un recurso expuesto por el proveedor de Microsoft.Network.Public IP address is a resource exposed by the Microsoft.Network provider. La dirección IP pública puede ser estática (reservada) o dinámica.Public IP Address can be static (reserved) or dynamic.
Puntos de conexiónEndpoints Es necesario configurar los extremos de entrada en una máquina virtual para abrir la conectividad para determinados puertos.Input Endpoints needed to be configured on a Virtual Machine to be open up connectivity for certain ports. Uno de los modos comunes de conectarse a las máquinas virtuales es mediante la configuración de extremos de entrada.One of the common modes of connecting to virtual machines done by setting up input endpoints. Las reglas de entrada NAT se puede configurar en equilibradores de carga para lograr la misma capacidad de habilitar los extremos en puertos específicos para conectarse a las máquinas virtuales.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.
Nombre DNSDNS Name Un servicio en la nube obtendría un nombre de DNS único global implícito.A cloud service would get an implicit globally unique DNS Name. Por ejemplo: mycoffeeshop.cloudapp.net.For example: mycoffeeshop.cloudapp.net. Los nombres DNS son parámetros opcionales que se pueden especificar en un recurso de dirección IP pública.DNS Names are optional parameters that can be specified on a Public IP Address resource. El nombre de dominio completo tiene el siguiente formato: <domainlabel>.<region>.cloudapp.azure.com.The FQDN is in the following format - <domainlabel>.<region>.cloudapp.azure.com.
Interfaces de redNetwork Interfaces La interfaz de red principal y secundaria y sus propiedades se definieron como configuración de red de una máquina virtual.Primary and Secondary Network Interface and its properties were defined as network configuration of a Virtual machine. La interfaz de red es un recurso expuesto por el proveedor de Microsoft.Network.Network Interface is a resource exposed by Microsoft.Network Provider. El ciclo de vida de la interfaz de red no está asociado a una máquina virtual.The lifecycle of the Network Interface is not tied to a Virtual Machine. Hace referencia a la dirección IP asignada a la máquina virtual (obligatoria), la subred de la red virtual para la máquina virtual (obligatoria) y a un grupo de seguridad de red (opcional).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).

Para obtener información sobre cómo conectar redes virtuales de diferentes modelos de implementación, consulte Conexión a redes virtuales a partir de diferentes modelos de implementación del portal.To learn about connecting virtual networks from different deployment models, see Connect virtual networks from different deployment models in the portal.

Migración de implementaciones clásicas a Resource ManagerMigrate from classic to Resource Manager

Si está listo para migrar los recursos de la implementación clásica a la implementación de Resource Manager, consulte:If you are ready to migrate your resources from classic deployment to Resource Manager deployment, see:

  1. Profundización técnica en la migración compatible con la plataforma de la implementación clásica a la de Azure Resource ManagerTechnical deep dive on platform-supported migration from classic to Azure Resource Manager
  2. Migración compatible con la plataforma de recursos de IaaS del modelo clásico a Azure Resource ManagerPlatform supported migration of IaaS resources from Classic to Azure Resource Manager
  3. Migración de recursos de IaaS de la implementación clásica a la de Resource Manager con Azure PowerShellMigrate IaaS resources from classic to Azure Resource Manager by using Azure PowerShell
  4. Migración de recursos de IaaS de la implementación clásica a Azure Resource Manager con la CLI de AzureMigrate IaaS resources from classic to Azure Resource Manager by using Azure CLI

Preguntas más frecuentesFrequently asked questions

¿Puedo crear una máquina virtual mediante Resource Manager para implementar en una red virtual creada mediante la implementación clásica?Can I create a virtual machine using Resource Manager to deploy in a virtual network created using classic deployment?

Esta configuración no es compatible.This configuration is not supported. No se puede usar Resource Manager para implementar una máquina virtual en una red virtual que se creó con la implementación clásica.You cannot use Resource Manager to deploy a virtual machine into a virtual network that was created using classic deployment.

¿Puedo crear una máquina virtual mediante Resource Manager desde una imagen de usuario que se creó utilizando el modelo de implementación clásico?Can I create a virtual machine using Resource Manager from a user image that was created using the classic deployment model?

Esta configuración no es compatible.This configuration is not supported. Sin embargo, puede copiar los archivos VHD de una cuenta de almacenamiento que se creó mediante el modelo de implementación clásico y agregarlos a una cuenta nueva creada mediante Resource Manager.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.

¿Cuál es el impacto en la cuota de mi suscripción?What is the impact on the quota for my subscription?

Las cuotas de las máquinas virtuales, redes virtuales y cuentas de almacenamiento creadas mediante Azure Resource Manager son independientes de otras cuotas.The quotas for the virtual machines, virtual networks, and storage accounts created through the Azure Resource Manager are separate from other quotas. Cada suscripción obtiene cuotas para crear los recursos mediante las nuevas API.Each subscription gets quotas to create the resources using the new APIs. Puede leer más acerca de las cuotas adicionales aquí.You can read more about the additional quotas here.

¿Puedo continuar y usar mis scripts automatizados para aprovisionar máquinas virtuales, redes virtuales y cuentas de almacenamiento a través de las API de Resource Manager?Can I continue to use my automated scripts for provisioning virtual machines, virtual networks, and storage accounts through the Resource Manager APIs?

Toda la automatización y los scripts que ha creado continúan funcionando para las máquinas virtuales existentes, las redes virtuales se crean en el modo de administración de servicios de Azure.All the automation and scripts that you've built continue to work for the existing virtual machines, virtual networks created under the Azure Service Management mode. Sin embargo, los scripts deben actualizarse para utilizar el nuevo esquema para crear los mismos recursos a través del modo de Resource Manager.However, the scripts have to be updated to use the new schema for creating the same resources through the Resource Manager mode.

¿Dónde puedo encontrar ejemplos de plantillas del Administrador de recursos de Azure?Where can I find examples of Azure Resource Manager templates?

Puede encontrar un conjunto completo de plantillas de inicio en Plantillas de inicio rápido de Azure Resource Manager.A comprehensive set of starter templates can be found on Azure Resource Manager Quickstart Templates.

Pasos siguientesNext steps