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 | Sí | Sí |
Combinación de instancias de acceso puntual y a petición | Sí | 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 | Sí | Sí |
Asignación de máquinas virtuales a zonas específicas | Sí | Sí |
Asignación de máquinas virtuales a dominios de error específicos | Sí | 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. Al configurar la supervisión de aplicaciones, debe instalar y configurar la extensión de estado de la aplicación si usa orquestación flexible. En el caso de instancias de conjunto de escalado uniforme, puede usar la extensión de estado de la aplicación o los sondeos de estado.
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 | Sí | Control limitado con VM API de Virtual Machine Scale Sets | Sí |
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 | Sí | Sí | Sí |
Redes aceleradas | Sí | Sí | Sí |
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 | Sí | Sí | Sí |
Acelerador de escritura | Sí | Sí | Sí |
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 | Sí |
Hosts dedicados de Azure | Sí | Sí | Sí |
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 | Sí | No | No |
Service Fabric | No | Sí | No |
Azure Kubernetes Service (AKS)/AKE | No | Sí | No |
UserData | Sí | Sí | UserData se puede especificar para máquinas virtuales individuales |
Opción para eliminar o conservar la NIC de máquina virtual y los discos | Sí | No (eliminar siempre) | Sí |
Discos Ultra | Sí | Sí | 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í | Sí | 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) | Sí | Sí | No |
Eliminación automática de tarjetas de interfaz de red y discos cuando se eliminan instancias de máquina virtual | Sí | Sí | No |
Directiva de actualización (Virtual Machine Scale Sets) | Automático, gradual, manual | Automático, gradual, manual | N/D |
Novedades de sistema operativo automático (Virtual Machine Scale Sets) | No | Sí | N/D |
Actualizaciones de seguridad en el invitado | Sí, lea Aplicación de revisiones automática a invitados de máquina virtual. | No | Sí |
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 | Sí | Sí | No |
Directiva de reducción horizontal | Sí | Sí | No |
Obtención de vistas de instancias de VMSS | No | Sí | N/D |
Operaciones por lotes de máquinas virtuales (Iniciar todo, Detener todo, Eliminar subconjunto, etc.) | Sí | Sí | 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 | Sí | No | No |
Dominio de error: propagación máxima (Azure propagará al máximo las instancias) | Sí | Sí | 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 | Sí | 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 | Sí | N/D |
Reserva de capacidad | Sí | Sí | Sí |
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. | Sí | Sí |
SKU estándar para Azure Load Balancer | Sí | Sí | Sí |
Application Gateway | Sí | Sí | Sí |
Redes InfiniBand | No | Sí, solo grupo de selección de ubicación único | Sí |
LB básico | No | Sí | Sí |
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 | Sí | No | Sí |
Azure Site Recovery | Sí (mediante PowerShell) | No | Sí |
Alertas de Azure | Sí | Sí | Sí |
VM Insights | Se puede instalar en máquinas virtuales individuales | Sí | Sí |
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 Sí Sí 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