Configura gruppi di istanze uniformi per il tuo EMR cluster Amazon - 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à.

Configura gruppi di istanze uniformi per il tuo EMR cluster Amazon

Con la configurazione dei gruppi di istanze, ogni tipo di nodo (master, principale o di task) è costituito dallo stesso tipo di istanza e dalla stessa opzione di acquisto per istanze: on demand o Spot. Queste impostazioni vengono specificate al momento della creazione di un gruppo di istanze. Le impostazioni non possono essere modificate in seguito. Tuttavia, puoi aggiungere istanze dello stesso tipo e opzioni di acquisto a gruppi di istanze principali e dell'attività Puoi anche rimuovere istanze.

Se le istanze on demand del cluster corrispondono agli attributi delle prenotazioni di capacità aperta (tipo di istanza, piattaforma, tenancy e zona di disponibilità) disponibili nell'account, le prenotazioni di capacità vengono applicate automaticamente. È possibile utilizzare prenotazioni di capacità aperte per nodi primari, core e attività. Tuttavia, non è possibile utilizzare prenotazioni della capacità mirate o impedire l'avvio di istanze in prenotazioni della capacità aperte con attributi corrispondenti quando si esegue il provisioning di cluster utilizzando gruppi di istanze. Se si desidera utilizzare prenotazioni della capacità mirate o impedire l'avvio di istanze in prenotazioni della capacità aperte, utilizza piuttosto parchi istanze. Per ulteriori informazioni, consulta Utilizza le prenotazioni di capacità con flotte di istanze in Amazon EMR.

Per aggiungere tipi di istanze differenti dopo che un cluster è stato creato, puoi aggiungere gruppi di istanze di attività aggiuntivi. Puoi scegliere tipi di istanze e opzioni di acquisto differenti per ogni gruppo di istanze. Per ulteriori informazioni, consulta Usa Amazon EMR Cluster Scaling per adattarti ai carichi di lavoro in continua evoluzione.

Quando si avviano delle istanze, la preferenza della prenotazione di capacità dell'istanza on demand è impostata in modo predefinito su open, che consente di eseguirla in qualsiasi prenotazione di capacità aperta che abbia gli attributi corrispondenti (tipo di istanza, piattaforma, zona di disponibilità). Per informazioni sulla condivisione delle prenotazioni di capacità on demand, consulta Utilizza le prenotazioni di capacità con flotte di istanze in Amazon EMR.

In questa sezione viene descritta la creazione di un cluster con gruppi di istanze uniformi. Per ulteriori informazioni sulla modifica di un gruppo di istanze esistente aggiungendo o rimuovendo istanze manualmente o con scalabilità automatica, consulta Gestisci i EMR cluster Amazon.

Utilizzo della console per configurare gruppi di istanze uniformi

Console
Creazione di un cluster con gruppi di istanze con la nuova console
  1. Accedi a e apri AWS Management Console la EMR console Amazon all'indirizzo https://console.aws.amazon.com/emr.

  2. EC2Nel riquadro di navigazione a sinistra, scegli Cluster e scegli Crea cluster. EMR

  3. In Cluster configuration (Configurazione del cluster), scegli Instance groups (Gruppi di istanze).

  4. In Node groups (Gruppi di nodi) è presente una sezione per ogni tipo di gruppo di nodi. Per il gruppo di nodi primari, seleziona la casella di controllo Use multiple primary nodes (Usa più nodi primari) se desideri avere 3 nodi primari. Seleziona la casella di controllo Use Spot purchasing option (Utilizza l'opzione di acquisto spot) se desideri utilizzare gli acquisti spot.

  5. Per i gruppi di nodi primari e core, seleziona Add instance type (Aggiungi tipo di istanza) e scegli fino a 5 tipi di istanza. Per il gruppo attività, seleziona Add instance type (Aggiungi tipo di istanza) e scegli fino a 15 tipi di istanza. Amazon EMR può fornire qualsiasi combinazione di questi tipi di istanze all'avvio del cluster.

  6. In ogni tipo di gruppo di nodi, scegli il menu a discesa Actions (Operazioni) accanto a ciascuna istanza per modificare queste impostazioni:

    Aggiungi volumi EBS

    Specificate EBS i volumi da allegare al tipo di istanza dopo il EMR provisioning da parte di Amazon.

    Modifica del prezzo spot massimo

    Per ogni tipo di istanza all'interno di un parco, specifica un prezzo spot massimo. Puoi impostare questo prezzo come una percentuale del prezzo on demand o come un importo in dollari specifico. Se il prezzo Spot corrente in una zona di disponibilità è inferiore al prezzo Spot massimo, Amazon fornisce EMR istanze Spot. L'utente paga il prezzo Spot, non necessariamente il prezzo Spot massimo.

  7. Facoltativamente, espandi la configurazione del nodo per inserire una JSON configurazione o per caricarla JSON da Amazon S3.

  8. Scegli qualsiasi altra opzione applicabile al cluster.

  9. Per avviare il cluster, scegli Create cluster (Crea cluster).

Utilizza il AWS CLI per creare un cluster con gruppi di istanze uniformi

Per specificare la configurazione di gruppi di istanze per un cluster utilizzando AWS CLI, utilizza il comando create-cluster insieme al parametro --instance-groups. Amazon EMR presuppone l'opzione On-Demand Instance a meno che non si specifichi l'BidPriceargomento per un gruppo di istanze. Per esempi di comandi create-cluster che avviano gruppi di istanze uniformi con istanze on demand e opzioni di cluster diverse, digita aws emr create-cluster help dalla riga di comando oppure consulta create-cluster nella Guida di riferimento ai comandi della AWS CLI .

Puoi utilizzare l' AWS CLI per creare gruppi di istanze uniformi in un cluster che utilizza istanze Spot. Il prezzo Spot offerto dipende dalla zona di disponibilità. Quando si utilizza CLI oAPI, è possibile specificare la zona di disponibilità con l'AvailabilityZoneargomento (se si utilizza una rete EC2 -classic) o l'SubnetID argomento del --ec2-attributes parametro. La zona di disponibilità o la sottorete selezionata vale per il cluster, pertanto viene utilizzata per tutti i gruppi di istanze. Se non specifichi esplicitamente una zona di disponibilità o una sottorete, Amazon EMR seleziona la zona di disponibilità con il prezzo Spot più basso quando avvia il cluster.

Nel seguente esempio viene illustrato un comando create-cluster che crea un gruppo di istanze primarie, uno di core e due di attività, tutti i quali utilizzano istanze spot. Sostituiscilo myKey con il nome della tua coppia di EC2 chiavi Amazon.

Nota

I caratteri di continuazione della riga Linux (\) sono inclusi per questioni di leggibilità. Possono essere rimossi o utilizzati nei comandi Linux. Per Windows, rimuovili o sostituiscili con un accento circonflesso (^).

aws emr create-cluster --name "MySpotCluster" \ --release-label emr-7.5.0 \ --use-default-roles \ --ec2-attributes KeyName=myKey \ --instance-groups \ InstanceGroupType=MASTER,InstanceType=m5.xlarge,InstanceCount=1,BidPrice=0.25 \ InstanceGroupType=CORE,InstanceType=m5.xlarge,InstanceCount=2,BidPrice=0.03 \ InstanceGroupType=TASK,InstanceType=m5.xlarge,InstanceCount=4,BidPrice=0.03 \ InstanceGroupType=TASK,InstanceType=m5.xlarge,InstanceCount=2,BidPrice=0.04

UtilizzandoCLI, puoi creare cluster di gruppi di istanze uniformi che specificano una personalizzazione univoca AMI per ogni tipo di istanza nel gruppo di istanze. Ciò consente di utilizzare architetture di istanze diverse nello stesso gruppo di istanze. Ogni tipo di istanza deve utilizzare un'architettura personalizzata AMI con un'architettura corrispondente. Ad esempio, dovreste configurare un tipo di istanza m5.xlarge con un'architettura x86_64 personalizzata e un tipo di istanza m6g.xlarge con un'architettura personalizzata AMI corrispondente (). AWS AARCH64 ARM AMI

L'esempio seguente mostra un cluster di gruppi di istanze uniforme creato con due tipi di istanze, ognuno con la propria personalizzazione. AMI Si noti che le personalizzazioni AMIs sono specificate solo a livello di tipo di istanza, non a livello di cluster. Questo serve a evitare conflitti tra il tipo di istanza AMIs e uno AMI a livello di cluster, che potrebbero causare il fallimento dell'avvio del cluster.

aws emr create-cluster --release-label emr-5.30.0 \ --service-role EMR_DefaultRole \ --ec2-attributes SubnetId=subnet-22XXXX01,InstanceProfile=EMR_EC2_DefaultRole \ --instance-groups \ InstanceGroupType=MASTER,InstanceType=m5.xlarge,InstanceCount=1,CustomAmiId=ami-123456 \ InstanceGroupType=CORE,InstanceType=m6g.xlarge,InstanceCount=1,CustomAmiId=ami-234567

È possibile aggiungere più elementi personalizzati AMIs a un gruppo di istanze da aggiungere a un cluster in esecuzione. L'argomento CustomAmiId può essere utilizzato con il comando add-instance-groups come mostrato nell'esempio seguente.

aws emr add-instance-groups --cluster-id j-123456 \ --instance-groups \ InstanceGroupType=Task,InstanceType=m5.xlarge,InstanceCount=1,CustomAmiId=ami-123456

Utilizzate Java SDK per creare un gruppo di istanze

Crea un'istanza di un oggetto InstanceGroupConfig che specifica la configurazione di un gruppo di istanze per un cluster. Per utilizzare istanze Spot, imposta le proprietà withBidPrice e withMarket sull'oggetto InstanceGroupConfig. Nel codice seguente viene mostrato come definire gruppi di istanze primarie, core e attività che eseguono istanze spot.

InstanceGroupConfig instanceGroupConfigMaster = new InstanceGroupConfig() .withInstanceCount(1) .withInstanceRole("MASTER") .withInstanceType("m4.large") .withMarket("SPOT") .withBidPrice("0.25"); InstanceGroupConfig instanceGroupConfigCore = new InstanceGroupConfig() .withInstanceCount(4) .withInstanceRole("CORE") .withInstanceType("m4.large") .withMarket("SPOT") .withBidPrice("0.03"); InstanceGroupConfig instanceGroupConfigTask = new InstanceGroupConfig() .withInstanceCount(2) .withInstanceRole("TASK") .withInstanceType("m4.large") .withMarket("SPOT") .withBidPrice("0.10");