Administración del escalado horizontal de clústeres en Azure Data Explorer para ajustarse a los cambios en la demanda

Ajustar el tamaño de un clúster de forma adecuada es fundamental para el rendimiento del Explorador de datos de Azure. El tamaño de un clúster estático puede provocar una infrautilización o sobreutilización, y ninguna de estas situaciones es la ideal. Dado que la demanda en un clúster no se puede predecir con precisión absoluta, es mejor escalar el clúster mediante la adición y la eliminación de recursos de CPU y capacidad según los cambios en la demanda.

Existen dos flujos de trabajo de escalado para un clúster de Azure Data Explorer:

  • Escalado horizontal, también denominado reducción horizontal.
  • Escalado vertical, también denominado reducción vertical. En este artículo se explica el flujo de trabajo del escalado horizontal.

Configuración del escalado horizontal

El escalado horizontal permite escalar el recuento de instancias automáticamente en función de programaciones y reglas predefinidas. Para especificar la configuración de escalabilidad automática del clúster:

  1. En Azure Portal, vaya al recurso de clúster de Azure Data Explorer. En Configuración, seleccione Escalar horizontalmente.

  2. En la ventana Escalar horizontalmente, seleccione el método de escalado automático que quiera: Escala manual, Optimized autoscale (Escalabilidad automática optimizada) o Custom autoscale (Escalabilidad automática personalizada).

Escala manual

En la opción de escalado manual, el clúster tiene una capacidad estática que no cambia automáticamente. Seleccione la capacidad estática mediante la barra Recuento de instancias . El escalado del clúster permanece en la configuración seleccionada hasta que cambie.

Método de escala manual.

La escalabilidad automática optimizada es la configuración predeterminada durante la creación del clúster y el método de escalado recomendado. Este método optimiza el rendimiento y los costes del clúster, como se muestra a continuación:

  • Si el clúster está infrautilizado, se reduce horizontalmente para reducir el costo sin afectar al rendimiento necesario.
  • Si el clúster está sobreutilizado, se escala horizontalmente para mantener un rendimiento óptimo.

Para configurar la escalabilidad automática optimizada:

  1. Seleccione Optimized autoscale (Escalabilidad automática optimizada).

  2. Especifique un recuento de instancias mínimo y máximo. El escalado automático del clúster oscila entre estos valores en función de la carga.

  3. Seleccione Guardar.

    Método de escalabilidad automática optimizada.

El escalado automático optimizado empieza a funcionar. Sus acciones se pueden ver en el registro de actividad del clúster en Azure.

Lógica de la escalabilidad automática optimizada

El escalado automático optimizado se administra mediante lógica predictiva o reactiva. La lógica predictiva realiza un seguimiento del patrón de uso del clúster y, cuando identifica la estacionalidad con una confianza alta, administra el escalado del clúster. Por otro lado, la lógica reactiva realiza un seguimiento del uso real del clúster, que se emplea para tomar decisiones sobre las operaciones de escalado del clúster en función del nivel actual de uso de recursos.

Las métricas principales de los flujos predictivos y reactivos son:

  • CPU
  • Factor de uso de la caché
  • Uso de la ingesta

Tanto la lógica predictiva como la reactiva enlazan con los límites de tamaño del clúster, el número mínimo y máximo de instancias, tal y como se define en la configuración de escalado automático optimizada. Las operaciones frecuentes de escalado horizontal y reducción horizontal del clúster no son deseables debido al impacto en los recursos del clúster y el tiempo necesario para agregar o quitar instancias, así como para reequilibrar la caché activa en todos los nodos.

Escalabilidad automática predictiva

La lógica predictiva hace una previsión del uso del clúster para el día siguiente en función del patrón de uso de las últimas semanas. La previsión se usa para crear una programación de operaciones de reducción horizontal o escalado horizontal para ajustar el tamaño del clúster con antelación. Esto permite que el escalado del clúster y el reequilibrio de datos se completen a tiempo para el cambio de la carga. Esta lógica es especialmente eficaz para patrones estacionales, como picos de uso diarios o semanales.

Sin embargo, en escenarios en los que hay un pico único de uso que supera la previsión, el escalado automático optimizado utilizará la lógica reactiva. Cuando esto sucede, las operaciones de reducción horizontal o escalado horizontal se realizan ad hoc en función del nivel más reciente de uso de los recursos.

Escalado automático reactivo

Escalado horizontal

Cuando el clúster se aproxima a un estado de sobreutilización, se llevará a cabo una operación de escalado horizontal para mantener un rendimiento óptimo. Se realiza una operación de escalado horizontal cuando se produce al menos una de las siguientes condiciones:

  • La utilización de la memoria caché sea alta durante más de una hora.
  • La utilización de la CPU sea alta durante más de una hora.
  • La utilización de la ingesta sea alta durante más de una hora.

Reducción horizontal

Cuando el clúster está infrautilizado, se llevará a cabo una operación de reducción horizontal para reducir el costo y, al mismo tiempo, mantener un rendimiento óptimo. Se usan varias métricas para comprobar que es seguro reducir horizontalmente en el clúster.

Para garantizar que no haya ninguna sobrecarga en los recursos, se evalúan las siguientes métricas antes de llevar a cabo la reducción horizontal:

  • El uso de la memoria caché no es alto
  • La CPU se usa por debajo del promedio
  • La utilización de la ingesta está por debajo del promedio
  • Si se usa la ingesta de streaming, este uso no es elevado
  • La métrica Keep Alive está por encima del mínimo definido y se procesa correctamente y a tiempo, lo que indica que el clúster responde
  • No hay ninguna limitación de consultas
  • El número de consultas con errores es inferior al mínimo definido.

Nota:

La lógica de reducción horizontal requiere una evaluación de 1 día antes de la implementación de la reducción horizontal optimizada. Esta evaluación tiene lugar una vez cada hora. Si se necesita un cambio inmediato, use el escalado manual.

Escalabilidad automática personalizada

Aunque la escalabilidad automática optimizada es la opción de escalado recomendada, también se admite la escalabilidad automática personalizada de Azure. Al usar la escalabilidad automática personalizada, puede escalar dinámicamente el clúster en función de las métricas que especifique. Siga estos pasos para configurar el escalado automático personalizado.

Regla de escalado.

  1. En el cuadro Nombre del ajuste de escalabilidad automática, escriba un nombre, por ejemplo, Scale-out: cache utilization (Escalado horizontal: utilización de caché).

  2. En Modo de escala, seleccione Escalado basado en una métrica. Este modo proporciona escalado dinámico. También puede seleccionar Escalar a un número específico de instancias.

  3. Seleccione +Agregar una regla.

  4. En la sección Escalar regla de la derecha, proporcione valores para cada opción.

    Criterios

    Configuración Descripción y valor
    Agregación de tiempo Seleccione un criterio de agregación, como Promedio.
    Nombre de la métrica Seleccione la métrica en la que quiera que se base la operación de escalado, como Cache Utilization.
    Estadísticas de intervalo de agregación Elija entre Promedio, Mínimo, Máximo y Suma.
    Operador Elija la opción adecuada, como Mayor o igual que.
    Umbral Elija un valor apropiado. Por ejemplo, para el uso de memoria caché, el 80 % es un buen punto inicial.
    Duración (en minutos) Elija un período apropiado para que el sistema busque al calcular las métricas. Comience con el valor predeterminado de 10 minutos.

    Acción

    Configuración Descripción y valor
    operación Elija la opción adecuada para reducir o escalar horizontalmente.
    Recuento de instancias Elija el número de nodos o instancias que quiere agregar o quitar cuando se cumpla una condición de métrica.
    Tiempo de finalización (minutos) Elija un intervalo de tiempo adecuado para esperar entre las operaciones de escalado. Comience con el valor predeterminado de cinco minutos.
  5. Seleccione Agregar.

  6. En la sección Límites de instancia de la izquierda, proporcione valores para cada opción.

    Configuración Descripción y valor
    Mínimo Número de instancias por debajo del cual el clúster no se escalará, independientemente del uso.
    Máximo Número de instancias por encima del cual el clúster no se escalará, independientemente del uso.
    Valor predeterminado El número predeterminado de instancias. Esta configuración se utiliza si hay problemas con la lectura de las métricas de recursos.
  7. Seleccione Guardar.

Ha configurado el escalado horizontal para el clúster de Azure Data Explorer. Agregue otra regla para el escalado vertical. Si necesita ayuda por problemas relacionados con el escalado de un clúster, abra una solicitud de soporte técnico en Azure Portal.