Escalado automático de clústeres de Azure HDInsightAutomatically scale Azure HDInsight clusters

La característica gratuita de escalabilidad automática de Azure HDInsight puede aumentar o disminuir automáticamente el número de nodos de trabajo del clúster en función de los criterios establecidos previamente.Azure HDInsight's free Autoscale feature can automatically increase or decrease the number of worker nodes in your cluster based on previously set criteria. La característica de escalabilidad automática funciona mediante el escalado del número de nodos dentro de los límites preestablecidos en función de las métricas de rendimiento o de una programación de las operaciones de escalado y reducción vertical.The Autoscale feature works by scaling the number of nodes within preset limits based on either performance metrics or a schedule of scale-up and scale-down operations.

FuncionamientoHow it works

La característica de escalabilidad automática emplea dos tipos de condiciones para desencadenar eventos de escalado: umbrales para varias métricas de rendimiento del clúster (lo que se conoce como escalado basado en la carga) y desencadenadores basados en el tiempo (lo que se conoce como escalado basado en la programación).The Autoscale feature uses two types of conditions to trigger scaling events: thresholds for various cluster performance metrics (called load-based scaling) and time-based triggers (called schedule-based scaling). El escalado basado en cargas cambia el número de nodos del clúster, dentro de un intervalo establecido, para garantizar el uso de CPU óptimo y minimizar el costo de ejecución.Load-based scaling changes the number of nodes in your cluster, within a range that you set, to ensure optimal CPU usage and minimize running cost. El escalado basado en programación cambia el número de nodos del clúster en función de una programación de operaciones de escalado y reducción vertical.Schedule-based scaling changes the number of nodes in your cluster based on a schedule of scale-up and scale-down operations.

En el vídeo siguiente se proporciona información general sobre los desafíos que puede resolver la escalabilidad automática y cómo puede ayudarle a controlar los costos con HDInsight.The following video provides an overview of the challenges which Autoscale solves and how it can help you to control costs with HDInsight.

Elección del escalado basado en carga o basado en programaciónChoosing load-based or schedule-based scaling

Al elegir un tipo de escalado, tenga en cuenta los siguientes factores:Consider the following factors when choosing a scaling type:

  • Varianza de carga: ¿la carga del clúster sigue un patrón coherente a horas específicas en días específicos?Load variance: does the load of the cluster follow a consistent pattern at specific times, on specific days? Si no es así, la programación basada en carga es una mejor opción.If not, load based scheduling is a better option.
  • Requisitos de SLA: el escalado de escalabilidad automática es reactivo en lugar de predictivo.SLA requirements: Autoscale scaling is reactive instead of predictive. ¿Habrá una demora suficiente entre el momento en que la carga empieza a aumentar y el momento en que el clúster tiene que alcanzar su tamaño de destino?Will there be a sufficient delay between when the load starts to increase and when the cluster needs to be at its target size? Si los requisitos de SLA son estrictos y la carga es un patrón fijo conocido, la mejor opción es "basado en programación".If there are strict SLA requirements and the load is a fixed known pattern, 'schedule based' is a better option.

Métricas del clústerCluster metrics

La escalabilidad automática supervisa continuamente el clúster y recopila las métricas siguientes:Autoscale continuously monitors the cluster and collects the following metrics:

MétricaMetric DescripciónDescription
Total de CPU pendienteTotal Pending CPU El número total de núcleos necesarios para iniciar la ejecución de todos los contenedores pendientes.The total number of cores required to start execution of all pending containers.
Total de memoria pendienteTotal Pending Memory La memoria total (en MB) necesaria para iniciar la ejecución de todos los contenedores pendientes.The total memory (in MB) required to start execution of all pending containers.
Total de CPU libreTotal Free CPU La suma de todos los núcleos sin usar en los nodos de trabajo activos.The sum of all unused cores on the active worker nodes.
Total de memoria libreTotal Free Memory La suma de la memoria sin usar (en MB) en los nodos de trabajo activos.The sum of unused memory (in MB) on the active worker nodes.
Memoria usada por nodoUsed Memory per Node La carga en un nodo de trabajo.The load on a worker node. Un nodo de trabajo donde se usan 10 GB de memoria se considera bajo más carga que un trabajo con 2 GB de memoria usada.A worker node on which 10 GB of memory is used, is considered under more load than a worker with 2 GB of used memory.
Número de patrones de aplicación por nodoNumber of Application Masters per Node El número de contenedores de patrones de aplicación (AM) que se ejecutan en un nodo de trabajo.The number of Application Master (AM) containers running on a worker node. Un nodo de trabajo que hospeda dos contenedores de AM se considera más importante que un nodo de trabajo que no hospeda ninguno de estos contenedores.A worker node that is hosting two AM containers, is considered more important than a worker node that is hosting zero AM containers.

Las métricas anteriores se comprueban cada 60 segundos.The above metrics are checked every 60 seconds. Puede configurar las operaciones de escalado para el clúster mediante cualquiera de estas métricas.You can setup scaling operations for your cluster using any of these metrics.

Condiciones de escalado basado en la cargaLoad-based scale conditions

Cuando se detectan las condiciones siguientes, Escalabilidad automática emite una solicitud de escalado:When the following conditions are detected, Autoscale will issue a scale request:

Escalabilidad verticalScale-up Reducción verticalScale-down
El total de CPU pendiente es mayor que el total de CPU libre durante más de 3 minutos.Total pending CPU is greater than total free CPU for more than 3 minutes. El total de CPU pendiente es menor que el total de CPU libre durante más de 10 minutos.Total pending CPU is less than total free CPU for more than 10 minutes.
El total de memoria pendiente es mayor que el total de memoria libre durante más de 3 minutos.Total pending memory is greater than total free memory for more than 3 minutes. El total de memoria pendiente es menor que el total de memoria libre durante más de 10 minutos.Total pending memory is less than total free memory for more than 10 minutes.

En el caso del escalado vertical, la Escalabilidad automática emite una solicitud para agregar el número necesario de nodos.For scale-up, Autoscale issues a scale-up request to add the required number of nodes. El escalado vertical se basa en el número de nodos de trabajo nuevos que son necesarios para satisfacer los requisitos de CPU y memoria actuales.The scale-up is based on how many new worker nodes are needed to meet the current CPU and memory requirements.

En el caso de la reducción vertical, la Escalabilidad automática emite una solicitud para quitar un cierto número de nodos.For scale-down, Autoscale issues a request to remove a certain number of nodes. La reducción vertical se basa en el número de contenedores AM en cada nodoThe scale-down is based on the number of AM containers per node. y en los requisitos actuales de CPU y memoria.And the current CPU and memory requirements. El servicio detecta también qué nodos son candidatos para la eliminación en función de la ejecución del trabajo actual.The service also detects which nodes are candidates for removal based on current job execution. En primer lugar, la operación de reducción vertical retira los nodos y, luego, los quita del clúster.The scale down operation first decommissions the nodes, and then removes them from the cluster.

Compatibilidad con el clústerCluster compatibility

Importante

La característica de escalado automático de Azure HDInsight se lanzó con carácter general el 7 de noviembre de 2019 para los clústeres de Spark y Hadoop, e incluía mejoras que no están disponibles en la versión preliminar de la característica.The Azure HDInsight Autoscale feature was released for general availability on November 7th, 2019 for Spark and Hadoop clusters and included improvements not available in the preview version of the feature. Si creó un clúster de Spark antes del 7 de noviembre de 2019 y quiere usar la característica de escalado automático en el clúster, la ruta recomendada es crear un nuevo clúster y habilitar el escalado automático en el nuevo clúster.If you created a Spark cluster prior to November 7th, 2019 and want to use the Autoscale feature on your cluster, the recommended path is to create a new cluster, and enable Autoscale on the new cluster.

La escalabilidad automática de Interactive Query (LLAP) se publicó en disponibilidad general para HDI 4.0 el 27 de agosto de 2020.Autoscale for Interactive Query (LLAP) was released for general availability for HDI 4.0 on August 27th, 2020. Los clústeres de HBase todavía están en versión preliminar.HBase clusters are still in preview. El escalado automático solo está disponible en los clústeres de Spark, Hadoop, Interactive Query y HBase.Autoscale is only available on Spark, Hadoop, Interactive Query, and HBase clusters.

En la tabla siguiente se describen las versiones y los tipos de clúster que son compatibles con la característica de escalabilidad automática.The following table describes the cluster types and versions that are compatible with the Autoscale feature.

VersiónVersion SparkSpark HiveHive Interactive QueryInteractive Query HBaseHBase KafkaKafka StormStorm MLML
HDInsight 3.6 sin ESPHDInsight 3.6 without ESP Yes Yes Yes Sí*Yes* NoNo NoNo NoNo
HDInsight 4.0 sin ESPHDInsight 4.0 without ESP Yes Yes Yes Sí*Yes* NoNo NoNo NoNo
HDInsight 3.6 sin ESPHDInsight 3.6 with ESP Yes Yes Yes Sí*Yes* NoNo NoNo NoNo
HDInsight 4.0 con ESPHDInsight 4.0 with ESP Yes Yes Yes Sí*Yes* NoNo NoNo NoNo

* Los clústeres de HBase solo se pueden configurar para escalado basado en programación, no basado en cargas.* HBase clusters can only be configured for schedule-based scaling, not load-based.

IntroducciónGet started

Creación de un clúster con Escalabilidad automática basada en cargaCreate a cluster with load-based Autoscaling

Para habilitar la característica Escalabilidad automática con escalado basado en carga, complete estos pasos como parte del proceso de creación de clúster normal:To enable the Autoscale feature with load-based scaling, complete the following steps as part of the normal cluster creation process:

  1. En la pestaña Configuración y precios, marque la casilla Habilitar escalabilidad automática.On the Configuration + pricing tab, select the Enable autoscale checkbox.

  2. Seleccione Load-based (Basada en carga) en Tipo de escalabilidad automática.Select Load-based under Autoscale type.

  3. Escriba los valores previstos para estas propiedades:Enter the intended values for the following properties:

    • Número de nodos inicial para Nodo de trabajo.Initial Number of nodes for Worker node.
    • Número Mín. de nodos de trabajo.Min number of worker nodes.
    • Número Máx. de nodos de trabajo.Max number of worker nodes.

    Habilitación de la escalabilidad automática basada en carga del nodo de trabajo

El número inicial de nodos de trabajo debe estar comprendido entre los valores mínimo y máximo, ambos inclusives.The initial number of worker nodes must fall between the minimum and maximum, inclusive. Este valor define el tamaño inicial del clúster durante su creación.This value defines the initial size of the cluster when it's created. El número mínimo de nodos de trabajo debe establecerse en tres o más.The minimum number of worker nodes should be set to three or more. El escalado del clúster a menos de tres nodos puede hacer que se quede atascado en el modo seguro debido a una replicación de archivos insuficiente.Scaling your cluster to fewer than three nodes can result in it getting stuck in safe mode because of insufficient file replication. Para obtener más información, consulte Bloqueo en modo seguro.For more information, see Getting stuck in safe mode.

Creación de un clúster con Escalabilidad automática basada en programaciónCreate a cluster with schedule-based Autoscaling

Para habilitar la característica Escalabilidad automática con escalado basado en programación, complete estos pasos como parte del proceso de creación de clúster normal:To enable the Autoscale feature with schedule-based scaling, complete the following steps as part of the normal cluster creation process:

  1. En la pestaña Configuración y precios, active la casilla Habilitar escalabilidad automática.On the Configuration + pricing tab, check the Enable autoscale checkbox.

  2. Especifique el Número de nodos para Nodo de trabajo, que controla el límite para escalar verticalmente el clúster.Enter the Number of nodes for Worker node, which controls the limit for scaling up the cluster.

  3. Seleccione la opción Schedule-based (Basada en programación) en Tipo de escalabilidad automática.Select the option Schedule-based under Autoscale type.

  4. Seleccione Configurar para abrir la ventana Configuración de la escalabilidad automática.Select Configure to open the Autoscale configuration window.

  5. Seleccione la zona horaria y haga clic en + Agregar condición.Select your timezone and then click + Add condition

  6. Seleccione los días de la semana en que se deberá aplicar la condición nueva.Select the days of the week that the new condition should apply to.

  7. Edite la hora en que debería aplicarse la condición y el número de nodos a los que se debe escalar el clúster.Edit the time the condition should take effect and the number of nodes that the cluster should be scaled to.

  8. Si es necesario, agregue más condiciones.Add more conditions if needed.

    Habilitación de la creación basada en programación del nodo de trabajo

El número de nodos debe estar entre 3 y el número máximo de nodos de trabajo especificado antes de agregar condiciones.The number of nodes must be between 3 and the maximum number of worker nodes that you entered before adding conditions.

Pasos finales de creaciónFinal creation steps

Seleccione el tipo de máquina virtual de los nodos de trabajo; para ello, seleccione una máquina virtual en la lista desplegable de Tamaño del nodo.Select the VM type for worker nodes by selecting a VM from the drop-down list under Node size. Después de elegir el tipo de máquina virtual para cada tipo de nodo, puede ver el intervalo de costo estimado para todo el clúster.After you choose the VM type for each node type, you can see the estimated cost range for the whole cluster. Ajuste los tipos de máquina virtual que se ajusten a su presupuesto.Adjust the VM types to fit your budget.

Habilitación de la escalabilidad automática del tamaño del nodo basada en la programación del nodo de trabajo

La suscripción tiene una cuota de capacidad para cada región.Your subscription has a capacity quota for each region. El número total de núcleos de los nodos principales y el máximo de nodos de trabajo no puede superar la cuota de capacidad.The total number of cores of your head nodes and the maximum worker nodes can't exceed the capacity quota. Sin embargo, esta cuota tiene un límite flexible; sencillamente puede crear una incidencia de soporte técnico en cualquier momento para que la aumenten.However, this quota is a soft limit; you can always create a support ticket to get it increased easily.

Nota

Si se supera el límite de cuota de núcleos total, recibirá un mensaje de error que dice "the maximum node exceeded the available cores in this region, please choose another region or contact the support to increase the quota" (El nodo máximo superó los núcleos disponibles en esta región, elija otra región o póngase en contacto con soporte técnico para aumentar la cuota).If you exceed the total core quota limit, You will receive an error message saying 'the maximum node exceeded the available cores in this region, please choose another region or contact the support to increase the quota.'

Para obtener más información sobre la creación de clústeres de HDInsight con Azure Portal, consulte Crear clústeres basados en Linux en HDInsight con Azure Portal.For more information on HDInsight cluster creation using the Azure portal, see Create Linux-based clusters in HDInsight using the Azure portal.

Creación de un clúster con una plantilla del Administrador de recursosCreate a cluster with a Resource Manager template

Escalado automático basado en cargaLoad-based autoscaling

Para crear un clúster de HDInsight con el escalado automático basado en carga de una plantilla de Azure Resource Manager, agregue un nodo autoscale a la sección computeProfile > workernode con las propiedades minInstanceCount y maxInstanceCount, tal como se muestra en el fragmento de código JSON a continuación.You can create an HDInsight cluster with load-based Autoscaling an Azure Resource Manager template, by adding an autoscale node to the computeProfile > workernode section with the properties minInstanceCount and maxInstanceCount as shown in the json snippet below. Para obtener una plantilla de Resource Manager completa, consulte Plantilla de inicio rápido: Implementación de un clúster de Spark con la escalabilidad automática basada en carga habilitada.For a complete Resource Manager template see Quickstart template: Deploy Spark Cluster with load-based autoscale enabled.

{
  "name": "workernode",
  "targetInstanceCount": 4,
  "autoscale": {
      "capacity": {
          "minInstanceCount": 3,
          "maxInstanceCount": 10
      }
  },
  "hardwareProfile": {
      "vmSize": "Standard_D13_V2"
  },
  "osProfile": {
      "linuxOperatingSystemProfile": {
          "username": "[parameters('sshUserName')]",
          "password": "[parameters('sshPassword')]"
      }
  },
  "virtualNetworkProfile": null,
  "scriptActions": []
}

Escalado automático basado en programaciónSchedule-based autoscaling

Para crear un clúster de HDInsight con el escalado automático basado en programación de una plantilla de Azure Resource Manager, agregue un nodo autoscale a la sección computeProfile > workernode.You can create an HDInsight cluster with schedule-based Autoscaling an Azure Resource Manager template, by adding an autoscale node to the computeProfile > workernode section. El nodo autoscale contiene una recurrence que tiene una timezone y una schedule que describe cuándo se aplicará el cambio.The autoscale node contains a recurrence that has a timezone and schedule that describes when the change will take place. Para obtener una plantilla de Resource Manager completa, consulte Implementación de un clúster de Spark con la escalabilidad automática basada en programación habilitada.For a complete Resource Manager template, see Deploy Spark Cluster with schedule-based Autoscale Enabled.

{
  "autoscale": {
    "recurrence": {
      "timeZone": "Pacific Standard Time",
      "schedule": [
        {
          "days": [
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday"
          ],
          "timeAndCapacity": {
            "time": "11:00",
            "minInstanceCount": 10,
            "maxInstanceCount": 10
          }
        }
      ]
    }
  },
  "name": "workernode",
  "targetInstanceCount": 4
}

Habilitación y deshabilitación de escalabilidad automática para un clúster en ejecuciónEnable and disable Autoscale for a running cluster

Uso de Azure PortalUsing the Azure portal

Para habilitar la escalabilidad automática en un clúster en ejecución, seleccione Tamaño del clúster en Configuración.To enable Autoscale on a running cluster, select Cluster size under Settings. Después, seleccione Habilitar escalado automático.Then select Enable autoscale. Seleccione el tipo de escalabilidad automática que quiere y especifique las opciones de escalado basado en carga o basado en programación.Select the type of Autoscale that you want and enter the options for load-based or schedule-based scaling. Por último, seleccione Guardar.Finally, select Save.

Habilitación de la escalabilidad automática de la ejecución del clúster basada en programación del nodo de trabajo

Uso de la API de RESTUsing the REST API

Para habilitar o deshabilitar la Escalabilidad automática en un clúster en ejecución mediante la API REST, realice una solicitud POST al punto de conexión de escalado automático:To enable or disable Autoscale on a running cluster using the REST API, make a POST request to the Autoscale endpoint:

https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{CLUSTERNAME}/roles/workernode/autoscale?api-version=2018-06-01-preview

Use los parámetros adecuados en la carga de solicitud.Use the appropriate parameters in the request payload. La carga de JSON siguiente podría usarse para habilitar el escalado automático.The json payload below could be used to enable Autoscale. Use la carga {autoscale: null} para deshabilitar el escalado automático.Use the payload {autoscale: null} to disable Autoscale.

{ "autoscale": { "capacity": { "minInstanceCount": 3, "maxInstanceCount": 5 } } }

Vea la sección anterior sobre cómo habilitar el escalado automático basado en la carga para obtener una descripción completa de todos los parámetros de carga.See the previous section on enabling load-based autoscale for a full description of all payload parameters.

Supervisión de actividades de escalabilidad automáticaMonitoring Autoscale activities

Estado del clústerCluster status

El estado del clúster que aparece en Azure Portal puede ayudarlo a supervisar las actividades de escalabilidad automática.The cluster status listed in the Azure portal can help you monitor Autoscale activities.

Habilitación de la escalabilidad automática del estado del clúster basada en la carga del nodo de trabajo

Todos los mensajes de estado del clúster que podría ver se explican en la lista siguiente.All of the cluster status messages that you might see are explained in the list below.

Estado del clústerCluster status DescripciónDescription
En ejecuciónRunning El clúster funciona normalmente.The cluster is operating normally. Todas las actividades de Escalabilidad automática anteriores se completaron correctamente.All of the previous Autoscale activities have completed successfully.
ActualizandoUpdating La configuración de Escalabilidad automática del clúster se está actualizando.The cluster Autoscale configuration is being updated.
Configuración de HDInsightHDInsight configuration Una operación de escalado o de reducción verticales de un clúster está en curso.A cluster scale up or scale down operation is in progress.
Error de actualizaciónUpdating Error HDInsight experimentó problemas durante la actualización de la configuración de Escalabilidad automática.HDInsight met issues during the Autoscale configuration update. Los clientes pueden elegir si reintentan la actualización o deshabilitan la escalabilidad automática.Customers can choose to either retry the update or disable autoscale.
ErrorError Error en el clúster, que no se puede usar.Something is wrong with the cluster, and it isn't usable. Elimine este clúster y cree uno nuevo.Delete this cluster and create a new one.

Para ver el número actual de nodos en el clúster, vaya al gráfico Tamaño del clúster en la página de información general del clúster.To view the current number of nodes in your cluster, go to the Cluster size chart on the Overview page for your cluster. O bien, seleccione Tamaño del clúster en Configuración.Or select Cluster size under Settings.

Historial de operacionesOperation history

Puede ver el historial de escalado y reducción verticales del clúster como parte de las métricas del clúster.You can view the cluster scale-up and scale-down history as part of the cluster metrics. También puede enumerar todas las acciones de escalado durante el último día, semana u otro período de tiempo.You can also list all scaling actions over the past day, week, or other period of time.

Seleccione Métricas en Supervisión.Select Metrics under Monitoring. Luego, seleccione en Agregar métrica y Número de trabajos activos en la lista desplegable Métrica.Then select Add metric and Number of Active Workers from the Metric dropdown box. Seleccione el botón que se encuentra en la esquina superior derecha para cambiar el intervalo de tiempo.Select the button in the upper right to change the time range.

Habilitación de la escalabilidad automática de la métrica basada en programación del nodo de trabajo

Procedimientos recomendadosBest practices

Consideración de la latencia de las operaciones de escalado y reducción verticalesConsider the latency of scale up and scale down operations

Una operación de escalado puede tardar entre 10 y 20 minutos en completarse.It can take 10 to 20 minutes for a scaling operation to complete. Cuando configure una programación personalizada, planee esta demora.When setting up a customized schedule, plan for this delay. Por ejemplo, si necesita que el tamaño del clúster sea 20 a las 9:00 a.m., establezca el desencadenador de programación más temprano, a eso de las 8:30 a.m., para que la operación de escalado se complete antes de las 9:00 a.m.For example, if you need the cluster size to be 20 at 9:00 AM, set the schedule trigger to an earlier time such as 8:30 AM so that the scaling operation has completed by 9:00 AM.

Preparación para la reducción verticalPrepare for scaling down

Durante el proceso de reducción vertical de un clúster, la característica Escalabilidad automática retira los nodos para cumplir con el tamaño de destino.During the cluster scaling down process, Autoscale decommissions the nodes to meet the target size. Si las tareas están en ejecución en esos nodos, la Escalabilidad automática espera hasta que se completan las tareas para clústeres Spark y Hadoop.If tasks are running on those nodes, Autoscale waits until the tasks are completed for Spark and Hadoop clusters. Como cada nodo de trabajo también tiene un rol en HDFS, los datos temporales se desplazan a los nodos restantes.Since each worker node also serves a role in HDFS, the temporary data is shifted to the remaining nodes. Asegúrese de que haya espacio suficiente en los nodos restantes para hospedar todos los datos temporales.Make sure there's enough space on the remaining nodes to host all temporary data.

Los trabajos seguirán en ejecución.The running jobs will continue. Los trabajos pendientes esperarán una programación con menos nodos de trabajo disponibles.The pending jobs will wait for scheduling with fewer available worker nodes.

Consideración del tamaño mínimo del clústerBe aware of the minimum cluster size

No reduzca verticalmente el clúster a menos de tres nodos.Don't scale your cluster down to fewer than three nodes. El escalado del clúster a menos de tres nodos puede hacer que se quede atascado en el modo seguro debido a una replicación de archivos insuficiente.Scaling your cluster to fewer than three nodes can result in it getting stuck in safe mode because of insufficient file replication. Para más información, vea Bloqueo en modo seguro.For more information, see getting stuck in safe mode.

Aumento del número de asignadores y reductoresIncrease the number of mappers and reducers

La escalabilidad automática para clústeres de Hadoop también supervisa el uso de HDFS.Autoscale for Hadoop clusters also monitors HDFS usage. Si HDFS está ocupado, se supone que el clúster aún necesita los recursos actuales.If the HDFS is busy, it assumes the cluster still needs the current resources. Cuando hay datos masivos implicados en la consulta, puede aumentar el número de asignadores y reductores para aumentar el paralelismo y acelerar las operaciones de HDFS.When there is massive data involved in the query, you can increase the number of mappers and reducers to increase the parallelism and accelerate the HDFS operations. De este modo, se activará la reducción vertical adecuada cuando haya recursos adicionales.In this way, proper scaling down will be triggered when there are extra resources.

Establecimiento del número máximo de consultas simultáneas totales de configuración de Hive para el escenario de uso máximoSet the Hive configuration Maximum Total Concurrent Queries for the peak usage scenario

Los eventos de escalabilidad automática no cambian la configuración de Hive de Número máximo total de consultas simultáneas en Ambari.Autoscale events don't change the Hive configuration Maximum Total Concurrent Queries in Ambari. Esto significa que el servicio interactivo del servidor de Hive 2 solo puede controlar el número dado de consultas simultáneas en cualquier momento, incluso si el número de demonios de cola interactiva se escala y reduce verticalmente en función de la carga y programación.This means that the Hive Server 2 Interactive Service can handle only the given number of concurrent queries at any point of time even if the Interactive Query daemons count are scaled up and down based on load and schedule. La recomendación general es establecer esta configuración para el escenario de uso máximo para evitar la intervención manual.The general recommendation is to set this configuration for the peak usage scenario to avoid manual intervention.

Sin embargo, es posible que experimente un error de reinicio del servidor de Hive 2 si solo hay un número pequeño de nodos de trabajo y el valor configurado del máximo de consultas simultáneas totales es demasiado alto.However, you may experience a Hive Server 2 restart failure if there are only a small number of worker nodes and the value for maximum total concurrent queries is configured too high. Como mínimo, se necesita el número mínimo de nodos de trabajo que pueden dar cabida al número especificado de AM de Tez (igual a la configuración de consultas simultáneas máximas en total).At a minimum, you need the minimum number of worker nodes that can accommodate the given number of Tez Ams (equal to the Maximum Total Concurrent Queries configuration).

LimitacionesLimitations

Ausencia del archivo de etiqueta de nodoNode label file missing

La escalabilidad automática de HDInsight usa un archivo de etiqueta de nodo para determinar si un nodo está listo para ejecutar tareas.HDInsight Autoscale uses a node label file to determine whether a node is ready to execute tasks. El archivo de etiqueta de nodo se almacena en HDFS con tres réplicas.The node label file is stored on HDFS with three replicas. Si el tamaño del clúster experimenta una reducción vertical drástica y hay una gran cantidad de datos temporales, existe una pequeña probabilidad de que se puedan eliminar las tres réplicas.If the cluster size is dramatically scaled down and there is a large amount of temporary data, there is a small chance that all three replicas could be dropped. Si esto sucede, el clúster entra en un estado de error.If this happens, the cluster enters an error state.

Recuento de demonios de Interactive QueryInteractive Query Daemons count

En el caso de los clústeres de Interactive Query habilitados para la escalabilidad automática, el evento de escalar o reducir verticalmente también escala vertical u horizontalmente el número de demonios de Interactive Query al número de nodos de trabajo activos.In case of autoscale-enabled Interactive Query clusters, an autoscale up/down event also scales up/down the number of Interactive Query daemons to the number of active worker nodes. El cambio en el número de demonios no se conserva en la configuración num_llap_nodes de Ambari.The change in the number of daemons is not persisted in the num_llap_nodes configuration in Ambari. Si los servicios de Hive se reinician manualmente, el número de demonios de Interactive Query se restablece según la configuración de Ambari.If Hive services are restarted manually, the number of Interactive Query daemons is reset as per the configuration in Ambari.

Si el servicio Interactive Query se reinicia manualmente, es necesario cambiar manualmente la configuración num_llap_node (el número de nodos necesarios para ejecutar el demonio de Interactive Query de Hive) en Advanced hive-interactive-env para que coincida con el número actual de nodos de trabajo activos.If the Interactive Query service is manually restarted, you need to manually change the num_llap_node configuration (the number of node(s) needed to run the Hive Interactive Query daemon) under Advanced hive-interactive-env to match the current active worker node count.

Pasos siguientesNext steps

Obtenga información acerca de las instrucciones para el escalado manual de clústeres en las Instrucciones de escaladoRead about guidelines for scaling clusters manually in Scaling guidelines