Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda> MapReduce Service> Pasos iniciales> Configuración del escalado automático para un clúster MRS
Actualización más reciente 2023-11-20 GMT+08:00

Configuración del escalado automático para un clúster MRS

En escenarios de aplicaciones de big data, especialmente análisis y procesamiento de datos en tiempo real, el número de nodos de clúster debe ajustarse dinámicamente de acuerdo con los cambios en el volumen de datos para proporcionar recursos adecuados. La función de escalado automático de MRS permite que los clústeres sean escalados automáticamente o en función de la carga del clúster.

  • Reglas de escalado automático: puede aumentar o disminuir los nodos de tarea en función de las cargas de clúster en tiempo real. El escalado automático se activará cuando el volumen de datos cambie, pero puede haber algunos retrasos.
  • Plan de recursos (configuración de la cantidad de nodo de tarea en función del intervalo de tiempo): Si el volumen de datos cambia periódicamente, puede crear planes de recursos para cambiar el tamaño del clúster antes de que cambie el volumen de datos, evitando así retrasos en el aumento o la disminución de recursos.

Puede configurar reglas de escalado automático o planes de recursos o ambos para activar el escalado automático.

Escenario

En el ejemplo siguiente se describe cómo utilizar las reglas de escalado automático y los planes de recursos:

Un servicio de procesamiento en tiempo real observa un aumento inestable en el volumen de datos de 7:00 a 13:00 los lunes, martes y sábados. Por ejemplo, se requieren de 5 a 8 nodos de tarea de 7:00 a 13:00 los lunes, martes y sábado, y de 2 a 4 más allá de este período.

Puede establecer una regla de escalado automático basada en un plan de recursos. Cuando el volumen de datos excede el valor esperado, el número de nodos Task cambia con las cargas de recursos, sin exceder el rango de nodos especificado en el plan de recursos. Cuando se activa un plan de recursos, el número de nodos cambia dentro del rango especificado con un efecto mínimo. Es decir, aumentar los nodos hasta el límite superior y disminuir los nodos hasta el límite inferior.

Vídeo Tutorial

Este vídeo utiliza un clúster MRS 3.1.0 como ejemplo para describir cómo configurar una política de escalado automático cuando compra un clúster y cómo agregar una política de escalado automático a un clúster existente. Para obtener más información, consulte Configuración de escalado automático para un clúster MRS.

La interfaz de usuario puede variar según la versión. El video tutorial es solo para referencia.

Adición de un nodo de Task

Puede escalar un clúster de MRS agregando manualmente nodos de tarea.

Para agregar un nodo de tarea a un clúster personalizado, realice los siguientes pasos:

  1. En la página de detalles del clúster, haga clic en la pestaña Nodes y haga clic en Add Node Group. Se muestra la página Add Node Group.
  2. Seleccione NM para Deploy Roles y establezca otros parámetros según sea necesario.
Para agregar un nodo de task a un clúster no personalizado, realice los siguientes pasos:
  1. En la página de detalles del clúster, haga clic en la pestaña Nodes y haga clic en Configure Task Node. Se muestra la página Configure Task Node.
  2. En la página Configure Task Node, establezca Node Type, Instance Specifications, Nodes, System Disk. Además, si Add Data Disk está habilitado, configure el tipo de almacenamiento, el tamaño y el número de discos de datos.

  3. Haga clic en OK.

Uso de reglas de escalado automático y planes de recursos juntos

  1. Inicie sesión en la consola de gestión de MRS.
  2. Seleccione Clusters > Active Clusters, y haga clic en el nombre del clúster de destino. Se muestra la página de detalles del clúster.
  3. En la página que se muestra, haga clic en la pestaña Auto Scaling.
  4. Haga clic en Add Auto Scaling Policy y establezca Node Range en 2-4.

    Figura 1 Configuración del escalado automático

  5. Configurar un plan de recursos.

    1. Haga clic en Configure Node Range for Specific Time Range en Default Range.
    2. Configure los parámetros Time Range y Node Range.

      Time Range - Póngalo en 07:00-13:00.

      Node Range - Póngalo en 5-8.

      Figura 2 Escalamiento automático

  6. Configure una regla de escalado automático.

    1. Seleccione Scale-out.
    2. Haga clic en Add Rule a la derecha.
      Figura 3 Adición de una regla

      Rule Name: default-expand-2.

      If: Seleccione los objetos de regla y las restricciones en los cuadros de lista desplegables; por ejemplo, YARNAppRunning es mayor que 75.

      Last For: Póngalo en 1 five-minute periods.

      Add: Póngalo en 1 node.

      Cooldown Period: Póngalo en 20 minutes.

    3. Haga clic en OK.

  7. Seleccione I agree to authorize MRS to scale out or in nodes based on the above rule.
  8. Haga clic en OK.

Información de referencia

Al agregar una regla, puede consultar Tabla 1 para configurar las métricas correspondientes.
  • Los clústeres híbridos admiten todas las métricas de los clústeres de análisis y streaming.
  • La precisión de los diferentes tipos de valores de Tabla 1 es la siguiente:
    • Integer: entero
    • Percentage: 0.01
    • Ratio: 0.01
Tabla 1 Métricas de escalado automático

Tipo de clúster

Métrica

Tipo de valor

Descripción

Clúster de streaming

StormSlotAvailable

Integer

Número de slot de Storm disponibles.

Rango de valores: 0 a 2147483646.

StormSlotAvailablePercentage

Percentage

Porcentaje de slot de Storm disponibles, es decir, la proporción de slot disponibles respecto al total de slot.

Rango de valores: 0 a 100.

StormSlotUsed

Integer

Número de slot de Storm usadas.

Rango de valores: 0 a 2147483646.

StormSlotUsedPercentage

Percentage

Porcentaje de las slot usadas de Storm, es decir, la proporción de las slot usadas con respecto al total de slot.

Rango de valores: 0 a 100.

StormSupervisorMemAverageUsage

Integer

Uso medio de memoria del proceso Supervisor de Storm.

Rango de valores: 0 a 2147483646.

StormSupervisorMemAverageUsagePercentage

Percentage

Porcentaje medio de la memoria utilizada del proceso Supervisor de Storm con respecto a la memoria total del sistema.

Rango de valores: 0 a 100.

StormSupervisorCPUAverageUsagePercentage

Percentage

Porcentaje promedio de las CPU usadas del proceso Supervisor de Storm con respecto al total de CPU.

Rango de valores: [0, 6000].

Clúster de análisis

YARNAppPending

Integer

Número de tareas pendientes en Yarn.

Rango de valores: 0 a 2147483646.

YARNAppPendingRatio

Ratio

Relación de tareas pendientes en Yarn, es decir, la relación entre tareas pendientes y tareas en ejecución en Yarn.

Rango de valores: 0 a 2147483646.

YARNAppRunning

Integer

Número de tareas en ejecución en Yarn.

Rango de valores: 0 a 2147483646.

YARNContainerAllocated

Integer

Número de los container asignados a YARN.

Rango de valores: 0 a 2147483646.

YARNContainerPending

Integer

Número de los container pendientes en Yarn.

Rango de valores: 0 a 2147483646.

YARNContainerPendingRatio

Ratio

Relación de los container pendientes en Yarn, es decir, la relación de los container pendientes a los containers en ejecución en Yarn.

Rango de valores: 0 a 2147483646.

YARNCPUAllocated

Integer

Número de CPU virtuales (vCPUs) asignadas a Yarn.

Rango de valores: 0 a 2147483646.

YARNCPUAvailable

Integer

Número de las vCPU disponibles en Yarn.

Rango de valores: 0 a 2147483646.

YARNCPUAvailablePercentage

Percentage

Porcentaje de las vCPU disponibles en Yarn, es decir, la proporción de vCPU disponibles respecto al total de vCPU.

Rango de valores: 0 a 100.

YARNCPUPending

Integer

Número de vCPU pendientes en Yarn.

Rango de valores: 0 a 2147483646.

YARNMemoryAllocated

Integer

Memoria asignada a Yarn. La unidad es MB.

Rango de valores: 0 a 2147483646.

YARNMemoryAvailable

Integer

Memoria disponible en Yarn. La unidad es MB.

Rango de valores: 0 a 2147483646.

YARNMemoryAvailablePercentage

Percentage

Porcentaje de memoria disponible en Yarn, es decir, la proporción de memoria disponible a memoria total en Yarn.

Rango de valores: 0 a 100.

YARNMemoryPending

Integer

Memoria pendiente en Yarn.

Rango de valores: 0 a 2147483646.

Al agregar un plan de recursos, puede establecer parámetros haciendo referencia a Tabla 2.
Tabla 2 Conceptos de configuración de un plan de recursos

Parámetro

Descripción

Effective On

La fecha de entrada en vigor de un plan de recursos. Daily está seleccionado de forma predeterminada. También puede seleccionar uno o varios días de lunes a domingo.

Time Range

La hora de inicio y la hora de finalización de un plan de recursos son exactas a los minutos, con un valor que oscila entre 00:00 y 23:59. Por ejemplo, si un plan de recursos comienza a las 8:00 y termina a las 10:00, establezca este parámetro en 8:00-10:00. La hora de finalización debe ser al menos 30 minutos más tarde que la hora de inicio. Los intervalos de tiempo configurados para diferentes planes de recursos no pueden superponerse.

Node Range

El número de nodos de un plan de recursos varía entre 0 y 500. En el intervalo de tiempo especificado en el plan de recursos, si el número de nodos de tarea es menor que el número mínimo especificado de nodos, se incrementará al valor mínimo especificado del intervalo de nodos a la vez. Si el número de nodos de tarea es mayor que el número máximo de nodos especificado en el plan de recursos, la función de escalado automático reduce el número de nodos de tarea al valor máximo del intervalo de nodos a la vez. La cantidad mínima de nodos debe ser inferior o igual a la cantidad máxima de estos.