

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.

# AWS::Serverless::MicrovmImage
<a name="sam-resource-microvmimage"></a>

 Crea una imagen de AWS Lambda microVM a partir de un artefacto de código almacenado en Amazon S3. Una imagen de microVM es una Firecracker instantánea creada a partir del código de una aplicación Dockerfile y que permite el inicio en menos de un segundo de las instancias de microVM. 

**nota**  
Al realizar la implementación en AWS CloudFormation, AWS SAM transforma AWS SAM los recursos en recursos. CloudFormation Para obtener más información, consulte [Generado CloudFormation recursos para AWS SAM](sam-specification-generated-resources.md). 

## Sintaxis
<a name="sam-resource-microvmimage-syntax"></a>

Para declarar esta entidad en tu plantilla AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis.

### YAML
<a name="sam-resource-microvmimage-syntax.yaml"></a>

```
Type: AWS::Serverless::MicrovmImage
Properties:
  [AdditionalOsCapabilities](#sam-microvmimage-additionaloscapabilities): {{List}}
  [BaseImageArn](#sam-microvmimage-baseimagearn): {{String}}
  [BaseImageVersion](#sam-microvmimage-baseimageversion): {{String}}
  [BuildRoleArn](#sam-microvmimage-buildrolearn): {{String}}
  [CodeUri](#sam-microvmimage-codeuri): {{String}}
  [CpuConfigurations](#sam-microvmimage-cpuconfigurations): {{List}}
  [Description](#sam-microvmimage-description): {{String}}
  [EgressNetworkConnectors](#sam-microvmimage-egressnetworkconnectors): {{List}}
  [EnvironmentVariables](#sam-microvmimage-environmentvariables): {{Map}}
  [Hooks](#sam-microvmimage-hooks): {{[Hooks](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-hooks.html)}}
  [Logging](#sam-microvmimage-logging): {{[Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-logging.html)}}
  [Name](#sam-microvmimage-name): {{String}}
  [PropagateTags](#sam-microvmimage-propagatetags): {{Boolean}}
  [Resources](#sam-microvmimage-resources): {{List}}
  [Tags](#sam-microvmimage-tags): {{Map}}
```

## Propiedades
<a name="sam-resource-microvmimage-properties"></a>

 `AdditionalOsCapabilities`   <a name="sam-microvmimage-additionaloscapabilities"></a>
Capacidades de sistema operativo adicionales que se pueden conceder al entorno de ejecución de MicroVM. Si no especificas un valor, el servicio no otorga capacidades de sistema operativo adicionales.  
*Valores válidos*: `ALL`  
*Tipo*: lista  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[AdditionalOsCapabilities](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-additionaloscapabilities)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `BaseImageArn`   <a name="sam-microvmimage-baseimagearn"></a>
El ARN de la imagen microVM base a partir de la cual se va a construir.  
*Tipo:* cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[BaseImageArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-baseimagearn)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `BaseImageVersion`   <a name="sam-microvmimage-baseimageversion"></a>
La versión de la imagen microVM base que se va a utilizar.  
*Tipo:* cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[BaseImageVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-baseimageversion)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `BuildRoleArn`   <a name="sam-microvmimage-buildrolearn"></a>
El ARN de la función de IAM que asume el servicio de compilación de microVM para descargar el artefacto de código de Amazon S3 y escribir los registros de compilación.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[BuildRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-buildrolearn)` propiedad de un recurso. `AWS::Lambda::MicrovmImage` Esto es obligatorio en CloudFormation , pero no en AWS SAM. Si no especifica un rol, AWS SAM crea uno con un identificador lógico de`{{<resource-logical-id>}}BuildRole`. Si tu artefacto de código está cifrado con una clave gestionada por el cliente AWS KMS, debes proporcionar tu propia función con el `kms:Decrypt` permiso correspondiente. 

 `CodeUri`   <a name="sam-microvmimage-codeuri"></a>
El URI de Amazon S3 del artefacto zip que contiene el código de la aplicación Dockerfile y.  
*Tipo:* cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se transforma en la `[CodeArtifact](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-codeartifact)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. AWS SAM envuelve el URI en la `CodeArtifact.Uri` estructura. 

 `CpuConfigurations`   <a name="sam-microvmimage-cpuconfigurations"></a>
Una lista de [CpuConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-cpuconfiguration.html)objetos que especifican las arquitecturas de CPU compatibles con la microVM. Si no especificas un valor, el servicio utiliza la arquitectura de CPU predeterminada.  
*Tipo*: lista  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[CpuConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-cpuconfigurations)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `Description`   <a name="sam-microvmimage-description"></a>
Descripción de la imagen de la microVM.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-description)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `EgressNetworkConnectors`   <a name="sam-microvmimage-egressnetworkconnectors"></a>
La lista de ARN de conectores de red de salida disponibles para la microVM en tiempo de ejecución.  
*Tipo*: lista  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[EgressNetworkConnectors](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-egressnetworkconnectors)` propiedad de un recurso. `AWS::Lambda::MicrovmImage` 

 `EnvironmentVariables`   <a name="sam-microvmimage-environmentvariables"></a>
Variables de entorno configuradas en el entorno de ejecución de MicroVM.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[EnvironmentVariables](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-environmentvariables)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. En AWS SAM, especifique como un mapa (por ejemplo,`KEY: value`). AWS SAM convierte al formato CloudFormation de matriz`[{Key: KEY, Value: value}]`. 

 `Hooks`   <a name="sam-microvmimage-hooks"></a>
Configuración de enlaces durante el ciclo de vida para imágenes de micromáquinas virtuales y micromáquinas virtuales.  
*[Tipo: enlaces](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-hooks.html)*  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[Hooks](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-hooks)` propiedad de un recurso. `AWS::Lambda::MicrovmImage` 

 `Logging`   <a name="sam-microvmimage-logging"></a>
Configuración para la salida de registro de microVM. Especifique exactamente una: `CloudWatch` habilitar el CloudWatch registro o `Disabled` desactivarlo.  
*Type*: [Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-logging.html)  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-logging)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `Name`   <a name="sam-microvmimage-name"></a>
El nombre de la imagen de la microVM.  
*Tipo:* cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-name)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `PropagateTags`   <a name="sam-microvmimage-propagatetags"></a>
Especifica si se deben pasar etiquetas de la `Tags` propiedad a los recursos generados, como el rol de compilación generado automáticamente.  
*Tipo*: Booleano  
*Obligatorio*: no  
*Valor predeterminado*: `False`  
*CloudFormation compatibilidad*: esta propiedad es exclusiva AWS SAM y no tiene un CloudFormation equivalente.

 `Resources`   <a name="sam-microvmimage-resources"></a>
Una lista de objetos de [Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-resources.html) que especifican los requisitos de recursos de la microVM.  
*Tipo*: lista  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-resources)` propiedad de un `AWS::Lambda::MicrovmImage` recurso. 

 `Tags`   <a name="sam-microvmimage-tags"></a>
Un mapa de pares clave-valor que especifica las etiquetas agregadas a esta imagen de microVM.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-tags)` propiedad de un recurso. `AWS::Lambda::MicrovmImage` La `Tags` propiedad en se AWS SAM compone de pares clave-valor (mientras que en CloudFormation esta propiedad se compone de una lista de `Tag` objetos). Además, agrega AWS SAM automáticamente una `lambda:createdBy:SAM` etiqueta a esta imagen de microVM y a las funciones predeterminadas que se generan para ella. 

## valores devueltos
<a name="sam-resource-microvmimage-return-values"></a>

### Ref.
<a name="sam-resource-microvmimage-return-values-ref"></a>

Cuando se proporciona el ID lógico de este recurso a la función `Ref` intrínseca, devuelve el ARN de la imagen de la microVM.

Para obtener más información sobre el uso de la función `Ref`, consulta [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) en la *Guía del usuario de AWS CloudFormation *.

### Ventilador:: GetAtt
<a name="sam-resource-microvmimage-return-values-fn--getatt"></a>

`Fn::GetAtt` devuelve un valor para un atributo especificado de este tipo. A continuación se indican los atributos disponibles y los valores devueltos de muestra.

Para obtener más información acerca de cómo usar `Fn::GetAtt`, consulta [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) en la *Guía del usuario de AWS CloudFormation *.

`CreatedAt`  <a name="sam-microvmimage-getatt-createdat"></a>
La marca de tiempo en que se creó la versión de imagen de microVM.

`ImageArn`  <a name="sam-microvmimage-getatt-imagearn"></a>
El ARN de la imagen de la microVM.

`LatestActiveImageVersion`  <a name="sam-microvmimage-getatt-latestactiveimageversion"></a>
La última versión activa de la imagen de la microVM.

`LatestFailedImageVersion`  <a name="sam-microvmimage-getatt-latestfailedimageversion"></a>
La última versión fallida de la imagen de la microVM, si la hay.

`State`  <a name="sam-microvmimage-getatt-state"></a>
El estado actual de la imagen de la microVM.

`UpdatedAt`  <a name="sam-microvmimage-getatt-updatedat"></a>
La marca de tiempo en la que se actualizó por última vez la versión de la imagen de la microVM.

## Ejemplos
<a name="sam-resource-microvmimage-examples"></a>

### Imagen microVM mínima
<a name="sam-resource-microvmimage-example-minimal"></a>

El siguiente ejemplo crea una imagen de microVM con solo las propiedades necesarias. AWS SAM genera automáticamente un rol de compilación.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Resources:
  MyMicroVM:
    Type: AWS::Serverless::MicrovmImage
    Properties:
      Name: my-app
      CodeUri: s3://my-bucket/app.zip
      BaseImageArn: arn:aws:lambda:us-east-2:aws:microvm-image:al2023-1
      BaseImageVersion: "0"
```

### Configuración completa de imágenes de microVM
<a name="sam-resource-microvmimage-example-full"></a>

El siguiente ejemplo crea una imagen de microVM con todas las propiedades disponibles configuradas.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Resources:
  MyMicroVM:
    Type: AWS::Serverless::MicrovmImage
    Properties:
      Name: my-app
      CodeUri: s3://my-bucket/app.zip
      BaseImageArn: arn:aws:lambda:us-east-2:aws:microvm-image:al2023-1
      BaseImageVersion: "0"
      Description: "Production MicroVM application"
      CpuConfigurations:
        - Architecture: ARM_64
      Resources:
        - MinimumMemoryInMiB: 1024
      AdditionalOsCapabilities:
        - ALL
      EgressNetworkConnectors:
        - arn:aws:lambda:us-east-2:aws:network-connector:aws-network-connector:INTERNET_EGRESS
      Hooks:
        Port: 9000
        MicrovmHooks:
          Run: ENABLED
          RunTimeoutInSeconds: 30
          Suspend: ENABLED
          Resume: ENABLED
        MicrovmImageHooks:
          Ready: ENABLED
          ReadyTimeoutInSeconds: 60
      EnvironmentVariables:
        LOG_LEVEL: info
        APP_ENV: production
      Logging:
        CloudWatch:
          LogGroup: /aws/lambda-microvms/my-app
      Tags:
        Environment: Production
        Team: Platform
```