Informazioni su strategia e scenari di assegnazione dei nodi - Amazon EMR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Informazioni su strategia e scenari di assegnazione dei nodi

In questa sezione viene fornita una panoramica della strategia di allocazione dei nodi e degli scenari di dimensionamento comuni che è possibile utilizzare con il dimensionamento gestito da Amazon EMR.

Strategia di assegnazione dei nodi

Il dimensionamento gestito da Amazon EMR assegna nodi core e attività in base alle seguenti strategie di aumento e riduzione:

Strategia di aumento

  • Il dimensionamento gestito da Amazon EMR aggiunge capacità prima ai nodi core e poi ai nodi attività fino al raggiungimento della capacità massima consentita o fino al raggiungimento della capacità target di aumento desiderata.

  • Quando Amazon EMR subisce un ritardo nel dimensionamento verticale rispetto al gruppo di istanze corrente, i cluster che utilizzano il dimensionamento gestito passano automaticamente a un gruppo di istanze di attività diverso.

  • Se hai impostato il parametro MaximumCoreCapacityUnits, Amazon EMR ridimensiona i nodi principali fino a quando le unità principali non raggiungono il limite massimo consentito. La capacità rimanente viene aggiunta ai nodi attività.

  • Se hai impostato il parametro MaximumOnDemandCapacityUnits, Amazon EMR ridimensiona il cluster utilizzando le istanze on demand fino a quando le unità on demand non raggiungono il limite massimo consentito. La capacità rimanente viene aggiunta utilizzando istanze Spot.

  • Se hai impostato entrambi i parametri MaximumCoreCapacityUnits e MaximumOnDemandCapacityUnits, Amazon EMR considera entrambi i limiti durante il dimensionamento.

    Ad esempio, se l'opzione MaximumCoreCapacityUnits è minore di MaximumOnDemandCapacityUnits, Amazon EMR ridimensiona innanzitutto i nodi principali fino al raggiungimento del limite di capacità principale. Per la capacità rimanente, Amazon EMR utilizza innanzitutto le istanze on demand per ridimensionare i nodi attività fino al raggiungimento del limite on demand e, in seguito, utilizza le istanze Spot per i nodi attività.

Strategia di riduzione verticale

  • Amazon EMR versioni 5.34.0 e successive e Amazon EMR versioni 6.4.0 e successive, supportano il dimensionamento gestito a conoscenza dei dati di shuffle di Spark (dati che Spark ridistribuisce tra le partizioni per eseguire operazioni specifiche). Per ulteriori informazioni sulle operazioni di shuffle, consulta la Guida di programmazione Spark. Il dimensionamento gestito riduce verticalmente solo le istanze sottoutilizzate e che non contengono dati di shuffle utilizzati attivamente. Questo dimensionamento intelligente previene la perdita di dati di shuffle, evitando la necessità di nuovi tentativi di eseguire processi e calcolo dei dati intermedi.

  • Il dimensionamento gestito da Amazon EMR rimuove prima i nodi attività e poi i nodi core fino al raggiungimento della capacità target di riduzione desiderata. Il cluster non ridimensiona mai al di sotto dei vincoli minimi nella policy di dimensionamento gestito.

  • All'interno di ogni tipo di nodo (nodi core o nodi attività), il dimensionamento gestito da Amazon EMR rimuove prima le istanze spot e poi le istanze on demand.

  • Per i cluster avviati con Amazon EMR 5.x rilasci 5.34.0 e successivi e 6.x rilasci 6.4.0 e successivi, il dimensionamento gestito da Amazon EMR non riduce i nodi su cui è in esecuzione ApplicationMaster per Apache Spark. Ciò riduce al minimo gli errori e i nuovi tentativi del processo, il che aiuta a migliorare le prestazioni lavorative e a ridurre i costi. Per confermare su quali nodi del cluster è in esecuzione ApplicationMaster, visita Spark History Server e filtra i driver nella scheda Esecutori dell'ID applicazione Spark.

Se il cluster non ha alcun carico, Amazon EMR annulla l'aggiunta di nuove istanze da una valutazione precedente ed esegue operazioni di dimensionamento verso il basso. Se il cluster presenta un carico pesante, Amazon EMR annulla la rimozione delle istanze ed esegue operazioni di aumento.

Considerazioni sull'assegnazione

È consigliabile utilizzare l'opzione di acquisto on demand per i nodi principali al fine di evitare la perdita di dati HDFS in caso di recupero Spot. È possibile utilizzare l'opzione di acquisto Spot per i nodi attività al fine di ridurre i costi e ottenere un'esecuzione più rapida dei processi quando vengono aggiunte più istanze Spot ai nodi attività.

Scenari di assegnazione dei nodi

È possibile creare vari scenari di dimensionamento in base alle proprie esigenze impostando i parametri massimo, minimo, limite on demand e nodo principale massimo in diverse combinazioni.

Scenario 1: Dimensionare i soli nodi principali

Per ridimensionare solo i nodi principali, i parametri di dimensionamento gestiti devono soddisfare i seguenti requisiti:

  • Il limite on demand è uguale al limite massimo.

  • Il nodo principale massimo è uguale al limite massimo.

Quando non vengono specificati i parametri limite on demand e nodo principale massimo, entrambi i parametri impostano il limite massimo.

I seguenti esempi dimostrano lo scenario di dimensionamento dei nodi principali.

Stato iniziale del cluster Parametri di dimensionamento Comportamento del dimensionamento

Gruppi di istanze

Principale: 1 on demand

Attività: 1 on demand e 1 Spot

UnitType: Istanze

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 20

MaximumCoreCapacityUnits: 20

Dimensionamento da 1 a 20 istanze o unità di parchi istanze sui nodi principali utilizzando il tipo on demand. Nessun dimensionamento sui nodi attività.

Parchi istanze

Principale: 1 on demand

Attività: 1 on demand e 1 Spot

UnitType: InstanceFleetUnits

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 20

MaximumCoreCapacityUnits: 20

Scenario 2: Dimensionamento dei soli nodi attività

Per ridimensionare solo i nodi attività, i parametri di dimensionamento gestiti devono soddisfare il seguente requisito:

  • Il nodo principale massimo è uguale al limite minimo.

I seguenti esempi dimostrano lo scenario di dimensionamento dei nodi attività.

Stato iniziale del cluster Parametri di dimensionamento Comportamento del dimensionamento

Gruppi di istanze

Principale: 2 on demand

Attività: 1 Spot

UnitType: Istanze

MinimumCapacityUnits 2:

MaximumCapacityUnits: 20

MaximumCoreCapacityUnits 2:

Mantenimento dei nodi principali a 2 e dimensionamento dei soli nodi attività da 0 a 18 istanze o unità di parchi istanze. La capacità tra i limiti minimo e massimo viene aggiunta solo ai nodi attività.

Parchi istanze

Principale: 2 on demand

Attività: 1 Spot

UnitType: InstanceFleetUnits

MinimumCapacityUnits 2:

MaximumCapacityUnits: 20

MaximumCoreCapacityUnits 2:

Scenario 3: Solo istanze On Demand nel cluster

Per avere solo istanze on demand, il cluster e i parametri di dimensionamento gestito devono soddisfare i requisiti seguenti:

  • Il limite on demand è uguale al limite massimo.

    Quando il limite on demand non è specificato, il valore del parametro viene impostato di default sul limite massimo. Il valore di default indica che Amazon EMR ridimensiona solo le istanze on demand.

Se il nodo principale massimo è inferiore al limite massimo, è possibile utilizzare il parametro nodo principale massimo per dividere l'assegnazione della capacità tra nodi principali e nodi attività.

Per abilitare questo scenario in un cluster composto da gruppi di istanze, tutti i gruppi di nodi nel cluster devono utilizzare il tipo di mercato on demand durante la configurazione iniziale.

Negli esempi seguenti viene illustrato lo scenario che presenta istanze on demand nell'intero cluster.

Stato iniziale del cluster Parametri di dimensionamento Comportamento del dimensionamento

Gruppi di istanze

Principale: 1 on demand

Attività: 1 on demand

UnitType: Istanze

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 20

MaximumCoreCapacityUnits: 12

Dimensionamento da 1 a 12 istanze o unità di parchi istanze sui nodi principali utilizzando il tipo on demand. Dimensionamento della capacità rimanente utilizzando l'opzione on demand sui nodi attività. Nessun dimensionamento utilizzando istanze Spot.

Parchi istanze

Principale: 1 on demand

Attività: 1 on demand

UnitType: InstanceFleetUnits

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 20

MaximumCoreCapacityUnits: 12

Scenario 4: Solo istanze Spot nel cluster

Per avere solo istanze Spot, i parametri di dimensionamento gestito devono soddisfare i requisiti seguenti:

  • Il limite on demand è impostato su 0.

Se il nodo principale massimo è inferiore al limite massimo, è possibile utilizzare il parametro nodo principale massimo per dividere l'assegnazione della capacità tra nodi principali e nodi attività.

Per abilitare questo scenario in un cluster composto da gruppi di istanze, il gruppo di istanze principale deve utilizzare l'opzione acquisto Spot durante la configurazione iniziale. Se non è presente alcuna istanza spot nel gruppo di istanze attività, il dimensionamento gestito da Amazon EMR crea un gruppo di attività utilizzando le istanze spot quando necessario.

Negli esempi seguenti viene illustrato lo scenario che presenta istanze Spot nell'intero cluster.

Stato iniziale del cluster Parametri di dimensionamento Comportamento del dimensionamento

Gruppi di istanze

Principale: 1 Spot

Attività: 1 Spot

UnitType: Istanze

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 0

Dimensionamento da 1 a 20 istanze o unità di parchi istanze sui nodi principali utilizzando il tipo Spot. Nessun dimensionamento utilizzando il tipo on demand.

Parchi istanze

Principale: 1 Spot

Attività: 1 Spot

UnitType: InstanceFleetUnits

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 0

Scenario 5: Dimensionamento delle istanze On Demand sui nodi principali e delle istanze Spot sui nodi attività

Per dimensionare istanze On Demand sui nodi principali e istanze Spot sui nodi attività, i parametri di ridimensionamento gestiti devono soddisfare i seguenti requisiti:

  • Il limite on demand deve essere uguale al nodo principale massimo.

  • Sia il limite on demand che il nodo principale massimo devono essere inferiori al limite massimo.

Per abilitare questo scenario in un cluster composto da gruppi di istanze, il gruppo di nodi principale deve utilizzare l'opzione di acquisto on demand.

Negli esempi seguenti viene illustrato lo scenario di dimensionamento delle istanze on demand sui nodi principali e delle istanze Spot sui nodi attività.

Stato iniziale del cluster Parametri di dimensionamento Comportamento del dimensionamento

Gruppi di istanze

Principale: 1 on demand

Attività: 1 on demand e 1 Spot

UnitType: Istanze

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 7

MaximumCoreCapacityUnits: 7

Aumento a 6 unità on demand sul nodo principale poiché nel nodo attività è già presente 1 unità on demand e il limite massimo per il tipo on demand è 7. In seguito, aumento a 13 unità Spot sui nodi attività.

Parchi istanze

Principale: 1 on demand

Attività: 1 on demand e 1 Spot

UnitType: InstanceFleetUnits

MinimumCapacityUnits: 1

MaximumCapacityUnits: 20

MaximumOnDemandCapacityUnits: 7

MaximumCoreCapacityUnits: 7