Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de la protección de finalización para proteger sus clústeres de Amazon EMR de un cierre accidental
La protección de finalización protege sus clústeres de la finalización accidental, lo que puede resultar especialmente útil para clústeres de larga ejecución que procesan cargas de trabajo críticas. Si la protección de terminación está habilitada en un clúster de ejecución prolongada, puede seguir terminando el clúster, pero primero debe quitar de forma explícita la protección de terminación de este. Esto ayuda a garantizar que EC2 las instancias no se cierren por accidente o error. Puede habilitar la protección de terminación al crear un clúster y también cambiar este ajuste en un clúster en ejecución.
Con la protección de terminación habilitada, la acción TerminateJobFlows
de la API de Amazon EMR no funciona. Los usuarios no pueden terminar el clúster con esta API ni con el comando terminate-clusters
desde la AWS CLI. La API devuelve un error y la CLI se cierra con un código de devolución distinto de cero. Cuando utilice la consola de Amazon EMR para terminar un clúster, se le pedirá que realice un paso adicional para desactivar la protección de terminación.
aviso
La protección de terminación no garantiza que los datos se conserven en caso de un error humano o de una solución alternativa, por ejemplo, si se emite un comando de reinicio desde la línea de comandos mientras se está conectado a la instancia mediante SSH, si una aplicación o un script que se ejecuta en la instancia emite un comando de reinicio o si se utiliza la API de Amazon o EC2 Amazon EMR para deshabilitar la protección de terminación. Esto también es cierto si está ejecutando la versión 7.1 y posteriores de Amazon EMR y una instancia deja de estar en buen estado y es irrecuperable. Incluso con la protección contra la terminación habilitada, los datos guardados en el almacenamiento de instancias, incluidos los datos del HDFS, se pueden perder. Escriba salidas de datos en las ubicaciones de Amazon S3 y cree estrategias de copia de seguridad adecuadas para sus requisitos de continuidad empresarial.
La protección de terminación no afecta a la capacidad para escalar los recursos del clúster con cualquiera de las siguientes acciones:
-
Cambiar el tamaño de un clúster manualmente con la tecla O. AWS Management Console AWS CLI Para obtener más información, consulte Cambio manual del tamaño de un clúster de Amazon EMR en ejecución.
-
Eliminar instancias de un grupo de instancias secundarias o de tareas mediante una política de escalado descendente con escalado automático. Para obtener más información, consulte Uso del escalado automático con una política personalizada para grupos de instancias en Amazon EMR.
-
Eliminar instancias de una flota de instancias reduciendo la capacidad de destino. Para obtener más información, consulte Opciones de flota de instancias.
Protección de rescisión y Amazon EC2
La configuración de protección de terminación de un clúster de Amazon EMR se corresponde con el DisableApiTermination
atributo de todas las EC2 instancias de Amazon del clúster. Por ejemplo, si habilita la protección de terminación en un clúster de EMR, Amazon EMR se establece automáticamente en true DisableApiTermination
para todas las instancias EC2 del clúster de EMR. Lo mismo se aplica si deshabilita la protección de finalización. Amazon EMR se establece automáticamente en false DisableApiTermination
para todas las EC2 instancias del clúster de EMR. Si cancelas o reduces la escala de un clúster de Amazon EMR y la EC2 configuración de Amazon entra en conflicto en una EC2 instancia, Amazon EMR prioriza la configuración de Amazon EMR sobre la DisableApiTermination
configuración DisableApiStop
and de Amazon EC2 y continúa cancelando la instancia. EC2
Por ejemplo, puedes usar la EC2 consola de Amazon para habilitar la protección de terminación en una EC2 instancia de Amazon en un clúster de EMR con la protección de terminación deshabilitada. Si finaliza o reduce el clúster con la consola de Amazon EMR, la o la API de Amazon EMR AWS CLI, Amazon EMR anula la DisableApiTermination
configuración, la establece en false y termina la instancia junto con las demás instancias.
También puedes usar la EC2 consola de Amazon para habilitar la protección contra interrupciones en una EC2 instancia de Amazon en un clúster de EMR con la protección de terminación deshabilitada. Si finaliza o reduce el clúster, Amazon EMR se establece DisableApiStop
en false en Amazon EC2 y termina la instancia junto con las demás instancias.
Amazon EMR anula la configuración de DisableApiStop
solo cuando se finaliza o se reduce verticalmente un clúster. Al activar o desactivar la protección de terminación en un clúster de EMR, Amazon EMR no cambia la disableApiStop
configuración de ninguna de las EC2 instancias del clúster de EMR correspondiente.
importante
Si crea una instancia como parte de un clúster de Amazon EMR con protección de terminación y utiliza la EC2 API o los AWS CLI comandos de Amazon para modificar la instancia de forma que DisableApiTermination
sea así yfalse
, a continuación, la EC2 API o los AWS CLI comandos de Amazon ejecutan la TerminateInstances
operación, la EC2 instancia de Amazon finaliza.
Protección de terminación y nodos de YARN en mal estado
Amazon EMR comprueba periódicamente el estado de Apache Hadoop YARN de los nodos que se ejecutan en las EC2 instancias principales y de tareas de Amazon de un clúster. El servicio de verificación de estado informa del estado de NodeManager saludUNHEALTHY
, el controlador de instancias de Amazon EMR lo agrega a la lista de denegación y no le asigna contenedores YARN hasta que vuelva a estar en buen estado. Según los estados de la protección de finalización, el reemplazo de nodos en mal estado y la versión de lanzamiento de Amazon EMR, Amazon EMR reemplazará la instancia en mal estado o dejará de asignar controladores a la instancia.
Protección de finalización y finalización tras la ejecución de pasos
Cuando habilita la finalización tras la ejecución de pasos y también habilita la protección de finalización, Amazon EMR ignora la protección de finalización.
Al enviar pasos a un clúster, puede establecer la propiedad ActionOnFailure
para determinar qué sucede si el paso no puede completar su ejecución debido a un error. Los valores posibles para esta propiedad son TERMINATE_CLUSTER
(TERMINATE_JOB_FLOW
con versiones anteriores), CANCEL_AND_WAIT
y CONTINUE
. Para obtener más información, consulte Envío del trabajo a un clúster de Amazon EMR.
Si se produce un error en un paso que se ha configurado con el valor ActionOnFailure
en CANCEL_AND_WAIT
, y la ejecución de pasos se ha habilitado, el clúster finaliza sin ejecutar los pasos siguientes.
Si se produce un error en un paso que tiene la propiedad ActionOnFailure
establecida en TERMINATE_CLUSTER
, utilice la tabla de configuración mostrada a continuación para determinar el resultado.
ActionOnFailure | Finalización después de la ejecución de pasos | Protección de finalización | Resultado |
---|---|---|---|
|
Habilitado |
Deshabilitado |
El clúster termina |
Habilitado |
Habilitado |
El clúster termina |
|
Deshabilitado |
Habilitado |
El clúster continúa |
|
Deshabilitad |
Deshabilitado |
El clúster termina |
Protección de terminación e instancias de spot
La protección de rescisión de Amazon EMR no impide que una instancia EC2 spot de Amazon se cancele cuando el precio spot supera el precio spot máximo.
Configuración de la protección de terminación al lanzar un clúster
Puede activar o desactivar la protección de terminación al lanzar un clúster mediante la consola AWS CLI, la o la API.
Para los clústeres de un solo nodo, la configuración de protección de finalización predeterminada es la siguiente:
-
Lanzamiento de un clúster mediante la consola Amazon EMR: la protección de finalización está deshabilitada de forma predeterminada.
-
El lanzamiento de un clúster mediante AWS CLI
aws emr create-cluster
: Termination Protection está deshabilitado a menos que--termination-protected
se especifique lo contrario. -
Lanzamiento de un clúster mediante el RunJobFlowcomando API Amazon EMR: la protección de terminación está deshabilitada a menos que el valor
TerminationProtected
booleano esté establecido en.true
Para los clústeres de alta disponibilidad, la configuración de protección de finalización predeterminada es la siguiente:
-
Lanzamiento de un clúster mediante la consola de Amazon EMR: la protección de finalización está habilitada de forma predeterminada.
-
El lanzamiento de un clúster mediante AWS CLI
aws emr create-cluster
: la protección de terminación está deshabilitada a menos que se especifique lo contrario.--termination-protected
-
Lanzamiento de un clúster mediante el RunJobFlowcomando API Amazon EMR: la protección de terminación está deshabilitada a menos que el valor
TerminationProtected
booleano esté establecido en.true
Configuración de la protección de terminación para ejecutar clústeres
Puede configurar la protección de terminación para un clúster en ejecución utilizando la consola o la AWS CLI.