Compartir a través de


Fiabilidad en Virtual Machine Scale Sets

Este artículo contiene información sobre la compatibilidad de zonas de disponibilidadcon Virtual Machine Scale Sets.

Nota

Los conjuntos de escalado de máquinas virtuales (Virtual Machine Scale Sets) solo se pueden implementar en una región. Si desea implementar máquinas virtuales en varias regiones, consulte Virtual Machines - Compatibilidad con varias regiones.

Compatibilidad con zonas de disponibilidad

Las zonas de disponibilidad son grupos físicamente independientes de centros de datos dentro de una región de Azure. Cuando se produce un error en una zona, los servicios pueden conmutar por error a una de las zonas restantes.

Con Azure Virtual Machine Scale Sets, puede crear y administrar un grupo de máquinas virtuales (VMs) con equilibrio de carga. El número de máquinas virtuales (VMs) puede aumentar o disminuir automáticamente según la demanda, o de acuerdo a una programación definida. Los conjuntos de escalado proporcionan una alta disponibilidad a las aplicaciones y le permiten administrar, configurar y actualizar de forma centralizada muchas máquinas virtuales (VMs). No hay ningún costo para el propio conjunto de escalado. Solo se paga por cada instancia de máquina virtual creada.

Virtual Machine Scale Sets admite implementaciones zonales y con redundancia de zona dentro de una región:

  • Implementaciones zonal. Cuando se crea un conjunto de escalado en una sola zona, se controla en qué zona se ejecutan todas las máquinas virtuales (VMs) de ese conjunto. El conjunto de escalado se administra y se escala automáticamente solo dentro de esa zona.

  • Implementación con redundancia de zona. Un conjunto de escalado con redundancia de zona permite crear un conjunto de escalado único que abarque varias zonas. De manera predeterminada, a medida que se crean las máquinas virtuales (VMs), se equilibran uniformemente entre zonas.

Requisitos previos

  1. Para usar las Zonas de disponibilidad, el conjunto de escalado se debe crear en una Región de Azure compatible.

  2. Todas las máquinas virtuales, incluso las máquinas virtuales (VMs) de instancia única, deben implementarse en un conjunto de escalado mediante modo de orquestación flexible a prueba futura de la aplicación para el escalado y la disponibilidad.

Contrato de nivel de servicio

Dado que las zonas de disponibilidad son físicamente independientes y proporcionan fuentes de alimentación, red y refrigeración distintas, se aumentan los acuerdos de nivel de servicio (SLAs). Para obtener más información, consulte el Contrato de nivel de servicio de Microsoft Online Services (SLA).

Creación de un Virtual Machine Scale Set con zonas de disponibilidad habilitadas

Puede crear un conjunto de escalado que use las Zonas de disponibilidad con uno de los métodos siguientes:

El proceso para crear un conjunto de escalado que use una implementación zonal es igual que el que se detalla en el artículo de introducción. Cuando selecciona una región de Azure compatible, puede crear un conjunto de escalado en una o varias de las zonas disponibles, tal como se muestra en el ejemplo siguiente:

Creación de un conjunto de escalado en una sola zona de disponibilidad

El conjunto de escalado y los recursos auxiliares, como el equilibrador de carga de Azure y la dirección IP pública, se crean en la única zona que especifique.

Compatibilidad con la conmutación por error zonal

Los conjuntos de escalado de máquinas virtuales (Virtual Machine Scale Sets) se crean con cinco dominios de error de forma predeterminada en las regiones de Azure sin zonas. Para las regiones que admiten la implementación de zonas de disponibilidad de Virtual Machine Scale Sets y esta opción está seleccionada, el valor predeterminado del recuento de dominios de error es 1 para cada una de las zonas. En este caso, FD=1 implica que las instancias de VM que pertenecen al conjunto de escalado se distribuyen entre varios bastidores en función del mejor esfuerzo. A fin de obtener más información, consulte Elección del número correcto de dominios de error para el conjunto de escalado de máquinas virtuales.

Diseño de baja latencia

Se recomienda configurar Virtual Machine Scale Sets con redundancia de zona. Sin embargo, si la aplicación tiene requisitos estrictos de baja latencia, es posible que tenga que implementar una zonal para las máquinas virtuales (VMs) de los conjuntos de escalado. Con una implementación de conjuntos de escalado zonales, se recomienda crear varias máquinas virtuales (VMs) de conjuntos de escalado en más de una zona. Por ejemplo, puede crear una instancia de conjuntos de escalado anclada a la zona 1 y una instancia anclada a la zona 2 o 3. También debe usar un equilibrador de carga u otra lógica de aplicación para dirigir el tráfico a los conjuntos de escalado adecuados durante una interrupción de zona.

Importante

Si opta por no participar en la implementación con reconocimiento de zona, renuncia a la protección frente al aislamiento de errores subyacentes. La exclusión de la configuración de zona de disponibilidad fuerza la dependencia de los recursos que no obedezcan la ubicación y separación de zonas (incluidas las dependencias subyacentes de estos recursos). No se debe esperar que estos recursos sobrevivan a escenarios de zona inactiva. Las soluciones que aprovechan estos recursos deben definir una estrategia de recuperación ante desastres y configurar una recuperación de la solución en otra región.

Técnicas de implementación segura

Para tener más control sobre dónde se implementan las máquinas virtuales (VMs), debe implementar máquinas virtuales zonales, en lugar de máquinas virtuales regionales y de conjuntos de escalado. Sin embargo, las máquinas virtuales zonales (VMs) solo proporcionan aislamiento de zona y no redundancia de zona. Para lograr una redundancia de zona completa con máquinas virtuales zonales (VMs), debe haber dos o más máquinas virtuales en distintas zonas.

También se recomienda usar la opción de implementación de propagación máxima para las máquinas virtuales (VMs) con redundancia de zona. Para más información, consulte las opciones de propagación.

Opciones de propagación

Al implementar un conjunto de escalado en una o varias zonas de disponibilidad, tiene las siguientes opciones de propagación (a partir de la versión de API 2017-12-01):

  • Propagación máxima (platformFaultDomainCount = 1). La propagación máxima es la opción de implementación recomendada, ya que proporciona la mejor propagación en la mayoría de los casos. Si desea propagar réplicas en distintas unidades de aislamiento de hardware, se recomienda propagarlas en distintas zonas de disponibilidad y emplear la propagación máxima en cada una de ellas.

    Con la propagación máxima, el conjunto de escalado propaga las máquinas virtuales (VMs) en tantos dominios de error como sea posible dentro de cada zona. Esta propagación podría incluir más o menos de cinco dominios de error por zona.

    Nota

    Con la propagación máxima, independientemente del número de dominios de errores en los que estén repartidas las máquinas virtuales (VMs), solo podrá ver un dominio de errores tanto en la vista de instancia de máquina virtual del conjunto de escalado como en los metadatos de instancia. La propagación dentro de cada zona es implícita.

  • Propagación fija estática (platformFaultDomainCount = 5). Con la propagación fija estática, el conjunto de escalado propaga las máquinas virtuales (VMs) en exactamente cinco dominios de error por zona. Si el conjunto de escalado no encuentra cinco dominios de error distintos por zona para satisfacer la solicitud de asignación, se produce un error en la solicitud.

  • Propagación alineada con dominios de error de discos administrados (platformFaultDomainCount = 2 o 3) Puede considerar la posibilidad de alinear el número de dominios de error del conjunto de escalado con el número de dominios de error de discos administrados. Esta alineación puede ayudar a evitar la pérdida de cuórum si un dominio de error de discos administrados completo deja de funcionar. El recuento de dominios de error se puede establecer en menor o igual que el número de dominios de error de discos administrados disponibles en cada una de las regiones. Para más información, consulte Procedimientos recomendados para lograr la alta disponibilidad con máquinas virtuales de Azure y discos administrados.

Equilibrio de zona

En el caso de los conjuntos de escalado implementados en varias zonas (con redundancia de zona), puede elegir el equilibrio de zona de mejor esfuerzo o el equilibrio de zona estricto. Un conjunto de escalado se considera "equilibrado" si cada zona tiene el mismo número de máquinas virtuales (VMs), (más o menos una máquina virtual) que todas las demás zonas del conjunto de escalado. Por ejemplo:

Conjunto de escalado Máquinas virtuales (VMs) en la Zona 1 Máquinas virtuales (VMs) en la Zona 2 Máquinas virtuales (VMs) en la Zona 3 Equilibrio de zona
Conjunto de escalado equilibrado 2 3 3 Este conjunto de escalado se considera equilibrado. Hay solo una zona con un recuento de VM diferente y es solo es 1 menor que las demás zonas.
Conjunto de escalado desequilibrado 1 3 3 Este conjunto de escalado se considera desequilibrado. La Zona 1 tiene 2 máquinas virtuales (VMs) menos que las zonas 2 y 3.

Es posible que las máquinas virtuales (VMs) del conjunto de escalado se creen correctamente, aunque sus extensiones no puedan realizar la implementación. Las máquinas virtuales (VMs) con errores de extensión se siguen contando al determinar si un conjunto de escalado está equilibrado. Por ejemplo, un conjunto de escalado con 3 máquinas virtuales (VMs) en la zona 1, 3 máquinas virtuales (VMs) en la zona 2 y 3 máquinas virtuales en la zona 3 se considera equilibrado aunque todas las extensiones produzcan un error en la zona 1 y sean correctas en las zonas 2 y 3.

Con la mejor opción de equilibrio de zonas, el conjunto de escalado intenta aumentarse y reducirse horizontalmente, y conserva el equilibrio. Sin embargo, si por alguna razón el equilibrio no es posible (por ejemplo, si una zona deja de funcionar, el conjunto de escalado no puede crear una nueva máquina virtual en esa zona), el conjunto de escalado permite un desequilibrio temporal para escalar satisfactoriamente hacia dentro o hacia fuera. En posteriores intentos de ampliación, la escalabilidad horizontal añade máquinas virtuales (VMs) a las zonas que necesitan más máquinas virtuales para equilibrar la escalabilidad horizontal. Análogamente, para los posteriores intentos de reducción horizontal, el conjunto de escalado elimina máquinas virtuales de las zonas donde se necesitan menos para conseguir el equilibrio. Con el equilibrio de zonas estricto, el conjunto de escalado produce un error al intentar el aumento o la reducción horizontal si ello causara desequilibrio.

Para usar el equilibrio de zona de mejor esfuerzo, establezca zoneBalance en false. La configuración de zoneBalance es la predeterminada en la versión de API 2017-12-01. Para usar el equilibrio de zona estricto, establezca zoneBalance en true.

Soporte técnico para la migración a la zona de disponibilidad

Para obtener información sobre cómo volver a implementar un conjunto de escalado regional en compatibilidad con zonas de disponibilidad, consulte Actualización del conjunto de escalado para agregar zonas de disponibilidad.

Instrucciones adicionales

Grupos de selección de ubicación

Importante

Los grupos de selección de ubicación solo se aplican a los conjuntos de escalado de máquinas virtuales (Virtual Machine Scale Sets) que se ejecutan en el modo de orquestación Uniforme.

Al implementar un conjunto de máquinas virtuales a escala, tiene la opción de hacerlo con uno o varios grupos de ubicación por zona de disponibilidad. En el caso de los conjuntos de escalado regionales, la opción es tener un único grupo de selección de ubicación en la región o tener varios grupos de selección de ubicación en la región. Si la propiedad del conjunto de escalado singlePlacementGroup está establecida en false, el conjunto de escalado se puede componer de varios grupos de selección de ubicación y tiene un intervalo de 0 a 1000 máquinas virtuales. Cuando se establece en el valor predeterminado true, el conjunto de escalado se compone de un solo grupo de selección de ubicación y tiene un intervalo de 0 a 100 máquinas virtuales. Para la mayoría de las cargas de trabajo, se recomiendan varios grupos de selección de ubicación, lo que permite mayor escala. En la versión de API2017-12-01, los conjuntos de escalado de una o varias zonas tienen varios grupos de selección de ubicación de manera predeterminada, pero se cambia de manera predeterminada a un único grupo para los conjuntos de escalado regionales.

Pasos siguientes