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.
Utilice las plantillas de lanzamiento de Amazon EC2 con AWS Batch
AWS Batch admite el uso de plantillas de lanzamiento de Amazon EC2 con sus entornos informáticos de EC2. Con las plantillas de lanzamiento, puede modificar la configuración predeterminada de sus recursos AWS Batch informáticos sin necesidad de crear AMI personalizadas.
Las plantillas de lanzamiento pueden especificar las AMI que tienen prioridad en el orden de selección de las AMI. Para obtener más información, consulte Orden de selección AMI.
nota
Cuando especificas una plantilla de lanzamiento personalizada para un entorno de AWS Batch procesamiento, AWS Batch no asocias directamente tu plantilla de lanzamiento al grupo de Auto Scaling subyacente. En su lugar, AWS Batch crea una plantilla de Batch-managed lanzamiento independiente para el grupo de Auto Scaling e incorpora en ella la configuración relevante de tu plantilla de lanzamiento personalizada. Como resultado, la plantilla de lanzamiento que ves asociada al grupo de Auto Scaling es diferente de la que especificaste originalmente. Este es el comportamiento esperado.
nota
Las plantillas de lanzamiento no son compatibles con los recursos de AWS Fargate.
Es necesario crear una plantilla de lanzamiento para poder asociarla a un entorno de computación. Puede crear una plantilla de lanzamiento en la consola de Amazon EC2. O bien, puedes usar el AWS CLI o un AWS SDK. Por ejemplo, el siguiente archivo JSON representa una plantilla de lanzamiento que cambia el tamaño del volumen de datos de Docker para la AMI de recursos AWS Batch informáticos predeterminada y también lo configura para que se cifre.
{ "LaunchTemplateName": "increase-container-volume-encrypt", "LaunchTemplateData": { "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "Encrypted": true, "VolumeSize": 100, "VolumeType": "gp2" } } ] } }
Para crear la plantilla de lanzamiento anterior, guarda el JSON en un archivo llamado lt-data.json y ejecuta el siguiente AWS CLI comando.
aws ec2 --region<region>create-launch-template --cli-input-json file://lt-data.json
Para obtener más información sobre las plantillas de lanzamiento, consulte Lanzar una instancia desde una plantilla de lanzamiento en la Guía del usuario de Amazon EC2.
Si utiliza una plantilla de lanzamiento para crear el entorno de computación, puede mover los siguientes parámetros del entorno de computación existente a la plantilla de lanzamiento:
nota
Supongamos que alguno de estos parámetros (excepto las etiquetas de Amazon EC2) se especifica tanto en la plantilla de lanzamiento como en la configuración del entorno de procesamiento. Entonces, los parámetros del entorno de cómputo tienen prioridad. Las etiquetas Amazon EC2 se combinan entre la plantilla de lanzamiento y la configuración del entorno de cómputo. Si se produce una colisión en la clave de la etiqueta, el valor de la configuración del entorno de computación tiene prioridad.
-
Pares de claves de Amazon EC2
-
ID de la AMI de Amazon EC2
-
ID del grupo de seguridad
-
Etiquetas de Amazon EC2
Los siguientes parámetros de la plantilla de lanzamiento son ignorados por AWS Batch:
-
Tipo de instancia (especifique los tipos de instancia que desea utilizar al crear el entorno de computación)
-
Rol de instancia (especifique el rol de instancia que desea utilizar al crear el entorno de computación)
-
Subredes de interfaz de red (especifique las subredes que desea utilizar al crear el entorno de computación)
-
Opciones de mercado de instancias (AWS Batch deben controlar la configuración de la instancia puntual)
-
Inhabilite la terminación de la API (AWS Batch debe controlar el ciclo de vida de la instancia)
AWS Batch solo actualiza la plantilla de lanzamiento con una nueva versión de la plantilla de lanzamiento durante las actualizaciones de la infraestructura. Para obtener más información, consulte Actualizar un entorno informático en AWS Batch.
Plantillas de lanzamiento predeterminadas y anuladas
Puede definir una plantilla de lanzamiento predeterminada para el entorno de computación y una plantilla de lanzamiento de anulación para los tipos y las familias de instancias específicos. Esto puede resultar útil para que la plantilla predeterminada se utilice en la mayoría de los tipos de instancias de los entornos de computación.
Las variables de sustitución $Default y $Latest se pueden utilizar en lugar de asignar un nombre a una versión específica. Si no proporciona una plantilla de lanzamiento de anulación, se aplicará automáticamente la predeterminada.
Si usa la $Latest variable $Default o, AWS Batch se aplicará la información actual en el momento en que se cree el entorno de procesamiento. Si la versión predeterminada o la más reciente cambian en el futuro, debe actualizar la información mediante UpdateComputeEnvironment o mediante el comando Consola de administración de AWS - AWS Batch.
Para brindar una flexibilidad adicional, puede definir plantillas de lanzamiento de anulación que se apliquen a tipos o familias de instancias de computación específicos.
nota
Puede especificar hasta diez (10) anulaciones de plantillas de lanzamiento para cada entorno de computación.
Utilice el parámetro targetInstanceTypes para seleccionar el tipo de instancia o la familia que se debe usar en esta anulación de plantilla de lanzamiento. El parámetro instanceTypes debe identificar primero el tipo o la familia de instancias.
Si se definen las anulaciones de plantillas de lanzamiento y se decide eliminarlas más adelante, puede pasar una matriz vacía para anular la configuración del parámetro overrides en la operación de la API UpdateComputeEnvironment. También puede optar por no incluir el parámetro overrides al enviar la operación de la API UpdateComputeEnvironment. Para obtener más información, consulte LaunchTemplateSpecification.overrides
Para obtener más información, consulte LaunchTemplateSpecificationOverride.targetInstanceTypes la guía de referencia de la AWS Batch API.
Datos de usuario de Amazon EC2 en las plantillas de lanzamiento
Puede proporcionar datos de usuario de Amazon EC2 en la plantilla de lanzamiento que será ejecutada por cloud-init
Los datos de usuario de Amazon EC2 en las plantillas de lanzamiento deben estar en el formato archivo multiparte MIME
Si los usas AWS CloudFormation, puedes usar el tipo AWS::CloudFormation: :Init con el script auxiliar cfn-init para realizar escenarios de configuración comunes.
Un archivo multiparte MIME consta de los siguientes componentes:
-
El tipo de contenido y declaración de límite de partes:
Content-Type: multipart/mixed; boundary="==BOUNDARY==" -
La declaración de versión de MIME:
MIME-Version: 1.0 -
Uno o más bloques de datos de usuario, que contienen los siguientes componentes:
-
El límite de apertura, que señala el inicio de un bloque de datos de usuario:
--==BOUNDARY==. Debe dejar en blanco la línea anterior a este límite. -
La declaración de tipo de contenido para el bloque:
Content-Type:. Para obtener más información sobre los tipos de contenido, consulte la documentación. Cloud-Inittext/cloud-config; charset="us-ascii"Debe dejar en blanco la línea que sigue a la declaración de tipo de contenido. -
El contenido de los datos de usuario, por ejemplo, una lista de shell o políticas de
cloud-init.
-
-
El límite de cierre, que señala el final del archivo multiparte MIME:
--==BOUNDARY==--. Debe dejar en blanco la línea anterior al límite de cierre.
nota
Si añade datos de usuario a una plantilla de lanzamiento en la consola de Amazon EC2, puede pegarlos como texto sin formato. O bien, puede cargarlos desde un archivo. Si utilizas el SDK AWS CLI o un AWS SDK, primero debes base64 codificar los datos del usuario y enviar esa cadena como el valor del UserData parámetro cuando llames CreateLaunchTemplate, tal y como se muestra en este archivo JSON.
{ "LaunchTemplateName": "base64-user-data", "LaunchTemplateData": { "UserData": "ewogICAgIkxhdW5jaFRlbXBsYXRlTmFtZSI6ICJpbmNyZWFzZS1jb250YWluZXItdm9sdW..." } }
Valores de configuración de agentes de Amazon ECS reservados
AWS Batch escribe valores de configuración de agentes de Amazon ECS específicos para /etc/ecs/ecs.config cuando las instancias se lancen en entornos informáticos EC2-based gestionados que utilizan Amazon ECS. AWS Batch también puede sobrescribir estos valores durante las actualizaciones del entorno informático, por lo que es posible que los cambios no persistan.
importante
Los conflictos entre los datos de usuario y los valores AWS Batch administrados pueden impedir que se programen los trabajos, provocar un comportamiento de escalado inesperado y generar costos inesperados.
importante
No copies los datos de usuario de una plantilla AWS Batch de lanzamiento gestionada a tu propia plantilla de lanzamiento. AWS Batch-Los datos de usuario gestionados contienen valores que difieren entre los entornos informáticos y cambian cuando se actualiza el entorno informático. Si su plantilla de lanzamiento contiene valores copiados, es posible que entren en conflicto con los valores esperados para el entorno informático actual.
No definas los siguientes valores en los datos de usuario de tu plantilla de lanzamiento. Estos valores los administra AWS Batch y los conflictos pueden provocar problemas de programación y escalado:
ECS_CLUSTERECS_INSTANCE_ATTRIBUTES
Para obtener más información sobre los parámetros enumerados anteriormente, consulte la configuración del agente contenedor de Amazon ECS en la Guía para desarrolladores de Amazon Elastic Container Service.