As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Usando a proteção contra rescisão para proteger seus EMR clusters da Amazon contra o desligamento acidental
A proteção contra encerramento protege os clusters do encerramento acidental, o que pode ser especialmente útil para clusters de longa execução que processam workloads críticas. Quando a proteção contra encerramento está habilitada em um cluster de longa execução, você ainda poderá encerrar o cluster, mas deverá removê-la explicitamente do cluster primeiro. Isso ajuda a garantir que as EC2 instâncias não sejam encerradas por acidente ou erro. Você pode habilitar a proteção contra encerramento ao criar um cluster e alterar a configuração em um cluster em execução.
Com a proteção contra rescisão ativada, a TerminateJobFlows
ação na Amazon EMR API não funciona. Os usuários não podem encerrar o cluster usando isso API ou o terminate-clusters
comando do AWS CLI. O API retorna um erro e CLI sai com um código de retorno diferente de zero. Ao usar o EMR console da Amazon para encerrar um cluster, você recebe uma etapa extra para desativar a proteção contra encerramento.
Atenção
A proteção contra encerramento não garante que os dados sejam retidos no caso de um erro humano ou de uma solução alternativa, por exemplo, se um comando de reinicialização for emitido pela linha de comando enquanto estiver conectado à instância usandoSSH, se um aplicativo ou script em execução na instância emitir um comando de reinicialização ou se a Amazon ou EC2 a Amazon forem usadas para desativar a proteção contra encerramento. EMR API Isso também é verdade se você estiver executando as EMR versões 7.1 e superiores da Amazon e uma instância ficar insalubre e irrecuperável. Mesmo com a proteção de terminação ativada, os dados salvos no armazenamento da instância, incluindo HDFS dados, podem ser perdidos. Grave a saída de dados nos locais do Amazon S3 e crie estratégias de backup conforme a necessidade de seus requisitos de continuidade de negócios.
A proteção contra encerramento não afeta sua capacidade de dimensionar recursos de cluster usando qualquer uma das seguintes ações:
-
Redimensionando um cluster manualmente com o AWS Management Console ou AWS CLI. Para obter mais informações, consulte Redimensionar manualmente um cluster da Amazon EMR em execução.
-
Removendo instâncias de um grupo de instâncias core ou de tarefa usando uma política de redução com a escalabilidade automática. Para obter mais informações, consulte Usando escalabilidade automática com uma política personalizada para grupos de instâncias na Amazon EMR.
-
Removendo instâncias de uma frota de instâncias, reduzindo a capacidade de destino. Para obter mais informações, consulte Opções de frotas de instâncias.
Proteção contra rescisão e Amazon EC2
A configuração de proteção contra encerramento em um EMR cluster da Amazon corresponde ao DisableApiTermination
atributo de todas as EC2 instâncias da Amazon no cluster. Por exemplo, se você habilitar a proteção contra rescisão em um EMR cluster, a Amazon EMR automaticamente define DisableApiTermination
como true para todas as EC2 instâncias dentro do EMR cluster. O mesmo se aplica se você desabilitar a proteção contra encerramento. A Amazon define EMR automaticamente como false DisableApiTermination
para todas as EC2 instâncias dentro do EMR cluster. Se você encerrar ou reduzir um cluster da Amazon EMR e EC2 as configurações da Amazon entrarem em conflito para uma EC2 instância, a Amazon EMR priorizará a EMR configuração da Amazon sobre as configurações DisableApiStop
e DisableApiTermination
na Amazon EC2 e continuará encerrando a instância. EC2
Por exemplo, você pode usar o EC2 console da Amazon para ativar a proteção de encerramento em uma EC2 instância da Amazon em um EMR cluster com a proteção de encerramento desativada. Se você encerrar ou reduzir o cluster com o EMR console da Amazon, o ou o Amazon AWS CLI, a Amazon EMR API EMR substituirá a DisableApiTermination
configuração, a definirá como falsa e encerrará a instância junto com outras instâncias.
Você também pode usar o EC2 console da Amazon para ativar a proteção de parada em uma EC2 instância da Amazon em um EMR cluster com a proteção de encerramento desativada. Se você encerrar ou reduzir o cluster, a Amazon EMR definirá como DisableApiStop
false na Amazon EC2 e encerrará a instância junto com outras instâncias.
A Amazon EMR substitui a DisableApiStop
configuração somente quando você encerra ou reduz a escala de um cluster. Quando você ativa ou desativa a proteção contra rescisão em um EMR cluster, a Amazon EMR não altera a disableApiStop
configuração de nenhuma das EC2 instâncias no respectivo EMR cluster.
Importante
Se você criar uma instância como parte de um EMR cluster da Amazon com proteção contra encerramento e usar os AWS CLI comandos Amazon EC2 API ou para modificar a instância de tal forma que DisableApiTermination
sejafalse
, e então a Amazon EC2 API ou os AWS CLI comandos executarem a TerminateInstances
operação, a EC2 instância da Amazon será encerrada.
Proteção de terminação e nós insalubres YARN
A Amazon verifica EMR periodicamente o YARN status do Apache Hadoop dos nós em execução nas EC2 instâncias principais e de tarefas da Amazon em um cluster. O estado de saúde é relatado pelo serviço NodeManager de verificação de saúdeUNHEALTHY
, o controlador de EMR instância da Amazon adiciona o nó a uma lista de negação e não aloca YARN contêineres até que ele volte a funcionar. Dependendo do status da proteção contra encerramento, da substituição de nós com problemas de integridade e da versão de EMR lançamento da Amazon, a Amazon EMR substituirá a instância não íntegra ou interromperá a alocação de controladores para a instância.
Proteção contra encerramento e encerramento após a execução de etapas
Quando você ativa a rescisão após a execução da etapa e também ativa a proteção contra rescisão, a Amazon EMR ignora a proteção contra rescisão.
Ao enviar etapas para um cluster, você pode definir a propriedade ActionOnFailure
para determinar o que acontecerá se não for possível executar a etapa devido a um erro. Os valores possíveis para essa configuração são TERMINATE_CLUSTER
(TERMINATE_JOB_FLOW
com versões anteriores) CANCEL_AND_WAIT
e CONTINUE
. Para obter mais informações, consulte Envie o trabalho para um EMR cluster da Amazon.
Se ocorrer uma falha em uma etapa configurada com ActionOnFailure
definida como CANCEL_AND_WAIT
, se o encerramento após a execução da etapa estiver habilitado, o cluster será encerrado sem executar as etapas subsequentes.
Se ocorrer uma falha em uma etapa configurada com ActionOnFailure
definida como TERMINATE_CLUSTER
, use a tabela de configurações abaixo para determinar o resultado.
ActionOnFailure | Encerramento após a execução da etapa | Termination protection | Resultado |
---|---|---|---|
|
Habilitada |
Desabilitado |
O cluster é encerrado |
Habilitada |
Habilitado |
O cluster é encerrado |
|
Desabilitado |
Habilitada |
O cluster continua |
|
Desabilitado |
Desabilitado |
O cluster é encerrado |
Proteção contra término e instâncias spot
A proteção contra EMR rescisão da Amazon não impede que uma instância EC2 spot da Amazon seja encerrada quando o preço spot subir acima do preço spot máximo.
Configurar a proteção contra término ao iniciar um cluster
Você pode ativar ou desativar a proteção contra encerramento ao iniciar um cluster usando o console AWS CLI, o ou API o.
Em clusters de nó único, as configurações padrão de proteção contra encerramento são as seguintes:
-
Lançamento de um cluster pelo Amazon EMR Console — a Proteção de rescisão está desativada por padrão.
-
A inicialização de um cluster por meio da AWS CLI
aws emr create-cluster
—Termination Protection está desativada, a menos que--termination-protected
seja especificada. -
Lançamento de um cluster pelo EMR API RunJobFlowcomando Amazon — a Proteção de terminação é desativada, a menos que o valor
TerminationProtected
booleano esteja definido como.true
Em clusters de alta disponibilidade, as configurações padrão de proteção contra encerramento são as seguintes:
-
Lançamento de um cluster pelo Amazon EMR Console — A Proteção de Terminação é ativada por padrão.
-
A inicialização de um cluster por meio da AWS CLI
aws emr create-cluster
—Termination Protection está desativada, a menos que--termination-protected
seja especificada. -
Lançamento de um cluster pelo EMR API RunJobFlowcomando Amazon — a Proteção de terminação é desativada, a menos que o valor
TerminationProtected
booleano esteja definido como.true
Configurar a proteção contra término para clusters em execução
Você pode configurar a proteção contra término para um cluster em execução usando o console ou a AWS CLI.