

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á.

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

 Cria uma imagem de AWS Lambda microVM a partir de um artefato de código armazenado no Amazon S3. Uma imagem de microVM é um Firecracker instantâneo criado a partir de um código de aplicativo, permitindo a inicialização em menos de um Dockerfile segundo para instâncias de microVM. 

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [Gerado CloudFormation recursos para AWS SAM](sam-specification-generated-resources.md). 

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

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### 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}}
```

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

 `AdditionalOsCapabilities`   <a name="sam-microvmimage-additionaloscapabilities"></a>
Recursos adicionais do sistema operacional para conceder ao ambiente de tempo de execução do microVM. Se você não especificar um valor, o serviço não concederá recursos adicionais do sistema operacional.  
*Valores válidos*: `ALL`  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AdditionalOsCapabilities](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-additionaloscapabilities)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `BaseImageArn`   <a name="sam-microvmimage-baseimagearn"></a>
O ARN da imagem base da microVM a partir da qual criar.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BaseImageArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-baseimagearn)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `BaseImageVersion`   <a name="sam-microvmimage-baseimageversion"></a>
A versão da imagem base do microVM a ser usada.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BaseImageVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-baseimageversion)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `BuildRoleArn`   <a name="sam-microvmimage-buildrolearn"></a>
O ARN da função do IAM que o serviço de compilação MicroVM assume para baixar seu artefato de código do Amazon S3 e gravar registros de construção.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[BuildRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-buildrolearn)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. Isso é necessário no CloudFormation , mas não no AWS SAM. Se você não especificar uma função, AWS SAM cria uma com uma ID lógica de`{{<resource-logical-id>}}BuildRole`. Se seu artefato de código estiver criptografado com uma chave gerenciada pelo cliente AWS KMS, você deverá fornecer sua própria função com a `kms:Decrypt` permissão apropriada. 

 `CodeUri`   <a name="sam-microvmimage-codeuri"></a>
O URI do Amazon S3 do artefato zip contendo o código do aplicativo Dockerfile e.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é transformada na `[CodeArtifact](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-codeartifact)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. AWS SAM envolve o URI na `CodeArtifact.Uri` estrutura. 

 `CpuConfigurations`   <a name="sam-microvmimage-cpuconfigurations"></a>
Uma lista de [CpuConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-cpuconfiguration.html)objetos que especificam as arquiteturas de CPU suportadas pela microVM. Se você não especificar um valor, o serviço usará a arquitetura de CPU padrão.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CpuConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-cpuconfigurations)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `Description`   <a name="sam-microvmimage-description"></a>
Uma descrição da imagem do microVM.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-description)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `EgressNetworkConnectors`   <a name="sam-microvmimage-egressnetworkconnectors"></a>
A lista de ARNs de conectores de rede de saída disponíveis para a microVM em tempo de execução.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EgressNetworkConnectors](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-egressnetworkconnectors)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `EnvironmentVariables`   <a name="sam-microvmimage-environmentvariables"></a>
Variáveis de ambiente definidas no ambiente de execução do microVM.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[EnvironmentVariables](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-environmentvariables)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. Em AWS SAM, especifique como um mapa (por exemplo,`KEY: value`). AWS SAM converte para o formato CloudFormation `[{Key: KEY, Value: value}]` de matriz. 

 `Hooks`   <a name="sam-microvmimage-hooks"></a>
Configuração de gancho de ciclo de vida para imagens de microVMS e microVM.  
*Tipo*: [Ganchos](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-hooks.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Hooks](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-hooks)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `Logging`   <a name="sam-microvmimage-logging"></a>
Configuração para saída de registro de microVM. Especifique exatamente um: `CloudWatch` ativar o CloudWatch registro ou `Disabled` desativar o registro.  
*Type*: [Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-logging.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-logging)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `Name`   <a name="sam-microvmimage-name"></a>
O nome da imagem do microVM.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-name)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `PropagateTags`   <a name="sam-microvmimage-propagatetags"></a>
Especifica se as tags da `Tags` propriedade devem ser passadas para os recursos gerados, como a função de criação gerada automaticamente.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `False`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Resources`   <a name="sam-microvmimage-resources"></a>
Uma lista de objetos de [recursos](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-resources.html) que especificam os requisitos de recursos para a microVM.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-resources)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. 

 `Tags`   <a name="sam-microvmimage-tags"></a>
Um mapa de pares de valores-chave que especifica as tags adicionadas a essa imagem de microVM.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-tags)` propriedade de um `AWS::Lambda::MicrovmImage` recurso. A `Tags` propriedade in AWS SAM consiste em pares de valores-chave (enquanto CloudFormation nessa propriedade consiste em uma lista de `Tag` objetos). Além disso, adiciona AWS SAM automaticamente uma `lambda:createdBy:SAM` tag a essa imagem de microVM e às funções padrão que são geradas para ela. 

## Valores de retorno
<a name="sam-resource-microvmimage-return-values"></a>

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

Quando a ID lógica desse recurso é fornecida à função `Ref` intrínseca, ela retorna o ARN da imagem da microVM.

Para obter mais informações sobre como usar a função `Ref`, consulte [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) no *Guia do usuário do AWS CloudFormation *.

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

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra.

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte [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) o *AWS CloudFormation Guia do usuário*.

`CreatedAt`  <a name="sam-microvmimage-getatt-createdat"></a>
O carimbo de data e hora em que a versão da imagem microVM foi criada.

`ImageArn`  <a name="sam-microvmimage-getatt-imagearn"></a>
O ARN da imagem microVM.

`LatestActiveImageVersion`  <a name="sam-microvmimage-getatt-latestactiveimageversion"></a>
A versão ativa mais recente da imagem microVM.

`LatestFailedImageVersion`  <a name="sam-microvmimage-getatt-latestfailedimageversion"></a>
A última versão com falha da imagem do microVM, se houver.

`State`  <a name="sam-microvmimage-getatt-state"></a>
O estado atual da imagem do microVM.

`UpdatedAt`  <a name="sam-microvmimage-getatt-updatedat"></a>
O carimbo de data e hora em que a versão da imagem do microVM foi atualizada pela última vez.

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

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

O exemplo a seguir cria uma imagem de microVM com somente as propriedades necessárias. AWS SAM gera automaticamente uma função de construção.

```
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"
```

### Configuração completa da imagem microVM
<a name="sam-resource-microvmimage-example-full"></a>

O exemplo a seguir cria uma imagem de microVM com todas as propriedades disponíveis 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
```