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 della protezione dalle terminazioni per proteggere i cluster Amazon EMR da arresti accidentali
La protezione dalla terminazione protegge i cluster dalla chiusura accidentale, il che può essere particolarmente utile per i cluster di lunga durata che elaborano carichi di lavoro critici. Quando la protezione da cessazione è abilitata su un cluster di lunga durata, è necessario rimuovere esplicitamente la protezione da cessazione dal cluster prima di poterlo terminare. Questo aiuta a garantire che EC2 le istanze non vengano chiuse a causa di un incidente o di un errore. È possibile abilitare la protezione da cessazione al momento della creazione di un cluster ed è possibile modificare l'impostazione su un cluster in esecuzione.
Se la protezione da cessazione è abilitata, l'operazione TerminateJobFlows
nell'API di Amazon EMR non funziona. Gli utenti non sono in grado di terminare il cluster utilizzando questa API né il comando terminate-clusters
di AWS CLI. L'API restituisce un errore e l'interfaccia a riga di comando (CLI) si chiude con un codice restituito diverso da zero. Se utilizzi la console Amazon EMR per terminare un cluster, ti viene richiesto di eseguire una fase supplementare per disattivare la protezione da terminazione.
avvertimento
La protezione dalla terminazione non garantisce che i dati vengano conservati in caso di errore umano o soluzione alternativa, ad esempio se un comando di riavvio viene emesso dalla riga di comando mentre si è connessi all'istanza tramite SSH, se un'applicazione o uno script in esecuzione sull'istanza emette un comando di riavvio o se l'API Amazon o EC2 Amazon EMR viene utilizzata per disabilitare la protezione dalla terminazione. Questo vale anche se utilizzi le versioni 7.1 e successive di Amazon EMR e un'istanza diventa non integra e irrecuperabile. Anche se la protezione da cessazione è abilitata, i dati salvati nell'archiviazione dell'istanza, inclusi i dati HDFS, possono andare persi. Scrivi l'output dei dati nei percorsi Amazon S3 e crea strategie di backup appropriate per i tuoi requisiti di business continuity.
Questo tipo di protezione non pregiudica la possibilità di dimensionare le risorse del cluster mediante una delle seguenti operazioni:
-
Ridimensionamento manuale di un cluster con o. AWS Management Console AWS CLI Per ulteriori informazioni, consulta Ridimensiona manualmente un cluster Amazon EMR in esecuzione.
-
Rimozione delle istanze da un gruppo di istanze principali o di task utilizzando una policy di riduzione con scalabilità automatica. Per ulteriori informazioni, consulta Utilizzo del ridimensionamento automatico con una politica personalizzata, ad esempio gruppi in Amazon EMR.
-
Rimozione delle istanze da un parco istanze mediante la riduzione della capacità di destinazione. Per ulteriori informazioni, consulta Opzioni del parco istanze.
Protezione dalla terminazione e Amazon EC2
L'impostazione di protezione dalla terminazione in un cluster Amazon EMR corrisponde all'attributo per tutte le istanze EC2 Amazon DisableApiTermination
del cluster. Ad esempio, se abiliti la protezione dalle terminazioni in un cluster EMR, Amazon EMR DisableApiTermination
imposta automaticamente su true per tutte EC2 le istanze all'interno del cluster EMR. Lo stesso vale se disabiliti la protezione dalla terminazione. Amazon EMR si imposta automaticamente su false DisableApiTermination
per tutte le EC2 istanze all'interno del cluster EMR. Se interrompi o riduci un cluster da Amazon EMR e le impostazioni di EC2 Amazon sono in conflitto per EC2 un'istanza, Amazon EMR dà la priorità all'DisableApiStop
impostazione Amazon EMR rispetto EC2 alle impostazioni and di Amazon e continua a DisableApiTermination
terminare l'istanza. EC2
Ad esempio, puoi utilizzare la EC2 console Amazon per abilitare la protezione dalla terminazione su un' EC2 istanza Amazon in un cluster EMR con la protezione dalla terminazione disabilitata. Se interrompi o riduci il cluster con la console Amazon EMR, AWS CLI l'API Amazon EMR, Amazon EMR DisableApiTermination
sovrascrive l'impostazione, la imposta su false e termina l'istanza insieme ad altre istanze.
Puoi anche utilizzare la EC2 console Amazon per abilitare la protezione dall'arresto su un' EC2 istanza Amazon in un cluster EMR con la protezione dalla terminazione disabilitata. Se interrompi o riduci il cluster, Amazon EMR DisableApiStop
imposta su false in EC2 Amazon e termina l'istanza insieme ad altre istanze.
Amazon EMR sostituisce l'DisableApiStop
impostazione solo quando interrompi o riduci un cluster. Quando abiliti o disabiliti la protezione dalla terminazione in un cluster EMR, Amazon EMR non modifica disableApiStop
l'impostazione per nessuna delle istanze EC2 nel rispettivo cluster EMR.
Importante
Se crei un'istanza come parte di un cluster Amazon EMR con protezione dalla terminazione e utilizzi l' EC2 API o AWS CLI i comandi di Amazon per modificare l'istanza in modo che DisableApiTermination
sia cosìfalse
, e quindi l' EC2 API o AWS CLI i comandi Amazon eseguono l'TerminateInstances
operazione, l'istanza Amazon EC2 viene terminata.
Protezione da cessazione e nodi YARN con stato Unhealthy (Non integro)
Amazon EMR controlla periodicamente lo stato di Apache Hadoop YARN dei nodi in esecuzione su istanze Amazon core e task in un cluster. EC2 Lo stato di salute viene segnalato dal servizio di controllo dello stato di salute. NodeManager UNHEALTHY
, il controller di istanza Amazon EMR aggiunge il nodo a una denylist e non gli assegna contenitori YARN finché non torna a funzionare. A seconda dello stato di protezione dalla terminazione, della sostituzione dei nodi non integri e della versione di rilascio di Amazon EMR, Amazon EMR sostituirà l'istanza non integra o interromperà l'allocazione dei controller all'istanza.
Protezione dalla terminazione e terminazione dopo l'esecuzione di una fase
Quando abiliti la terminazione dopo l'esecuzione della fase e abiliti anche la protezione dalla terminazione, Amazon EMR ignora la protezione dalla terminazione.
Quando si inviano fasi a un cluster, è possibile impostare la proprietà ActionOnFailure
per stabilire cosa accede se la fase non può completare l'esecuzione a causa di un errore. I valori possibile per questa impostazione sono TERMINATE_CLUSTER
(TERMINATE_JOB_FLOW
con le versioni precedenti), CANCEL_AND_WAIT
e CONTINUE
. Per ulteriori informazioni, consulta Invia il lavoro a un cluster Amazon EMR.
Se una fase configurata con ActionOnFailure
set to fallisceCANCEL_AND_WAIT
, se è abilitata la terminazione dopo l'esecuzione della fase, il cluster si interrompe senza eseguire i passaggi successivi.
Se una fase, configurata con ActionOnFailure
impostato su TERMINATE_CLUSTER
, non riesce, è possibile utilizzare la tabella delle impostazioni riportata di seguito per determinare il risultato.
ActionOnFailure | Terminazione dopo l'esecuzione della fase | Termination protection (Protezione da cessazione) | Risultato |
---|---|---|---|
|
Abilitato |
Disabilitato |
Il cluster viene terminato |
Abilitato |
Abilitato |
Il cluster viene terminato |
|
Disabilitato |
Abilitato |
Il cluster non viene terminato |
|
Disabilitato |
Disabilitato |
Il cluster viene terminato |
Protezione da cessazione e istanze Spot
La protezione dalla terminazione di Amazon EMR non impedisce la chiusura di un'istanza Amazon EC2 Spot quando il prezzo Spot supera il prezzo Spot massimo.
Configurazione della protezione da cessazione all'avvio di un cluster
Puoi abilitare o disabilitare la protezione dalla terminazione quando avvii un cluster utilizzando la console, l'API o l'API AWS CLI.
Per i cluster a nodo singolo, le impostazioni predefinite di protezione dalla terminazione sono le seguenti:
-
Avvio di un cluster tramite Amazon EMR Console —Termination Protection è disabilitato per impostazione predefinita.
-
L'avvio di un cluster tramite AWS CLI
aws emr create-cluster
—Termination Protection è disabilitato a meno che non sia specificato.--termination-protected
-
L'avvio di un cluster tramite il comando RunJobFlowAPI Amazon EMR: Termination Protection è disabilitato a meno che
TerminationProtected
il valore booleano non sia impostato su.true
Per i cluster ad alta disponibilità, le impostazioni predefinite di protezione dalla terminazione sono le seguenti:
-
Avvio di un cluster tramite Amazon EMR Console: la protezione dalle terminazioni è abilitata per impostazione predefinita.
-
L'avvio di un cluster tramite AWS CLI
aws emr create-cluster
—Termination Protection è disabilitato a meno che non sia specificato.--termination-protected
-
L'avvio di un cluster tramite il comando RunJobFlowAPI Amazon EMR: Termination Protection è disabilitato a meno che
TerminationProtected
il valore booleano non sia impostato su.true
Configurazione della protezione da cessazione per i cluster in esecuzione
È possibile configurare la protezione da terminazione per un cluster in esecuzione con la console o la AWS CLI.