Compartir a través de


Procedimientos recomendados de arquitectura para Azure Virtual Machines y conjuntos de escalado

Azure Virtual Machines es un tipo de servicio de proceso que puede usar para crear y ejecutar máquinas virtuales (VM) en la plataforma Azure. Proporciona flexibilidad en diferentes SKU, sistemas operativos y configuraciones con varios modelos de facturación.

En este artículo se da por supuesto que, como arquitecto, ha revisado el árbol de decisión de cómputo y ha elegido máquinas virtuales como servicio de cómputo para la carga de trabajo. La guía de este artículo proporciona recomendaciones arquitectónicas que están alineadas con los principios de los pilares del marco Well-Architected.

Importante

Cómo usar esta guía

Cada sección tiene una lista de comprobación de diseño que presenta áreas arquitectónicas de preocupación junto con estrategias de diseño adaptadas al ámbito tecnológico.

También se incluyen recomendaciones sobre las funcionalidades tecnológicas que pueden ayudar a materializar esas estrategias. Las recomendaciones no representan una lista exhaustiva de todas las configuraciones disponibles para las máquinas virtuales y sus dependencias. En su lugar, enumeran las recomendaciones clave asignadas a las perspectivas de diseño. Use las recomendaciones para crear la prueba de concepto o para optimizar los entornos existentes.

Arquitectura básica que muestra las recomendaciones clave: arquitectura de línea base de Virtual Machines.

Alcance de la tecnología

Esta revisión se centra en las decisiones relacionadas entre sí para los siguientes recursos de Azure:

  • Máquinas virtuales

  • Conjuntos de escalado de máquinas virtuales de Azure

    Diagrama que muestra las decisiones relacionadas entre máquinas virtuales y conjuntos de escalado de máquinas virtuales de Azure.

Los discos son una dependencia fundamental para las arquitecturas basadas en máquinas virtuales, pero no se tratan en este artículo. Para más información, consulte Procedimientos recomendados de arquitectura para Azure Disk Storage.

Fiabilidad

El propósito del pilar Fiabilidad es proporcionar una funcionalidad continuada mediante la creación de suficiente resiliencia y la capacidad de recuperarse rápidamente de los fallos.

principios de diseño de confiabilidad proporcionar una estrategia de diseño de alto nivel aplicada a componentes individuales, flujos del sistema y al sistema en su conjunto.

Lista de comprobación de diseño

Comience su estrategia de diseño basándose en la lista de comprobación de revisión de diseño para Fiabilidad. Determine su relevancia para los requisitos empresariales a la vez que tenga en cuenta las SKU y las características de las máquinas virtuales y sus dependencias. Amplíe la estrategia para incluir más enfoques según sea necesario.

  • Revise las cuotas y los límites de virtual Machines que podrían suponer restricciones de diseño. Las máquinas virtuales tienen límites y cuotas específicos, que varían en función del tipo de máquina virtual o la región. Puede haber restricciones de suscripción, como el número de máquinas virtuales por suscripción o el número de núcleos por máquina virtual. Si otras cargas de trabajo comparten la suscripción, es posible que se reduzca la capacidad de consumir datos. Compruebe los límites de las máquinas virtuales, los conjuntos de escalado de máquinas virtuales y los discos administrados.

  • Realice un análisis del modo de error para minimizar los puntos de error mediante el análisis de interacciones de máquina virtual con los componentes de red y almacenamiento. Elija configuraciones como discos de sistema operativo (SO) efímeros para localizar el acceso al disco y evitar saltos de red. Agregue un equilibrador de carga para mejorar la conservación automática mediante la distribución del tráfico de red entre varias máquinas virtuales, lo que mejora la disponibilidad y la confiabilidad.

  • Calcule los objetivos de nivel de servicio (SLO) compuestos en función de los acuerdos de nivel de servicio (SLA) de Azure. Asegúrese de que el SLO no es mayor que los Acuerdos de Nivel de Servicio de Azure para evitar expectativas poco realistas y posibles problemas.

    Tenga en cuenta las complejidades que presentan las dependencias. Por ejemplo, algunas dependencias, como redes virtuales y tarjetas de interfaz de red (NIC), no tienen sus propios SLA. Otras dependencias, como un disco de datos asociado, tienen acuerdos de nivel de servicio que se integran con SLA de máquina virtual. Debe tener en cuenta estas variaciones porque pueden afectar al rendimiento y la confiabilidad de las máquinas virtuales.

    Tenga en cuenta las dependencias críticas de las máquinas virtuales en componentes como discos y componentes de red. Si comprende estas relaciones, puede determinar los flujos críticos que afectan a la confiabilidad.

  • Crear aislamiento de estado. Los datos de carga de trabajo deben estar en un disco de datos independiente para evitar la interferencia con el disco del sistema operativo. Si se produce un error en una máquina virtual, puede crear un nuevo disco del sistema operativo con el mismo disco de datos, lo que garantiza la resistencia y el aislamiento de errores. Para obtener más información, consulte Discos de sistema operativo efímeros.

  • Hacer que las máquinas virtuales y sus dependencias sean redundantes entre zonas. Si se produce un error en una máquina virtual, la carga de trabajo debe seguir funcionando debido a la redundancia. Incluya dependencias en las opciones de redundancia. Por ejemplo, use las opciones de redundancia integradas que están disponibles con discos. Use direcciones IP con redundancia de zona para garantizar la disponibilidad de los datos y el tiempo de actividad elevado.

  • Prepárese para aumentar la capacidad y expandirse horizontalmente para evitar la degradación del nivel de servicio y para evitar fallos. Los conjuntos de escalado de máquinas virtuales tienen funcionalidades de escalado automático que crean nuevas instancias según sea necesario y distribuyen la carga entre varias máquinas virtuales y zonas de disponibilidad.

  • Explore las opciones de recuperación automática. Azure admite la supervisión de la degradación del estado y las características de recuperación automática para las máquinas virtuales. Por ejemplo, los conjuntos de escalado proporcionan reparaciones automáticas de instancias. En escenarios más avanzados, la recuperación automática implica el uso de Azure Site Recovery, tener un sistema en espera pasivo al que conmutar por error o volver a implementar desde la infraestructura como código (IaC). El método que elija debe alinearse con los requisitos empresariales y las operaciones de la organización. Para más información, consulte Interrupciones del servicio de máquina virtual.

  • Rightsize las máquinas virtuales y sus dependencias. Comprenda el trabajo esperado de la máquina virtual para asegurarse de que no está infradimensionado y puede controlar la carga máxima. Tener capacidad adicional para mitigar los errores.

  • Cree un plan de recuperación ante desastres completo. La preparación ante desastres implica la creación de un plan completo y la decisión sobre una tecnología para la recuperación.

    Las dependencias y los componentes con estado, como el almacenamiento conectado, pueden complicar la recuperación. Si los discos están inactivos, ese error afecta al funcionamiento de la máquina virtual. Incluya un proceso claro para estas dependencias en los planes de recuperación.

  • Ejecute operaciones con rigor. Las opciones de diseño de confiabilidad deben ser compatibles con operaciones eficaces basadas en los principios de supervisión, pruebas de resistencia en producción, revisiones y actualizaciones automatizadas de máquinas virtuales de aplicaciones y coherencia de las implementaciones. Para obtener instrucciones operativas, consulte Operational Excellence.

Recomendaciones

Recomendación Ventajas
(Conjunto de escalado) Use Virtual Machine Scale Sets en modo de orquestación flexible para implementar máquinas virtuales. Prepare su aplicación para el futuro, de cara al escalado, y aproveche las garantías de alta disponibilidad que distribuyen las máquinas virtuales entre dominios de error dentro de una región o zona de disponibilidad.
(VM) Implemente puntos de conexión de mantenimiento que emitan estados de mantenimiento de instancia en máquinas virtuales.

(Conjunto de escalas) Habilita las reparaciones automáticas en el conjunto de escalas especificando la acción de reparación preferida.
Considere la posibilidad de establecer un período de tiempo durante el cual las reparaciones automáticas se pausan si cambia el estado de la máquina virtual.
Mantenga la disponibilidad incluso si una instancia se considera que está en mal estado. Las reparaciones automáticas inician la recuperación reemplazando la instancia defectuosa.

Establecer un período de tiempo puede evitar operaciones de reparación involuntarias o prematuras.
(Conjunto de escalado) Habilite el sobreaprovisionamiento en conjuntos de escalado. El aprovisionamiento excesivo reduce los tiempos de implementación y tiene una ventaja de costo porque no se facturan las máquinas virtuales adicionales.
(Conjunto de escalado) Asignación previa de instancias con grupos en espera. Las instancias del grupo en espera permanecen inactivas, pero están listas para asumir las cargas de trabajo si se produce un error. Esta funcionalidad mejora la confiabilidad del sistema.
(Conjunto de escalado) Permitir que la orquestación flexible distribuya las instancias de máquina virtual en tantos dominios de error como sea posible. Esta opción aísla los dominios de error. Durante los períodos de mantenimiento, cuando se actualiza un dominio de error, las instancias de máquina virtual están disponibles en los demás dominios de error.
(Conjunto de escalado) Realice la implementación en zonas de disponibilidad en conjuntos de escalado. Configure al menos dos instancias en cada zona.
El equilibrio de zona distribuye igualmente las instancias entre zonas.
Las instancias de máquina virtual se aprovisionan en ubicaciones físicamente independientes dentro de cada región de Azure que son tolerantes a errores locales.
Tenga en cuenta que, en función de la disponibilidad de los recursos, puede haber un número desigual de instancias entre zonas. El equilibrio de zona admite la disponibilidad asegurándose de que, si una zona está inactiva, las demás tienen instancias suficientes.
Dos instancias de cada zona proporcionan un margen de maniobra durante las actualizaciones.
(Conjunto de escalado) Para mejorar el tiempo de actividad del servicio y mantener el control sobre las implicaciones de costos de las actualizaciones, active MaxSurge. Las nuevas instancias se crean en lotes mediante el modelo de escalado más reciente. Después de que las nuevas instancias estén en buen estado, las instancias anteriores se eliminan en lotes. Este proceso continúa hasta que se actualizan todas las instancias, lo que garantiza que no haya tiempo de inactividad durante las actualizaciones.
(VM) Aproveche las ventajas de la característica de reservas de capacidad. La capacidad está reservada para su uso y está disponible dentro del ámbito de los Acuerdos de Nivel de Servicio aplicables. Puede eliminar las reservas de capacidad cuando ya no las necesite y la facturación se basa en el consumo.

Seguridad

El propósito del pilar de seguridad es proporcionar garantías de confidencialidad, integridad y disponibilidad a la carga de trabajo.

Los principios de diseño de seguridad proporcionan una estrategia de diseño de alto nivel para lograr esos objetivos aplicando enfoques al diseño técnico de máquinas virtuales.

Lista de comprobación de diseño

Inicie la estrategia de diseño en función de la lista de comprobación de revisión de diseño de seguridad e identifique vulnerabilidades y controles para mejorar la posición de seguridad. Amplíe la estrategia para incluir más enfoques según sea necesario.

  • Revise las líneas base de seguridad para máquinas virtuales Linux y Windows, y Virtual Machine Scale Sets.

    Como parte de sus opciones de tecnología base, tenga en cuenta las características de seguridad de los SKU de VM que soportan su carga de trabajo.

  • Asegúrese de aplicar revisiones y actualizaciones de seguridad oportunas y automatizadas. Asegúrese de que las actualizaciones se implementan y validan automáticamente mediante un proceso bien definido. Use una solución como Azure Automation para administrar las actualizaciones del sistema operativo y mantener el cumplimiento de seguridad mediante la realización de actualizaciones críticas.

  • Identifique las máquinas virtuales que contienen el estado. Asegúrese de que los datos se clasifican según las etiquetas de confidencialidad que proporciona la organización. Proteja los datos mediante controles de seguridad como los niveles adecuados de cifrado en reposo y en tránsito. Si tiene requisitos de alta confidencialidad, considere la posibilidad de usar controles de alta seguridad como el cifrado doble y la computación confidencial de Azure para proteger los datos en uso.

  • Proporcione segmentación a las máquinas virtuales y los conjuntos de escalado estableciendo límites de red y controles de acceso. Coloque máquinas virtuales en grupos de recursos que compartan el mismo ciclo de vida.

  • Aplique controles de acceso a las identidades que intentan llegar a las máquinas virtuales y también a las máquinas virtuales que lleguen a otros recursos. Use Microsoft Entra ID para las necesidades de autenticación y autorización. Coloque contraseñas seguras, autenticación multifactor y control de acceso basado en rol (RBAC) para las máquinas virtuales y sus dependencias, como secretos, para permitir que las identidades permitidas realicen solo las operaciones que se esperan de sus roles.

    Restrinja el acceso a los recursos en función de las condiciones mediante el acceso condicional de Microsoft Entra. Defina las directivas condicionales según la duración y el conjunto mínimo de permisos necesarios.

  • Use controles de red para restringir el tráfico de entrada y salida. Aísle las máquinas virtuales y los conjuntos de escalado en Azure Virtual Network y defina grupos de seguridad de red para filtrar el tráfico. Protección contra ataques de denegación de servicio distribuido (DDoS). Use equilibradores de carga y reglas de firewall para protegerse contra ataques malintencionados de tráfico y filtración de datos.

    Use Azure Bastion para proporcionar conectividad más segura a las máquinas virtuales para el acceso operativo.

    La comunicación hacia y desde las máquinas virtuales a las soluciones de plataforma como servicio (PaaS) debe ser a través de puntos de conexión privados.

  • Reduzca la superficie expuesta a ataques mediante la protección de imágenes del sistema operativo y la eliminación de componentes sin usar. Use imágenes más pequeñas y quite archivos binarios que no sean necesarios para ejecutar la carga de trabajo. Optimice las configuraciones de la máquina virtual eliminando características, como cuentas y puertos predeterminados, que no necesita.

  • Proteja secretos como los certificados que necesita para proteger los datos en tránsito. Considere la posibilidad de usar la extensión de Azure Key Vault para Windows o Linux que actualice automáticamente los certificados almacenados en un almacén de claves. Cuando detecta un cambio en los certificados, la extensión recupera e instala los certificados correspondientes.

  • Detección de amenazas. Supervise las máquinas virtuales para detectar amenazas y configuraciones incorrectas. Use Defender para servidores para capturar cambios en la máquina virtual y el sistema operativo y mantener una pista de auditoría de acceso, nuevas cuentas y cambios en los permisos.

  • Prevención de amenazas. Proteja contra ataques de malware y actores malintencionados mediante la implementación de controles de seguridad como firewalls, software antivirus y sistemas de detección de intrusiones. Determine si se requiere un entorno de ejecución de confianza (TEE).

Recomendaciones

Recomendación Ventajas
(Conjunto de escalado) Asigne una identidad administrada a conjuntos de escalado. Todas las máquinas virtuales del conjunto de escalado obtienen la misma identidad a través del perfil de máquina virtual especificado.

(VMs) También puede asignar una identidad administrada a máquinas virtuales individuales al crearlas y, a continuación, agregarlas a un conjunto de escalado si es necesario.
Cuando las máquinas virtuales se comunican con otros recursos, cruzan un límite de confianza. Los conjuntos de escalado y las máquinas virtuales deben autenticar su identidad antes de permitir la comunicación. Microsoft Entra ID controla esa autenticación mediante identidades administradas.
(Conjunto de escalado) Elija SKUs de máquinas virtuales que tengan características de seguridad.
Por ejemplo, algunas SKU admiten el cifrado de BitLocker y la computación confidencial proporciona cifrado de datos en uso.
Revise las características para comprender las limitaciones.
Las características proporcionadas por Azure se basan en señales que se capturan en muchos inquilinos y pueden proteger los recursos mejor que los controles personalizados. También puede usar directivas para aplicar esos controles.
(Máquinas virtuales, conjunto de escalado) Aplique etiquetas recomendadas por la organización en los recursos aprovisionados. El etiquetado es una manera común de segmentar y organizar los recursos y puede ser fundamental durante la administración de incidentes. Para obtener más información, vea Propósito de nomenclatura y etiquetado.
(Máquinas virtuales, conjunto de escalado) Establezca un perfil de seguridad con las características de seguridad que desea habilitar en la configuración de la máquina virtual.
Por ejemplo, al especificar el cifrado en el host en el perfil, los datos almacenados en el host de máquina virtual se cifran en reposo y los flujos se cifran en el servicio de almacenamiento.
Las características del perfil de seguridad se habilitan automáticamente cuando se crea la máquina virtual.
Para más información, consulte Línea de base de seguridad de Azure para Conjuntos de Escalas de Máquinas Virtuales.
(VM) Elija opciones de red seguras para el perfil de red de la máquina virtual.

No asocie directamente direcciones IP públicas a las máquinas virtuales y no habilite el reenvío IP.

Asegúrese de que todas las interfaces de red virtual tengan un grupo de seguridad de red asociado.
Puede establecer controles de segmentación en el perfil de red.
Los atacantes examinan las direcciones IP públicas. Esta actividad hace que las máquinas virtuales sean vulnerables a las amenazas.
(VM) Elija opciones de almacenamiento seguro para el perfil de almacenamiento de la máquina virtual.

Habilite el cifrado de disco y el cifrado de datos en reposo de forma predeterminada. Deshabilite el acceso de red pública a los discos de máquina virtual.
Deshabilitar el acceso a la red pública ayuda a evitar el acceso no autorizado a los datos y los recursos.
(Máquinas virtuales, conjunto de escalado) Incluya extensiones en las máquinas virtuales que protegen contra amenazas.
Por ejemplo
- Extensión de Key Vault para Windows y Linux
- Autenticación de Microsoft Entra ID
- Microsoft Antimalware para Azure Cloud Services y Virtual Machines
- Extensión azure Disk Encryption para Windows y Linux.
Las extensiones se usan para arrancar las máquinas virtuales con el software adecuado que protege el acceso a las máquinas virtuales y desde ellas.
Las extensiones proporcionadas por Microsoft se actualizan con frecuencia para mantenerse al día con los estándares de seguridad en constante evolución.

Optimización de costos

La optimización de costes se centra en detectar patrones de gasto, priorizar inversiones en áreas críticas y optimizar en otras para ajustarse al presupuesto de la organización al tiempo que se cumplen los requisitos empresariales.

Los Principios de Diseño de Optimización de Costos ofrecen una estrategia de diseño a nivel alto para lograr esos objetivos y hacer compensaciones según sea necesario en el diseño técnico relacionado con Máquinas Virtuales y su entorno.

Lista de comprobación de diseño

Comience su estrategia de diseño basándose en la lista de comprobación de revisión de diseño para Optimización de costes para inversiones. Ajuste el diseño para que la carga de trabajo esté alineada con el presupuesto asignado para la carga de trabajo. El diseño debe usar las funcionalidades adecuadas de Azure, supervisar las inversiones y encontrar oportunidades para optimizar con el tiempo.

  • Calcule los costos realistas. Use la calculadora de precios para calcular los costos de las máquinas virtuales. Identifique la mejor máquina virtual para la carga de trabajo mediante el selector de máquinas virtuales. Para obtener más información, consulte Precios de Linux y Windows .

  • Implementar límites de protección de costos. Use directivas de gobernanza para restringir los tipos de recursos, las configuraciones y las ubicaciones. Use RBAC para bloquear las acciones que pueden dar lugar a un exceso de gastos.

  • Elija los recursos adecuados. La selección de tamaños y SKU del plan de máquina virtual afectan directamente al costo general. Elija máquinas virtuales basadas en las características de la carga de trabajo. ¿La CARGA de trabajo consume mucha CPU o ejecuta procesos interrumpibles? Cada SKU tiene opciones de disco asociadas que afectan al costo total.

  • Elija las funcionalidades adecuadas para los recursos dependientes. Puede ahorrar costos de almacenamiento de copias de seguridad del nivel estándar de almacén mediante la capacidad reservada de almacenamiento de Azure Backup. Ofrece un descuento cuando se compromete a una reserva durante un año o tres años.

    El nivel de archivo de Azure Storage es un nivel sin conexión optimizado para almacenar datos de blobs a los que rara vez se accede. El nivel de acceso de archivo tiene el coste de almacenamiento más bajo, pero tiene mayores costes de recuperación de datos y mayor latencia en comparación con los niveles en línea frecuente y esporádico.

    Considere la posibilidad de usar la recuperación ante desastres de zona a zona para que las máquinas virtuales se recuperen del error del sitio, a la vez que reduce la complejidad de la disponibilidad mediante servicios con redundancia de zona. Puede haber beneficios de costos de una menor complejidad operativa.

  • Elija el modelo de facturación adecuado. Evalúe si los modelos basados en el compromiso para calcular optimizan los costos en función de los requisitos empresariales de la carga de trabajo. Tenga en cuenta estas opciones de Azure:

    • Reservas de Azure: pago por adelantado de cargas de trabajo predecibles para reducir los costos en comparación con los precios basados en el consumo.

      Importante

      Compre instancias reservadas para reducir los costos de Azure de las cargas de trabajo que tienen un uso estable. Administre el uso para asegurarse de que no paga por más recursos de los que usa. Mantenga las instancias reservadas sencillas y mantenga baja la sobrecarga de administración para reducir los costos.

    • Plan de ahorro: si se compromete a gastar una cantidad fija por hora en los servicios de proceso durante uno o tres años, este plan puede reducir los costos.
    • Ventaja híbrida de Azure: guarde al migrar las máquinas virtuales locales a Azure.
  • Supervisar el uso. Supervise continuamente los patrones de uso y detecte máquinas virtuales no utilizada o infrautilizadas. En esos casos, apague las instancias de máquina virtual cuando no estén en uso. La supervisión es un enfoque clave de excelencia operativa. Para obtener más información, consulte las recomendaciones de Excelencia operativa.

  • Busque formas de optimizar. Algunas estrategias incluyen elegir el enfoque más rentable entre aumentar los recursos de un sistema existente o escalar verticalmente y agregar más instancias de ese sistema o escalar horizontalmente. Puede descargar la demanda si la distribuye a otros recursos, o bien puede reducirla si implementa colas de prioridad, descarga de puerta de enlace, almacenamiento en búfer y limitación de velocidad. Para obtener más información, consulte las recomendaciones de Eficiencia del rendimiento.

Recomendaciones

Recomendación Ventajas
(Máquinas virtuales, conjunto de escalado) Elija el tamaño y la SKU del plan de máquina virtual adecuados. Identifique los mejores tamaños de máquina virtual para la carga de trabajo.
Use el selector de máquina virtual para identificar la mejor máquina virtual para la carga de trabajo. Consulte Precios de Windows y Linux .

En el caso de cargas de trabajo como trabajos de procesamiento por lotes muy paralelos que pueden tolerar algunas interrupciones, considere la posibilidad de usar máquinas virtuales de acceso puntual de Azure. Las máquinas virtuales de acceso puntual son adecuadas para experimentar, desarrollar y probar soluciones a gran escala.
Las SKU tienen un precio según las funcionalidades que ofrecen. Si no necesita funcionalidades avanzadas, no gaste de más en SKU.

Las máquinas virtuales puntuales aprovechan la capacidad sobrante en Azure a un costo menor.
(Conjunto de escalado) Combinar máquinas virtuales normales con máquinas virtuales puntuales.
La orquestación flexible le permite distribuir máquinas virtuales de acceso puntual en función de un porcentaje especificado.
Reducir los costos de infraestructura de proceso aplicando los grandes descuentos de las máquinas virtuales de acceso puntual.
(Conjunto de escalado) Disminuya el número de instancias de máquina virtual cuando disminuya la demanda.
Establezca una política de escalado hacia dentro basada en criterios.
El escalado de recursos cuando no están en uso reduce el número de máquinas virtuales que se ejecutan en el conjunto de escalado, lo que ahorra costos.
(VM) Detenga las máquinas virtuales durante las horas fuera del horario laboral. Puede usar la característica Start/Stop de Azure Automation y configurarla según sus necesidades empresariales. La característica Start/Stop es una opción de automatización de bajo costo que puede afectar significativamente a los costos de la instancia inactiva.
(VM) Libere los recursos de CPU mediante Azure Boost. Al descargar los procesos de virtualización del back-end, se liberan recursos de CPU para las máquinas virtuales huéspedes. Esta optimización da como resultado un rendimiento mejorado. Azure Boost solo está disponible en máquinas virtuales específicas, por lo que debe asegurarse de que también elija tamaños de máquina virtual que tengan Habilitado Azure Boost.
(Máquinas virtuales, conjunto de escalado) Aproveche la movilidad de licencias mediante la Ventaja híbrida de Azure. Las máquinas virtuales tienen una opción de licencia que le permite traer sus propias licencias locales del sistema operativo Windows Server a Azure.
Ventaja híbrida de Azure también le permite traer determinadas suscripciones de Linux a Azure.
Puede maximizar las licencias locales al obtener las ventajas de la nube.

Excelencia operativa

La excelencia operativa se centra principalmente en los procedimientos para las prácticas de desarrollo , la observabilidad y la administración de versiones.

Los principios de diseño de Excelencia Operativa proporcionan una estrategia de diseño de alto nivel para alcanzar los objetivos relacionados con los requisitos operativos del flujo de trabajo.

Lista de comprobación de diseño

Comience su estrategia de diseño basada en la Lista de Comprobación de Revisión de Diseño para la Excelencia Operativa para definir procesos de observabilidad, pruebas e implementación relacionados con máquinas virtuales y conjuntos de escalado.

  • Supervise las instancias de máquina virtual. Recopile registros y métricas de instancias de máquina virtual para supervisar el uso de recursos y medir el estado de las instancias. Algunas métricas comunes incluyen el uso de CPU, el número de solicitudes y la latencia de entrada y salida (E/S). Configure alertas de Azure Monitor para recibir notificaciones sobre problemas y para detectar cambios de configuración en su entorno.

  • Supervise el estado de las máquinas virtuales y sus dependencias.

    • Implemente componentes de supervisión para recopilar registros y métricas que proporcionan una vista completa de las máquinas virtuales, el sistema operativo invitado y los datos de diagnóstico de arranque. Los conjuntos de escalado de máquinas virtuales agrupan la telemetría, lo que permite ver las métricas de estado a nivel individual de máquina virtual o como conjunto. Use Azure Monitor para ver estos datos para cada máquina virtual o agregarlos en varias máquinas virtuales. Para obtener más información, consulte Recomendaciones sobre agentes de supervisión.
    • Aproveche los componentes de red que comprueban el estado de mantenimiento de las máquinas virtuales. Por ejemplo, Azure Load Balancer envía señales a las máquinas virtuales para detectar máquinas virtuales defectuosas y redirigir el tráfico de manera adecuada.
    • Configure reglas de alertas de Azure Monitor. Determine las condiciones importantes de los datos de supervisión para identificar y solucionar problemas antes de que afecten al sistema.
  • Cree un plan de mantenimiento que incluya la aplicación de revisiones normales del sistema como parte de las operaciones rutinarias. Incluya procesos de emergencia que permitan una aplicación de parches inmediata. Puede tener procesos personalizados para gestionar parches o delegar parcialmente la tarea a Azure. Azure proporciona características para el mantenimiento de máquinas virtuales individuales. Puede configurar ventanas de mantenimiento para minimizar las interrupciones durante las actualizaciones. Durante las actualizaciones de la plataforma, las consideraciones de dominio de error son clave para la resistencia. Se recomienda implementar al menos dos instancias en una zona. Dos máquinas virtuales por zona garantizan un mínimo de una máquina virtual en cada zona porque solo se actualiza un dominio de error de una zona a la vez. Por tanto, para tres zonas, aprovisione al menos seis instancias.

  • Automatice los procesos para arrancar, ejecutar scripts y configurar máquinas virtuales. Puede automatizar los procesos mediante extensiones o scripts personalizados. Se recomiendan las siguientes opciones:

    • La extensión de máquina virtual de Key Vault actualiza automáticamente los certificados almacenados en un almacén de claves.

    • La extensión de script personalizado de Azure para Windows y Linux descarga y ejecuta scripts en máquinas virtuales. Use esta extensión para la configuración posterior a la implementación, la instalación de software o cualquier otra tarea de configuración o administración.

    • Use cloud-init para configurar el entorno de inicio para máquinas virtuales basadas en Linux.

  • Tener procesos para instalar actualizaciones automáticas. Considere la posibilidad de usar la aplicación de revisión automática de máquina virtual para una implementación oportuna de revisiones críticas y de seguridad. Use Azure Update Manager para administrar las actualizaciones del sistema operativo de las máquinas virtuales Windows y Linux en Azure.

  • Cree un entorno de prueba que coincida estrechamente con el entorno de producción para probar las actualizaciones y los cambios antes de implementarlos en producción. Tener procesos implementados para probar las actualizaciones de seguridad, las líneas de base de rendimiento y los errores de confiabilidad. Aproveche las bibliotecas de errores de Azure Chaos Studio para insertar y simular condiciones de error. Para más información, consulte Biblioteca de acciones y errores de Azure Chaos Studio.

  • Administrar la cuota. Planee qué nivel de cuota requiere la carga de trabajo y revise ese nivel con regularidad a medida que evoluciona la carga de trabajo. Si necesita aumentar o disminuir la cuota, solicite esos cambios al principio.

Recomendaciones

Recomendación Ventajas
(Conjunto de escalado) Los conjuntos de escalado de máquinas virtuales en modo de orquestación flexible pueden ayudar a simplificar la implementación y administración de la carga de trabajo. Por ejemplo, puede administrar fácilmente la autocuración mediante reparaciones automáticas. La orquestación flexible puede administrar instancias de máquina virtual a escala. La entrega de máquinas virtuales individuales agrega sobrecarga operativa.

Por ejemplo, al eliminar instancias de máquina virtual, tiene la opción de eliminar o conservar discos y NIC asociados a la máquina virtual. Las instancias de máquina virtual se pueden distribuir entre varios dominios de error para que las operaciones de actualización no interrumpan el servicio.

Puede usar todas las API de máquina virtual estándar al administrar instancias de orquestación flexibles. Las máquinas virtuales Linux y Windows pueden residir en el mismo conjunto de escalado flexible, lo que simplifica la administración de cargas de trabajo heterogéneas.
(Conjunto de escalado) La asociación o desasociación de una sola máquina virtual de instancia a o desde conjuntos de escalado de máquinas virtuales en modo de orquestación flexible le ofrece la flexibilidad de responder a las necesidades operativas sin volver a implementar la infraestructura. La conexión de máquinas virtuales le permite incorporar máquinas virtuales existentes bajo la administración de VMSS Flex, lo que permite un control centralizado sobre las actualizaciones, el escalado y la supervisión.

Desasociar máquinas virtuales de VMSS Flex le permite aislar una máquina virtual para solucionar problemas o una configuración especial sin interrumpir el resto del conjunto de escalado.
(Conjunto de escalado) Mantenga actualizadas las máquinas virtuales estableciendo una directiva de actualización. Se recomienda realizar actualizaciones graduales. Sin embargo, si necesita un control pormenorizado, elija actualizar manualmente.

Para la orquestación flexible, puede usar Azure Update Manager.
La seguridad es la razón principal de las actualizaciones. Las garantías de seguridad de las instancias no deben decaer con el tiempo.

Las actualizaciones graduales se realizan en lotes. Este enfoque garantiza que todas las instancias no estén inactivas al mismo tiempo.
(Máquinas virtuales, conjunto de escalado) Implemente automáticamente aplicaciones de máquina virtual desde Azure Compute Gallery mediante la definición de las aplicaciones en el perfil. Las máquinas virtuales del conjunto de escalado se crean y las aplicaciones especificadas están preinstaladas, lo que facilita la administración.
Instale componentes de software precompilados como extensiones como parte del arranque.

Azure admite muchas extensiones que se pueden usar para configurar, supervisar, proteger y proporcionar aplicaciones de utilidad para las máquinas virtuales.

Habilite las actualizaciones automáticas en las extensiones.
Las extensiones pueden ayudar a simplificar la instalación de software a escala sin tener que instalar, configurar o actualizarla manualmente en cada máquina virtual.
(Máquinas virtuales, conjunto de escalado) Supervise y mida el estado de las instancias de máquina virtual.

Implemente la extensión monitor agent en las máquinas virtuales para recopilar datos de supervisión del sistema operativo invitado con reglas de recopilación de datos específicas del sistema operativo.

Habilite VM Insights para supervisar el estado y el rendimiento y ver las tendencias de los datos recopilados.

Use diagnósticos de arranque para obtener información cuando las máquinas virtuales se inician. Los diagnósticos de arranque también diagnostican errores de arranque.
Los datos de supervisión están en el núcleo de la resolución de incidentes. Una pila de supervisión completa proporciona información sobre cómo funcionan las máquinas virtuales y su estado. Al supervisar continuamente las instancias, puede estar preparado para enfrentar o prevenir fallos, como la sobrecarga de rendimiento y problemas de confiabilidad.

Eficiencia del rendimiento

La eficiencia del rendimiento consiste en mantener la experiencia del usuario incluso cuando hay un aumento de la carga mediante la administración de la capacidad. La estrategia incluye el escalado de recursos, la identificación y la optimización de posibles cuellos de botella y la optimización del rendimiento máximo.

Los principios de diseño eficiencia del rendimiento proporcionan una estrategia de diseño de alto nivel para lograr esos objetivos de capacidad con respecto al uso esperado.

Lista de comprobación de diseño

Comience su estrategia de diseño basándose en la lista de comprobación de revisión de diseño para Eficiencia del rendimiento. Defina una línea base basada en indicadores clave de rendimiento para máquinas virtuales y conjuntos de escalado.

  • Definir objetivos de rendimiento. Identifique las métricas de máquina virtual para realizar un seguimiento y medir los indicadores de rendimiento como tiempo de respuesta, uso de CPU y uso de memoria, así como métricas de carga de trabajo, como transacciones por segundo, usuarios simultáneos y disponibilidad y estado.

  • Tenga en cuenta el perfil de rendimiento de las máquinas virtuales, los conjuntos de escalado y la configuración de disco en el planeamiento de la capacidad. Cada SKU tiene un perfil diferente de memoria y CPU y se comporta de forma diferente en función del tipo de carga de trabajo. Realice pilotos y pruebas de concepto para comprender el comportamiento del rendimiento en la carga de trabajo específica.

  • Ajuste del rendimiento de la máquina virtual. Aproveche la optimización del rendimiento y mejore las características según sea necesario para la carga de trabajo. Por ejemplo, utilice la Memoria No Volátil Express (NVMe) adjunto localmente para casos de uso de alto rendimiento y las redes aceleradas, y utilice el SSD Premium v2 para mejorar el rendimiento y la escalabilidad.

  • Tenga en cuenta los servicios dependientes. Las dependencias de carga de trabajo, como el almacenamiento en caché, el tráfico de red y las redes de entrega de contenido, que interactúan con las máquinas virtuales pueden afectar al rendimiento. Además, considere la distribución geográfica, como las zonas y regiones, que puede agregar latencia.

  • Recopile datos de rendimiento. Siga los procedimientos recomendados de excelencia operativa para supervisar e implementar las extensiones adecuadas para ver las métricas que realizan un seguimiento de los indicadores de rendimiento.

  • Grupos de selección de ubicación por proximidad. Use grupos de selección de ubicación de proximidad en cargas de trabajo en las que se requiera baja latencia para asegurarse de que las máquinas virtuales se encuentran físicamente cerca entre sí.

Recomendaciones

Recomendación Ventajas
(Máquinas virtuales, conjunto de escalado) Elija SKU para máquinas virtuales que se alineen con el planeamiento de capacidad.

Tenga una buena comprensión de los requisitos de carga de trabajo, incluido el número de núcleos, memoria, almacenamiento y ancho de banda de red para que pueda filtrar las SKU no adecuadas.
La asignación de derechos a las máquinas virtuales es una decisión fundamental que afecta significativamente al rendimiento de la carga de trabajo. Sin el conjunto correcto de máquinas virtuales, puede experimentar problemas de rendimiento y acumular costos innecesarios.
(Máquinas virtuales, conjunto de escalado) Implemente máquinas virtuales de carga de trabajo sensibles a la latencia en grupos de selección de ubicación por proximidad. Los grupos de selección de ubicación por proximidad reducen la distancia física entre los recursos de proceso de Azure, lo que puede mejorar el rendimiento y reducir la latencia de red entre máquinas virtuales independientes, máquinas virtuales de varios conjuntos de disponibilidad o máquinas virtuales en varios conjuntos de escalado.
(VM) Considere la posibilidad de habilitar las redes aceleradas. Habilita la virtualización de E/S raíz única (SR-IOV) en una máquina virtual, lo que mejora considerablemente su rendimiento de red.
(Máquinas virtuales, conjunto de escalado) Establezca reglas de escalado automático para aumentar o disminuir el número de instancias de máquina virtual del conjunto de escalado en función de la demanda. Si aumenta la demanda de la aplicación, la carga de las instancias de máquina virtual del conjunto de escalado aumenta. Las reglas de escalado automático garantizan que tiene suficientes recursos para satisfacer la demanda.

Directivas de Azure

Azure proporciona un amplio conjunto de directivas integradas relacionadas con las máquinas virtuales y sus dependencias. Algunas de las recomendaciones anteriores se pueden auditar mediante Azure Policy. Por ejemplo, puede comprobar si:

  • El cifrado está habilitado en el nivel de host. Asegúrese de que el cifrado está habilitado en el nivel de host para proporcionar seguridad adicional para los datos de la máquina virtual.

  • Se implementan extensiones antimalware. Compruebe que las extensiones antimalware se implementan en máquinas virtuales que ejecutan Windows Server y establecen actualizaciones automáticas para garantizar la protección en curso.

  • El parcheo automático de imágenes del SO está habilitado. Compruebe que la aplicación de revisión automática de imagen del sistema operativo está habilitada en conjuntos de escalado para asegurarse de que sus VMs permanezcan actualizadas con las revisiones de seguridad.

  • Solo se instalan extensiones de máquina virtual aprobadas. Compruebe que solo las extensiones aprobadas están instaladas en las máquinas virtuales. Este enfoque ayuda a minimizar el riesgo de vulnerabilidades de seguridad.

  • Los agentes de monitorización y de dependencia están habilitados. Asegúrese de que el agente de supervisión y los agentes de dependencia están habilitados en todas las máquinas virtuales nuevas para facilitar la supervisión y la administración de dependencias.

  • Solo se implementan las SKU de máquina virtual permitidas. Confirme que solo se implementan las SKU de máquina virtual aprobadas. Esta directiva garantiza el cumplimiento de las restricciones de costos y los requisitos de recursos.

  • Los puntos de conexión privados se usan para el acceso al disco. Asegúrese de que los puntos de conexión privados se usan para acceder de forma segura a los recursos de disco. Este enfoque ayuda a evitar la exposición a redes públicas.

  • La detección de vulnerabilidades está habilitada. Habilite la detección de vulnerabilidades para las máquinas virtuales. En el caso de las máquinas Windows, configure reglas como exámenes diarios con antivirus de Microsoft Defender para detectar posibles amenazas.

Para una gobernanza completa, revise las definiciones integradas de Azure Policy para máquinas virtuales y otras directivas que podrían afectar a la seguridad de la capa de proceso.

Recomendaciones de Azure Advisor

Azure Advisor es un consultor en la nube personalizado que le ayuda a seguir los procedimientos recomendados para optimizar las implementaciones de Azure.

Para más información, consulte Azure Advisor.

Tenga en cuenta los siguientes artículos como recursos que muestran las recomendaciones resaltadas en este artículo.