Modos de orquestación para los conjuntos de escalado de máquinas virtuales de Azure

Los conjuntos de escalado de máquinas virtuales proporcionan una agrupación lógica de máquinas virtuales administradas por una plataforma. Con los conjuntos de escalado, se crea un modelo de configuración de máquina virtual, se agregan o quitan automáticamente instancias adicionales en función de la carga de CPU o de memoria y se actualiza automáticamente a la versión más reciente del sistema operativo. Tradicionalmente, los conjuntos de escalado han permitido crear máquinas virtuales con un modelo de configuración de máquina virtual proporcionado en el momento de la creación del conjunto de escalado. Además, el conjunto de escalado solo puede administrar aquellas máquinas virtuales que se creen de forma implícita según el modelo de configuración.

Los modos de orquestación del conjunto de escalado permiten tener un mayor control sobre la forma en que el conjunto de escalado administra las instancias de máquina virtual.

Importante

El modo de orquestación se define al crear el conjunto de escalado y no se puede cambiar ni actualizar más adelante.

Conjuntos de escalado con orquestación uniforme

Están optimizados para cargas de trabajo sin estado a gran escala con instancias idénticas.

Los conjuntos de escalado de máquinas virtuales con orquestación uniforme usan un perfil o una plantilla de máquina virtual para realizar un escalado vertical hasta la capacidad deseada. Aunque existe cierta capacidad para administrar o personalizar instancias de máquina virtual individuales, el modo de orquestación uniforme usa instancias de máquina virtual idénticas. Las instancias de máquina virtual individuales del modo uniforme se exponen mediante los comandos de la API de máquina virtual de Virtual Machine Scale Sets. Las instancias individuales no son compatibles con los comandos estándar de la API de máquina virtual de IaaS de Azure, las características de administración de Azure, como los permisos de RBAC, el etiquetado de recursos de Azure Resource Manager, Azure Backup o Azure Site Recovery. La orquestación uniforme proporciona garantías de alta disponibilidad del dominio de error cuando se configura con menos de 100 instancias. La orquestación uniforme está disponible con carácter general y es compatible con una gama completa de administración y orquestación del conjunto de escalado, lo que incluye el escalado automático basado en métricas, la protección de instancias y las actualizaciones automáticas del sistema operativo.

Conjuntos de escalado con orquestación flexible

Logre una alta disponibilidad a escala con tipos de máquina virtual idénticos o múltiples.

Con la orquestación flexible, Azure proporciona una experiencia unificada en todo el ecosistema de máquinas virtuales de Azure. La orquestación flexible ofrece garantías de alta disponibilidad (hasta mil máquinas virtuales) mediante la propagación de máquinas virtuales entre dominios de error en una región o en una zona de disponibilidad, lo que permite escalar horizontalmente la aplicación a la vez que se mantiene el aislamiento del dominio de error, algo que es esencial para ejecutar cargas de trabajo basadas en cuórum o con estado, entre las que se incluyen:

  • Cargas de trabajo basadas en cuórum
  • Bases de datos de código abierto
  • Aplicaciones con estado
  • Servicios que requieren alta disponibilidad y gran escala
  • Servicios que desean combinar tipos de máquina virtual o de acceso puntual y a petición conjuntamente
  • Aplicaciones del conjunto de disponibilidad existentes

¿Qué ha cambiado con el modo de orquestación flexible?

Una de las principales ventajas de la orquestación flexible es que proporciona características de orquestación a través de máquinas virtuales de IaaS de Azure estándar, en lugar de máquinas virtuales secundarias del conjunto de escalado, Esto que significa que puede usar todas las API de máquina virtual estándar al administrar instancias de orquestación flexible, en lugar de las API de VM de Virtual Machine Scale Sets que se usan con la orquestación uniforme. Hay varias diferencias entre administrar instancias en la orquestación flexible y hacerlo en la orquestación uniforme. En general, se recomienda usar las API de VM de IaaS de Azure estándar siempre que sea posible. En esta sección, resaltamos ejemplos de prácticas recomendadas para la administración de instancias de máquina virtual con una orquestación flexible.

El modo de orquestación flexible se puede usar con todos los tamaños de máquina virtual. El modo de orquestación flexible proporciona escalabilidad y capacidad de configuración máximas para los tamaños de máquina virtual que admiten la conservación de memoria o la migración en vivo, como cuando se usa la serie B, D, E y F o cuando el conjunto de escalado está configurado para la propagación máxima entre instancias platformFaultDomainCount=1. Actualmente, el modo de orquestación flexible tiene otras restricciones para los tamaños de máquina virtual que no admiten las actualizaciones que conservan la memoria, incluidas las máquinas virtuales de la serie G, H, L, M y N, y las instancias se distribuyen entre varios dominios de error. Puede usar la API de SKU de los recursos del proceso para determinar si una SKU de máquina virtual específica admite las actualizaciones que conservan la memoria.

Característica Se admiten las actualizaciones que conservan la memoria o los conjuntos de escalado con propagación máxima (platformFaultDomainCount=1) Propagación fija (platformFaultDomainCount > 1) y no se admiten las actualizaciones que conservan la memoria
Recuento de instancias máximo de conjuntos de escalado de máquinas virtuales 1000 200
Combinación de sistemas operativos
Combinación de instancias de acceso puntual y a petición No
Combinación de tipos de SKU de uso general y de especialidad Sí (FDCount = 1) No
Número máximo de dominios de error Regional: 3 (dependiendo del número máximo de dominios de error regional)
Zonal: 1
Regional: 3
Zonal: 1
Propagación de instancias entre zonas
Asignación de máquinas virtuales a zonas específicas
Asignación de máquinas virtuales a dominios de error específicos No
Dominios de actualización No No
Grupo de selección de ubicación único Opcional. Se establecerá en false en función de la primera máquina virtual implementada. Opcional. Se establecerá en true en función de la primera máquina virtual implementada.

Escalado horizontal con máquinas virtuales de Azure estándar

Los conjuntos de escalado de máquinas virtuales en modo de orquestación flexible administran máquinas virtuales de Azure estándar. Tiene control total sobre el ciclo de vida de la máquina virtual, así como sobre las interfaces de red y los discos mediante las API y comandos de Azure estándar. Las máquinas virtuales creadas con el modo de orquestación uniforme se exponen y administran a través de los comandos de la API de máquina virtual de Virtual Machine Scale Sets. Las instancias individuales no son compatibles con los comandos estándar de la API de máquina virtual de IaaS de Azure, las características de administración de Azure, como los permisos de RBAC de etiquetado de recursos de Azure Resource Manager, Azure Backup o Azure Site Recovery.

Asignación de un dominio de error durante la creación de máquinas virtuales

Puede elegir el número de dominios de error para el conjunto de escalado de orquestación flexible. De forma predeterminada, cuando se agrega una máquina virtual a un conjunto de escalado flexible, Azure distribuye uniformemente las instancias entre los dominios de error. Aunque se recomienda dejar de Azure asigne el dominio de error, en los escenarios avanzados o de solución de problemas se puede invalidar este comportamiento predeterminado y especificar el dominio de error en el que se ubicará la instancia.

az vm create –vmss "myVMSS"  –-platform-fault-domain 1

Asignación de nombres a instancias

Al crear una máquina virtual y agregarla a un conjunto de escalado flexible, tiene control total sobre los nombres de instancia en las reglas de convención de nomenclatura de Azure. Cuando se agregan automáticamente máquinas virtuales al conjunto de escalado mediante el escalado automático, se proporciona un prefijo y Azure anexa un número único al final del nombre.

Instancias de consulta para el estado de energía

El método preferido es usar Azure Resource Graph para realizar consultas en todas las máquinas virtuales de un conjunto de escalado de máquinas virtuales. Azure Resource Graph proporciona funcionalidades de consulta eficaces para los recursos de Azure a escala en todas las suscripciones.

resources
| where type =~ 'Microsoft.Compute/virtualMachines'
| where properties.virtualMachineScaleSet.id contains "demo"
| extend powerState = properties.extended.instanceView.powerState.code
| project name, resourceGroup, location, powerState
| order by resourceGroup desc, name desc

La consulta de recursos con Azure Resource Graph es una forma cómoda y eficaz de consultar los recursos de Azure, y minimiza las llamadas API al proveedor de recursos. Azure Resource Graph es una caché eventualmente consistente en la que los recursos nuevos o actualizados puede que no se reflejen hasta 60 segundos. Puede:

  • Enumerar máquinas virtuales en un grupo de recursos o suscripción.
  • Usar la opción de expansión para recuperar la vista de la instancia (estados de asignación de dominios, de energía y de aprovisionamiento) de todas las máquinas virtuales de su suscripción.
  • Use los comandos y la API de VM de Get para obtener una vista de modelo y de instancia para una sola instancia.

Supervisión del estado de la aplicación

El seguimiento del estado de la aplicación permite que la aplicación proporcione a Azure un latido para determinar si la aplicación está en estado correcto o incorrecto. Azure puede reemplazar automáticamente las instancias de máquina virtual que no sean correctas. En el caso de las instancias del conjunto de escalado flexible, debe instalar y configurar la extensión de estado de la aplicación en la máquina virtual. En el caso de instancias de conjunto de escalado uniforme, puede usar la extensión de estado de la aplicación, o bien medir el estado con un sondeo de estado personalizado de Azure Load Balancer.

Enumeración de cambios en la API de VM de conjuntos de escalado

Virtual Machine Scale Sets permite enumerar las instancias que pertenecen al conjunto de escalado. Con una orquestación flexible, el comando de máquina virtual list de Virtual Machine Scale Sets proporciona una lista de los identificadores de máquina virtual de los conjuntos de escalado. Después, se puede llamar a los comandos de máquina virtual GET de Virtual Machine Scale Sets para obtener más detalles sobre cómo funciona el conjunto de escalado con la instancia de máquina virtual. Para obtener los detalles de muchas máquinas virtuales del conjunto de escalado, use Azure Resource Graph o la API Enumerar VM estándar o los comandos. Use la API de máquina virtual GET estándar y los comandos para obtener información sobre una sola instancia.

Recuperación de datos de diagnósticos de arranque

Use las API y los comandos de máquina virtual estándar para recuperar las capturas de pantalla y los datos de los diagnósticos de arranque de la instancia. Los comandos y las API de diagnóstico de arranque de máquina virtual de Virtual Machine Scale Sets no se usan con las instancias del modo de orquestación flexible.

Extensiones de máquina virtual

Use las extensiones destinadas a las máquinas virtuales estándar, en lugar de las destinadas a instancias del modo de orquestación uniforme.

Una comparación de conjuntos de disponibilidad, y los modos de orquestación flexible y uniforme

En la tabla siguiente se compara el modo de orquestación flexible, el modo de orquestación uniforme y los conjuntos de disponibilidad por sus características.

Configuración básica

Característica Compatible con la orquestación flexible para conjuntos de escalado Compatible con la orquestación uniforme para conjuntos de escalado Compatible con los conjuntos de disponibilidad
Tipo de máquina virtual Máquina virtual de IaaS de Azure estándar (Microsoft.compute/virtualmachines) Máquinas virtuales específicas de conjunto de escalado (Microsoft.compute /virtualmachinescalesets/virtualmachines) Máquina virtual de IaaS de Azure estándar (Microsoft.compute/virtualmachines)
Versión mínima de la API necesaria 2021-03-01 2015-06-01 2015-06-01
Recuento máximo de instancias (con garantías de FD) 1000 100 200
SKU compatibles Todos los SKU Todos los SKU Todos los SKU
Control total sobre máquina virtual, tarjetas de interfaz de red y discos Control limitado con VM API de Virtual Machine Scale Sets
Permisos de RBAC necesarios Escritura en conjuntos de escalado de máquinas virtuales de proceso, escritura en máquinas virtuales de proceso, red Escritura en conjuntos de escalado de máquinas virtuales de proceso N/D
Galería de imágenes compartidas entre inquilinos
Redes aceleradas
Precios e instancias de acceso puntual Sí, puede tener instancias de prioridad regular y de acceso puntual Sí, las instancias deben ser todas regulares o de acceso puntual No, solo instancias de prioridad regular
Combinación de sistemas operativos Sí, Linux y Windows pueden residir en el mismo conjunto de escalado flexible No, las instancias son el mismo sistema operativo Sí, Linux y Windows pueden residir en el mismo conjunto de disponibilidad
Tipos de disco Solo discos administrados, todos los tipos de almacenamiento Discos administrados y no administrados Discos administrados y no administrados. No se admiten los discos Ultra
Cifrado del disco del servidor con claves administradas por el cliente
Acelerador de escritura
Grupos con ubicación por proximidad Sí, cuando se usa una zona de disponibilidad o ninguna. No se puede cambiar después de la implementación. Lee la documentación de los grupos de selección de ubicación de proximidad Sí, cuando se usa una zona de disponibilidad o ninguna. Se puede cambiar después de detener todas las instancias de la implementación. Lee la documentación de los grupos de selección de ubicación de proximidad
Hosts dedicados de Azure
Identidad administrada Identidad asignada por el usuario únicamente1 Asignada por el sistema o por el usuario N/D (puede especificar una identidad administrada en instancias individuales)
Agregar una máquina virtual existente al grupo o eliminarla de él No N.º No
Service Fabric No No
Azure Kubernetes Service (AKS)/AKE No No
UserData UserData se puede especificar para máquinas virtuales individuales
Opción para eliminar o conservar la NIC de máquina virtual y los discos No (eliminar siempre)
Discos Ultra No

1 Para conjuntos de escalado uniformes, la respuesta GET VMSS tendrá una referencia a identity, clientID y principalID. En el caso de los conjuntos de escalado flexibles, la respuesta solo obtendrá una referencia a identity. Puede hacer una llamada a Identity para obtener clientID y PrincipalID.

Escalado automático y orquestación de instancias

Característica Compatible con la orquestación flexible para conjuntos de escalado Compatible con la orquestación uniforme para conjuntos de escalado Compatible con los conjuntos de disponibilidad
Enumeración de las máquinas virtuales en el conjunto Sí, enumerar las máquinas virtuales en el conjunto de disponibilidad
Escalado automático (manual, basado en las métricas, basado en la programación) No
Eliminación automática de tarjetas de interfaz de red y discos cuando se eliminan instancias de máquina virtual No
Directiva de actualización (Virtual Machine Scale Sets) No, la directiva de actualización debe ser NULL o [] durante la creación Automático, gradual, manual N/D
Novedades de sistema operativo automático (Virtual Machine Scale Sets) No N/D
Actualizaciones de seguridad en el invitado Sí, lea Aplicación de revisiones automática a invitados de máquina virtual. No
Notificaciones de finalización (Virtual Machine Scale Sets) Sí, lea la documentación de los grupos de notificaciones de terminación. Sí, lea la documentación de los grupos de notificaciones de terminación. N/D
Supervisión del estado de la aplicación Extensión del estado de la aplicación Sondeo de la extensión del estado de la aplicación o de Azure Load Balancer Extensión del estado de la aplicación
Reparación de instancias (Virtual Machine Scale Sets) Sí, lea la documentación de la reparación de instancias. Sí, lea la documentación de la reparación de instancias. N/D
Protección de instancias No
Directiva de reducción horizontal No
Obtención de vistas de instancias de VMSS No N/D
Operaciones por lotes de máquinas virtuales (Iniciar todo, Detener todo, Eliminar subconjunto, etc.) No

Alta disponibilidad

Característica Compatible con la orquestación flexible para conjuntos de escalado Compatible con la orquestación uniforme para conjuntos de escalado Compatible con los conjuntos de disponibilidad
SLA de disponibilidad 99,95 % para instancias distribuidas entre dominios de error; 99,99 % para instancias distribuidas entre varias zonas 99,95 % para FD>1 en un único grupo de selección de ubicación; 99,99 % para instancias distribuidas entre varias zonas 99,95%
Zonas de disponibilidad Especifique las instancias que aterrizan en las zonas de disponibilidad en 1, 2 o 3 Especifique las instancias que aterrizan en las zonas de disponibilidad en 1, 2 o 3 No compatible
Asignación de una máquina virtual a una zona de disponibilidad específica No No
Dominio de error: propagación máxima (Azure propagará al máximo las instancias) No
Dominio de error: propagación fija 2-3 FD (dependiendo del recuento máximo de FD regional), 1 FD para implementaciones zonales 2, 3 o 5 FD; 1 o 5 para implementaciones zonales 2 o 3 FD (en función del máximo regional)
Asignación de una máquina virtual a un dominio de error específico No No
Dominios de actualización En desuso (el mantenimiento de la plataforma se realiza en los FD, de uno en uno). 5 dominios de actualización Hasta 20 dominios de actualización
Realizar mantenimiento Desencadenamiento del mantenimiento en cada instancia mediante la API de máquina virtual N/D
Reserva de capacidad

Redes

Característica Compatible con la orquestación flexible para conjuntos de escalado Compatible con la orquestación uniforme para conjuntos de escalado Compatible con los conjuntos de disponibilidad
Conectividad de salida predeterminada No, debe tener una conectividad de salida explícita.
SKU estándar para Azure Load Balancer
Application Gateway
Redes InfiniBand No Sí, solo grupo de selección de ubicación único
LB básico No
Reenvío de puertos de red Sí (reglas NAT para instancias individuales) Sí (grupo NAT) Sí (reglas NAT para instancias individuales)

Copia de seguridad y recuperación

Característica Compatible con la orquestación flexible para conjuntos de escalado Compatible con la orquestación uniforme para conjuntos de escalado Compatible con los conjuntos de disponibilidad
Azure Backup No
Azure Site Recovery Sí (mediante PowerShell) No
Alertas de Azure
VM Insights Se puede instalar en máquinas virtuales individuales

Parámetros no admitidos

Los siguientes parámetros de Virtual Machine Scale Sets no se admiten actualmente con Virtual Machine Scale Sets en modo de orquestación flexible:

  • Grupo de selección único: se puede establecer en null y la plataforma seleccionará el valor correcto
  • Configuración del disco Ultra: diskIOPSReadWrite, diskMBpsReadWrite
  • Aprovisionamiento excesivo de Virtual Machine Scale Sets
  • Actualizaciones automáticas del sistema operativo basadas en imágenes
  • Estado de la aplicación a través del sondeo de estado de SLB: use la extensión de estado de la aplicación en las instancias
  • Directiva de actualización de Virtual Machine Scale Sets: debe ser NULL o estar vacía
  • Discos no administrados
  • Versión Básico de Load Balancer
  • Reenvío de puertos Standard Load Balancer grupo NAT: puede configurar reglas NAT
  • Identidad administrada asignada por el sistema: use la identidad administrada asignada por el usuario en su lugar

Introducción al modo de orquestación flexible

Registre y comience a usar el modo de orquestación flexible para el conjunto de escalado de su máquina virtual.

Preguntas más frecuentes

  • ¿Cuánta escala admite la orquestación flexible?

    En el modo de orquestación flexible se pueden agregar un máximo de 1000 máquinas virtuales a un conjunto de escalado.

  • Diferencias y similitudes de la orquestación flexible con los conjuntos de disponibilidad o la orquestación uniforme

    Atributo de disponibilidad Orquestación flexible Orquestación uniforme Conjuntos de disponibilidad
    Implementación en zonas de disponibilidad No
    Garantía de disponibilidad de dominios de error en una región Se pueden distribuir hasta 1000 instancias en un máximo de 3 dominios de error en la región. El número máximo de dominios de error varía en función de la región Sí, hasta 100 instancias. Sí, hasta 200 instancias.
    Grupos de selección de ubicación N/D Puede elegir entre un grupo de selección de ubicación único o varios grupos de selección de ubicación N/D
    Dominios de actualización Ninguno, el mantenimiento o las actualizaciones del host se realizan por cada dominio de error individual Hasta 5 dominios de actualización Hasta 20 dominios de actualización
  • ¿Cuál es el recuento máximo absoluto de instancias con disponibilidad de dominio de error garantizada?

    Característica Compatible con la orquestación flexible Compatible con la orquestación uniforme (disponibilidad general) Compatible con conjuntos de disponibilidad (disponibilidad general)
    Recuento máximo de instancias (con garantía de disponibilidad de FD) 1000 3000 200

Pasos siguientes