Avvia un Amazon EMR Cluster con più nodi primari - 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à.

Avvia un Amazon EMR Cluster con più nodi primari

Questo argomento fornisce dettagli di configurazione ed esempi per l'avvio di un EMR cluster Amazon con più nodi primari.

Nota

Amazon abilita EMR automaticamente la protezione dalla terminazione per tutti i cluster che hanno più nodi primari e sostituisce tutte le impostazioni di terminazione automatica fornite al momento della creazione del cluster. Per chiudere un cluster con più nodi primari, è necessario modificare gli attributi del cluster per disabilitare la protezione da terminazione. Per istruzioni, consulta Termina un EMR cluster Amazon con più nodi primari.

Prerequisiti

  • Puoi avviare un EMR cluster Amazon con più nodi primari in VPC sottoreti pubbliche e private. EC2-La versione classica non è supportata. Per avviare un EMR cluster Amazon con più nodi primari in una sottorete pubblica, devi abilitare le istanze in questa sottorete a ricevere un indirizzo IP pubblico selezionando Assegna automatica IPv4 nella console o eseguendo il comando seguente. Sostituiscilo con il tuo ID 22XXXX01 di sottorete.

    aws ec2 modify-subnet-attribute --subnet-id subnet-22XXXX01 --map-public-ip-on-launch
  • Per eseguire Hive, Hue o Oozie su un EMR cluster Amazon con più nodi primari, devi creare un metastore esterno. Per ulteriori informazioni, consulta Configurazione di un metastore esterno per Hive, Utilizzo di Huecon un database remoto in Amazon RDS o Apache Oozie.

  • Per utilizzare l'autenticazione Kerberos nel cluster, è necessario configurare un sistema esterno. KDC Per ulteriori informazioni, consulta Configurazione di Kerberos su Amazon Amazon. EMR

Avvia un Amazon EMR Cluster con più nodi primari

Puoi avviare un cluster con più nodi primari quando utilizzi gruppi di istanze o parchi istanze. Quando utilizzi gruppi di istanze con più nodi primari, devi specificare un valore di conteggio delle istanze pari a 3 per il gruppo di istanze del nodo primario. Quando utilizzi parchi istanze con più nodi primari, devi specificare il valore TargetOnDemandCapacity di 3, TargetSpotCapacity o 0 per il parco istanze primario e il valore WeightedCapacity di 1 per ogni tipo di istanza configurato per il parco istanze primario.

Gli esempi seguenti mostrano come avviare il cluster utilizzando l'impostazione predefinita AMI o personalizzata AMI con gruppi di istanze e flotte di istanze:

Nota

È necessario specificare l'ID di sottorete quando si avvia un EMR cluster Amazon con più nodi primari utilizzando il AWS CLI. Sostituisci 22XXXX01 e 22XXXX02 con il tuo ID di sottorete negli esempi seguenti.

Default AMI, instance groups
Esempio: avvio di un cluster di gruppi di EMR istanze Amazon con più nodi primari utilizzando un valore predefinito AMI
aws emr create-cluster \ --name "ha-cluster" \ --release-label emr-6.15.0 \ --instance-groups InstanceGroupType=MASTER,InstanceCount=3,InstanceType=m5.xlarge InstanceGroupType=CORE,InstanceCount=4,InstanceType=m5.xlarge \ --ec2-attributes KeyName=ec2_key_pair_name,InstanceProfile=EMR_EC2_DefaultRole,SubnetId=subnet-22XXXX01 \ --service-role EMR_DefaultRole \ --applications Name=Hadoop Name=Spark
Default AMI, instance fleets
Esempio: avvio di un cluster di flotte di EMR istanze Amazon con più nodi primari utilizzando un cluster predefinito AMI
aws emr create-cluster \ --name "ha-cluster" \ --release-label emr-6.15.0 \ --instance-fleets '[ { "InstanceFleetType": "MASTER", "TargetOnDemandCapacity": 3, "TargetSpotCapacity": 0, "LaunchSpecifications": { "OnDemandSpecification": { "AllocationStrategy": "lowest-price" } }, "InstanceTypeConfigs": [ { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.xlarge" }, { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.2xlarge" }, { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.4xlarge" } ], "Name": "Master - 1" }, { "InstanceFleetType": "CORE", "TargetOnDemandCapacity": 5, "TargetSpotCapacity": 0, "LaunchSpecifications": { "OnDemandSpecification": { "AllocationStrategy": "lowest-price" } }, "InstanceTypeConfigs": [ { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.xlarge" }, { "WeightedCapacity": 2, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.2xlarge" }, { "WeightedCapacity": 4, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.4xlarge" } ], "Name": "Core - 2" } ]' \ --ec2-attributes '{"InstanceProfile":"EMR_EC2_DefaultRole","SubnetIds":["subnet-22XXXX01", "subnet-22XXXX02"]}' \ --service-role EMR_DefaultRole \ --applications Name=Hadoop Name=Spark
Custom AMI, instance groups
Esempio: avvio di un cluster di gruppi di EMR istanze Amazon con più nodi primari utilizzando un cluster personalizzato AMI
aws emr create-cluster \ --name "custom-ami-ha-cluster" \ --release-label emr-6.15.0 \ --instance-groups InstanceGroupType=MASTER,InstanceCount=3,InstanceType=m5.xlarge InstanceGroupType=CORE,InstanceCount=4,InstanceType=m5.xlarge \ --ec2-attributes KeyName=ec2_key_pair_name,InstanceProfile=EMR_EC2_DefaultRole,SubnetId=subnet-22XXXX01 \ --service-role EMR_DefaultRole \ --applications Name=Hadoop Name=Spark \ --custom-ami-id ami-MyAmiID
Custom AMI, instance fleets
Esempio: avvio di un cluster di flotte di EMR istanze Amazon con più nodi primari utilizzando un cluster personalizzato AMI
aws emr create-cluster \ --name "ha-cluster" \ --release-label emr-6.15.0 \ --instance-fleets '[ { "InstanceFleetType": "MASTER", "TargetOnDemandCapacity": 3, "TargetSpotCapacity": 0, "LaunchSpecifications": { "OnDemandSpecification": { "AllocationStrategy": "lowest-price" } }, "InstanceTypeConfigs": [ { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.xlarge" }, { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.2xlarge" }, { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.4xlarge" } ], "Name": "Master - 1" }, { "InstanceFleetType": "CORE", "TargetOnDemandCapacity": 5, "TargetSpotCapacity": 0, "LaunchSpecifications": { "OnDemandSpecification": { "AllocationStrategy": "lowest-price" } }, "InstanceTypeConfigs": [ { "WeightedCapacity": 1, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.xlarge" }, { "WeightedCapacity": 2, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.2xlarge" }, { "WeightedCapacity": 4, "BidPriceAsPercentageOfOnDemandPrice": 100, "InstanceType": "m5.4xlarge" } ], "Name": "Core - 2" } ]' \ --ec2-attributes '{"InstanceProfile":"EMR_EC2_DefaultRole","SubnetIds":["subnet-22XXXX01", "subnet-22XXXX02"]}' \ --service-role EMR_DefaultRole \ --applications Name=Hadoop Name=Spark \ --custom-ami-id ami-MyAmiID

Termina un EMR cluster Amazon con più nodi primari

Per terminare un EMR cluster Amazon con più nodi primari, devi disabilitare la protezione dalla terminazione prima di terminare il cluster, come dimostra l'esempio seguente. Sostituisci j-3KVTXXXXXX7UG con l'ID del tuo cluster.

aws emr modify-cluster-attributes --cluster-id j-3KVTXXXXXX7UG --no-termination-protected aws emr terminate-clusters --cluster-id j-3KVTXXXXXX7UG