Utilizzo di una policy di terminazione automatica - 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à.

Utilizzo di una policy di terminazione automatica

Una policy di terminazione automatica consente di orchestrare la pulizia del cluster senza la necessità di monitorare e terminare manualmente i cluster inutilizzati. Quando si aggiunge una policy di terminazione automatica a un cluster, si specifica la quantità di tempo di inattività dopo il quale il cluster deve arrestarsi automaticamente.

A seconda della versione di rilascio, Amazon EMR utilizza criteri diverse per contrassegnare un cluster come inattivo. Nella tabella seguente viene illustrato come Amazon EMR determina l'inattività del cluster.

Quando utilizzi... Un cluster è considerato inattivo quando...
Amazon EMR versione 5.34.0 e successive, e versione 6.4.0 e successive
  • Non esistono applicazioni YARN attive

  • L'utilizzo dell'HDFS è inferiore al 10%

  • Non ci sono connessioni attive per EMR Notebooks o EMR Studio

  • Non sono in uso interfacce utente dell'applicazione on-cluster

Amazon EMR versioni 5.30.0 - 5.33.0 e 6.1.0 - 6.3.0
  • Non esistono applicazioni YARN attive

  • Il cluster non ha processi Spark attivi

Nota

Amazon EMR contrassegna un cluster come inattivo e potrebbe terminare automaticamente il cluster anche se si dispone di un kernel Python3 attivo. Questo perché l'esecuzione di un kernel Python3 non invia un processo Spark sul cluster. Per utilizzare la terminazione automatica con un kernel Python3, consigliamo di utilizzare Amazon EMR versione 6.4.0 o successive.

Nota

Amazon EMR versione 6.4.0 e successive supportano un file su cluster per il rilevamento dell'attività sul nodo primario: /emr/metricscollector/isbusy. Quando si utilizza un cluster per eseguire script di shell o applicazioni non YARN, è possibile toccare o aggiornare periodicamente isbusy per indicare ad Amazon EMR che il cluster non è inattivo.

È possibile allegare una policy di terminazione automatica quando si crea un cluster o si aggiunge una policy a un cluster esistente. Per modificare o disabilitare la terminazione automatica, è possibile aggiornare o rimuovere la policy.

Considerazioni

Prima di utilizzare una policy di terminazione automatica, considera le seguenti caratteristiche e limitazioni:

  • La terminazione automatica è supportata con Amazon EMR versione 5.30.0 e 6.1.0 e successive.

  • La terminazione automatica è disponibile nelle seguenti Regioni AWS: Stati Uniti orientali (Ohio e Virginia settentrionale), Stati Uniti occidentali (California settentrionale e Oregon), Asia Pacifico (Mumbai, Seoul, Singapore, Sydney, Tokyo e Hong Kong), Canada (Centrale), Cina (Pechino, Ningxia), Europa (Irlanda, Francoforte, Londra, Parigi, Stoccolma e Milano), Sud America (San Paolo), Medio Oriente (Bahrein) e Africa (Città del Capo).

  • Il timeout inattivo è predefinito di 60 minuti (un'ora) quando non si specifica un importo. È possibile specificare un timeout minimo di inattività di un minuto e un timeout massimo di 7 giorni.

  • Con Amazon EMR versioni 6.4.0 e successive, la terminazione automatica è abilitata per impostazione predefinita quando si crea un nuovo cluster tramite la console Amazon EMR.

  • Amazon EMR pubblica metriche Amazon CloudWatch ad alta risoluzione quando si abilita la terminazione automatica per un cluster. Puoi utilizzare queste metriche per monitorare l'attività e l'inattività del cluster. Per ulteriori informazioni, consulta Parametri della capacità del cluster.

  • La terminazione automatica non è supportata quando si utilizzano applicazioni non basate su YARN come Presto, Trino o HBase.

  • Per utilizzare la terminazione automatica in API Gateway, il processo di raccolta dei parametri deve essere in grado di connettersi all'endpoint API pubblico. Se utilizzi un nome DNS privato con Amazon Virtual Private Cloud, la terminazione automatica non funzionerà correttamente. Per garantire che la terminazione automatica funzioni, è consigliabile eseguire una delle seguenti operazioni:

  • (EMR rilascio 5.30.0 e successivi) Se si rimuove la regola predefinita Allow All (Consenti tutto) in uscita su 0.0.0.0/ nel gruppo di sicurezza primario, è necessario aggiungere una regola per consentire la connettività TCP in uscita al gruppo di sicurezza di accesso al servizio sulla porta 9443. Inoltre, il gruppo di sicurezza di accesso al servizio deve consentire il traffico TCP in ingresso sulla porta 9443 dal gruppo di sicurezza primario. Per ulteriori informazioni sulla configurazione dei gruppi di sicurezza, consulta la sezione Amazon EMR-managed security group for the primary instance (private subnets) (Gruppo di sicurezza gestito da Amazon EMR per l'istanza primaria [sottoreti private]).

Autorizzazioni per l'utilizzo della terminazione automatica

Prima di poter applicare e gestire le politiche di terminazione automatica per Amazon EMR, devi collegare le autorizzazioni elencate nel seguente esempio di policy di autorizzazione IAM alle risorse IAM che gestiscono il tuo cluster EMR.

{ "Version": "2012-10-17", "Statement": { "Sid": "AllowAutoTerminationPolicyActions", "Effect": "Allow", "Action": [ "elasticmapreduce:PutAutoTerminationPolicy", "elasticmapreduce:GetAutoTerminationPolicy", "elasticmapreduce:RemoveAutoTerminationPolicy" ], "Resource": "<your-resources>" } }

Allega, aggiorna o rimuovi una policy di terminazione automatica

Questa sezione include istruzioni per allegare, aggiornare o rimuovere una policy di terminazione automatica da un cluster Amazon EMR. Prima di lavorare con le policy di terminazione automatica, assicurati di disporre delle autorizzazioni IAM necessarie. Consultare Autorizzazioni per l'utilizzo della terminazione automatica.

Nota

Abbiamo riprogettato la console Amazon EMR per facilitarne l'utilizzo. Per scoprire le differenze tra la vecchia e la nuova esperienza sulla console, consulta la sezione Novità della console.

New console
Collegamento di una policy di terminazione automatica durante la creazione di un cluster con la nuova console
  1. Accedi alAWS Management Consolee apri la console Amazon EMR all'indirizzohttps://console.aws.amazon.com/emr.

  2. In EMR on EC2 (EMR su EC2), nel riquadro di navigazione a sinistra, scegli Clusters (Cluster) e seleziona Create cluster (Crea cluster).

  3. In Cluster termination (Terminazione del cluster), seleziona Terminate cluster after idle time (Termina il cluster dopo il tempo di inattività).

  4. Specifica il numero di ore e minuti di inattività dopo i quali il cluster deve terminare automaticamente. Il tempo di inattività predefinito è 1 ora.

  5. Scegli qualsiasi altra opzione applicabile al cluster.

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

Collegamento, aggiornamento o rimozione di una policy di terminazione automatica su un cluster in esecuzione con la nuova console
  1. Accedi alAWS Management Consolee apri la console Amazon EMR all'indirizzohttps://console.aws.amazon.com/emr.

  2. In EMR on EC2 (EMR su EC2), nel riquadro di navigazione a sinistra, scegli Clusters (Cluster) e seleziona il cluster da aggiornare.

  3. Nella scheda Properties (Proprietà) della pagina dei dettagli del cluster, cerca Cluster termination (Terminazione del cluster) e seleziona Edit (Modifica).

  4. Seleziona o deseleziona Enable auto-termination (Abilita la terminazione automatica) per attivare o disattivare la caratteristica. Se attivi la terminazione automatica, specifica il numero di ore e minuti di inattività dopo il quale il cluster termina automaticamente. Quindi seleziona Save changes (Salva modifiche) per confermare.

Old console
Collegamento di una policy di terminazione automatica durante la creazione di un cluster con la vecchia console
  1. Passa alla nuova console Amazon EMR e selezionaPassa alla vecchia consoledalla navigazione laterale. Per ulteriori informazioni su cosa aspettarsi quando passi alla vecchia console, consultaUtilizzo della vecchia console.

  2. Scegli Crea cluster.

  3. In Configurazione hardware, seleziona Terminazione automatica.

  4. Specificare il numero di ore e minuti di inattività dopo i quali il cluster deve terminare automaticamente. Il tempo di inattività di default è un'ora.

  5. Scegli le altre impostazioni appropriate per l'applicazione in uso, quindi scegli Create Cluster (Crea cluster).

Collegamento, aggiornamento o rimozione di una policy di terminazione automatica su un cluster in esecuzione con la vecchia console
  1. Passa alla nuova console Amazon EMR e selezionaPassa alla vecchia consoledalla navigazione laterale. Per ulteriori informazioni su cosa aspettarsi quando passi alla vecchia console, consultaUtilizzo della vecchia console.

  2. Seleziona Cluster e scegli il cluster da aggiornare.

  3. Nella scheda Hardware nella pagina cluster detail.

  4. Seleziona o deseleziona Enable auto-termination (Abilita la terminazione automatica) per attivare o disattivare la caratteristica. Se attivi la terminazione automatica, specifica il numero di ore e minuti di inattività dopo il quale il cluster deve terminare automaticamente.

AWS CLI

Prima di iniziare

Prima di utilizzare le policy di terminazione automatica, si consiglia di eseguire l'aggiornamento alla versione più recente della AWS CLI. Per le istruzioni, consulta Installazione, aggiornamento e disinstallazione della AWS CLI.

Per allegare o aggiornare una policy di terminazione automatica utilizzando la AWS CLI
  • Puoi utilizzare il comando aws emr put-auto-termination-policy per allegare o aggiornare una policy di terminazione automatica su un cluster.

    L'esempio seguente specifica 3600 secondi perIdleTimeout. Se non si specificaIdleTimeout, il valore predefinito è un'ora.

    aws emr put-auto-termination-policy \ --cluster-id <your-cluster-id> \ --auto-termination-policy IdleTimeout=3600
    Nota

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

    È anche possibile specificare un valore per --auto-termination-policy quando si utilizza il comando aws emr create-cluster. Per ulteriori informazioni sull'utilizzo di comandi Amazon EMR nella AWS CLI, consulta la Guida di riferimento ai comandi della AWS CLI.

Rimozione di una policy di terminazione automatica con la AWS CLI
  • Utilizzo il comando aws emr remove-auto-termination-policy per rimuovere una policy di terminazione automatica da un cluster. Per ulteriori informazioni sull'utilizzo di comandi Amazon EMR nella AWS CLI, consulta la Guida di riferimento ai comandi della AWS CLI.

    aws emr remove-auto-termination-policy --cluster-id <your-cluster-id>