

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

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

 Amazon S3에 저장된 코드 아티팩트에서 AWS Lambda MicroVM 이미지를 생성합니다. MicroVM 이미지는 Dockerfile 및 애플리케이션 코드로 빌드된 Firecracker 스냅샷으로, MicroVM 인스턴스에 대해 1초 미만의 시작을 활성화합니다.

**참고**  
에 배포하면가 AWS SAM 리소스를 리소스로 AWS CloudFormation AWS SAM CloudFormation 변환합니다. 자세한 내용은 [에 대해 생성된 CloudFormation 리소스 AWS SAM](sam-specification-generated-resources.md) 단원을 참조하십시오.

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

 AWS Serverless Application Model (AWS SAM) 템플릿에서이 개체를 선언하려면 다음 구문을 사용합니다.

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

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

 `AdditionalOsCapabilities`   <a name="sam-microvmimage-additionaloscapabilities"></a>
MicroVM 런타임 환경에 부여할 추가 OS 기능입니다. 값을 지정하지 않으면 서비스에서 추가 OS 기능을 부여하지 않습니다.  
*유효한 값*: `ALL`  
*유형*: 목록  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[AdditionalOsCapabilities](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-additionaloscapabilities)` 속성으로 직접 전달됩니다.

 `BaseImageArn`   <a name="sam-microvmimage-baseimagearn"></a>
빌드할 기본 MicroVM 이미지의 ARN입니다.  
*유형*: 문자열  
*필수 항목 여부:* 예  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[BaseImageArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-baseimagearn)` 속성으로 직접 전달됩니다.

 `BaseImageVersion`   <a name="sam-microvmimage-baseimageversion"></a>
사용할 기본 MicroVM 이미지의 버전입니다.  
*유형*: 문자열  
*필수 항목 여부:* 예  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[BaseImageVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-baseimageversion)` 속성으로 직접 전달됩니다.

 `BuildRoleArn`   <a name="sam-microvmimage-buildrolearn"></a>
MicroVM 빌드 서비스가 Amazon S3에서 코드 아티팩트를 다운로드하고 빌드 로그를 작성하기 위해 수임하는 IAM 역할의 ARN입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[BuildRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-buildrolearn)` 속성과 유사합니다. 이는 CloudFormation 내부에서 필요하지만 AWS SAM내부에서는 필요하지 않습니다. 역할을 지정하지 않으면는 논리적 ID가 인 역할을 AWS SAM 생성합니다`{{<resource-logical-id>}}BuildRole`. 코드 아티팩트가 고객 관리형 키로 암호화된 경우 적절한 `kms:Decrypt` 권한을 자신의 역할에 제공해야 AWS KMS합니다.

 `CodeUri`   <a name="sam-microvmimage-codeuri"></a>
Dockerfile 및 애플리케이션 코드가 포함된 zip 아티팩트의 Amazon S3 URI입니다.  
*유형*: 문자열  
*필수 항목 여부:* 예  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` resource. AWS SAM wraps의 `[CodeArtifact](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-codeartifact)` 속성으로 변환됩니다. URI를 `CodeArtifact.Uri` 구조로 래핑합니다.

 `CpuConfigurations`   <a name="sam-microvmimage-cpuconfigurations"></a>
MicroVM에 지원되는 CPU 아키텍처를 지정하는 [CpuConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-cpuconfiguration.html) 객체 목록입니다. 값을 지정하지 않으면 서비스가 기본 CPU 아키텍처를 사용합니다.  
*유형*: 목록  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[CpuConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-cpuconfigurations)` 속성으로 직접 전달됩니다.

 `Description`   <a name="sam-microvmimage-description"></a>
MicroVM 이미지에 대한 설명입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-description)` 속성으로 직접 전달됩니다.

 `EgressNetworkConnectors`   <a name="sam-microvmimage-egressnetworkconnectors"></a>
런타임 시 MicroVM에서 사용할 수 있는 송신 네트워크 커넥터 ARNs.  
*유형*: 목록  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[EgressNetworkConnectors](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-egressnetworkconnectors)` 속성으로 직접 전달됩니다.

 `EnvironmentVariables`   <a name="sam-microvmimage-environmentvariables"></a>
MicroVM 런타임 환경에 설정된 환경 변수입니다.  
*유형*: 맵  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[EnvironmentVariables](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-environmentvariables)` 속성과 유사합니다. 에서 맵으로를 AWS SAM지정합니다(예: `KEY: value`).는 CloudFormation 배열 형식으로 AWS SAM 변환합니다`[{Key: KEY, Value: value}]`.

 `Hooks`   <a name="sam-microvmimage-hooks"></a>
MicroVMs 및 MicroVM 이미지의 수명 주기 후크 구성입니다.  
*유형*: [Hooks](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-hooks.html)  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[Hooks](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-hooks)` 속성으로 직접 전달됩니다.

 `Logging`   <a name="sam-microvmimage-logging"></a>
MicroVM 로깅 출력에 대한 구성입니다. 정확히 하나 지정: CloudWatch 로깅`CloudWatch`을 활성화하거나 로깅`Disabled`을 끕니다.  
*Type*: [Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-logging.html)  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[Logging](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-logging)` 속성으로 직접 전달됩니다.

 `Name`   <a name="sam-microvmimage-name"></a>
MicroVM 이미지의 이름입니다.  
*유형*: 문자열  
*필수 항목 여부:* 예  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-name)` 속성으로 직접 전달됩니다.

 `PropagateTags`   <a name="sam-microvmimage-propagatetags"></a>
`Tags` 속성에서 자동 생성된 빌드 역할과 같은 생성된 리소스로 태그를 전달할지 여부를 지정합니다.  
*유형*: 부울  
*필수 항목 여부*: 아니요  
*기본값*: `False`  
*CloudFormation 호환성*:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

 `Resources`   <a name="sam-microvmimage-resources"></a>
MicroVM에 대한 [리소스](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-microvmimage-resources.html) 요구 사항을 지정하는 리소스 객체 목록입니다.  
*유형*: 목록  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-resources)` 속성으로 직접 전달됩니다.

 `Tags`   <a name="sam-microvmimage-tags"></a>
이 MicroVM 이미지에 추가된 태그를 지정하는 키-값 페어의 맵입니다.  
*유형*: 맵  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은 `AWS::Lambda::MicrovmImage` 리소스의 `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-microvmimage.html#cfn-lambda-microvmimage-tags)` 속성과 유사합니다. 의 `Tags` 속성은 키-값 페어로 AWS SAM 구성됩니다(이 CloudFormation 속성은 `Tag` 객체 목록으로 구성됨). 또한는이 MicroVM 이미지와 해당 이미지에 대해 생성된 기본 역할에 `lambda:createdBy:SAM` 태그를 AWS SAM 자동으로 추가합니다.

## 반환 값
<a name="sam-resource-microvmimage-return-values"></a>

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

이 리소스의 논리적 ID가 `Ref` 내장 함수에 제공되면 MicroVM 이미지의 ARN을 반환합니다.

`Ref` 함수의 사용에 대한 자세한 내용은 *AWS CloudFormation 사용자 가이드*의 [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) 섹션을 참조하세요.

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

`Fn::GetAtt`은 이 유형의 지정된 속성에 대한 값을 반환합니다. 다음은 사용 가능한 속성과 반환되는 샘플 값.

`Fn::GetAtt`의 사용에 대한 자세한 내용은 *AWS CloudFormation 사용자 가이드*의 [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) 섹션을 참조하세요.

`CreatedAt`  <a name="sam-microvmimage-getatt-createdat"></a>
MicroVM 이미지 버전이 생성된 시점의 타임스탬프입니다.

`ImageArn`  <a name="sam-microvmimage-getatt-imagearn"></a>
MicroVM 이미지의 ARN입니다.

`LatestActiveImageVersion`  <a name="sam-microvmimage-getatt-latestactiveimageversion"></a>
MicroVM 이미지의 최신 활성 버전입니다.

`LatestFailedImageVersion`  <a name="sam-microvmimage-getatt-latestfailedimageversion"></a>
MicroVM 이미지의 가장 최근에 실패한 버전이 있는 경우.

`State`  <a name="sam-microvmimage-getatt-state"></a>
MicroVM 이미지의 현재 상태입니다.

`UpdatedAt`  <a name="sam-microvmimage-getatt-updatedat"></a>
MicroVM 이미지 버전이 마지막으로 업데이트된 타임스탬프입니다.

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

### 미니멀 MicroVM 이미지
<a name="sam-resource-microvmimage-example-minimal"></a>

다음 예제에서는 필요한 속성만 사용하여 MicroVM 이미지를 생성합니다.는 빌드 역할을 AWS SAM 자동으로 생성합니다.

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

### 전체 MicroVM 이미지 구성
<a name="sam-resource-microvmimage-example-full"></a>

다음 예시에서는 사용 가능한 모든 속성이 구성된 MicroVM 이미지를 생성합니다.

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