View a markdown version of this page

AWS::Serverless::MicrovmImage - AWS Serverless Application Model

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

AWS::Serverless::MicrovmImage

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

참고

에 배포하면가 AWS SAM 리소스를 리소스로 AWS CloudFormation AWS SAM CloudFormation 변환합니다. 자세한 내용은 에 대해 생성된 CloudFormation 리소스 AWS SAM 단원을 참조하십시오.

구문

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

YAML

Type: AWS::Serverless::MicrovmImage Properties: AdditionalOsCapabilities: List BaseImageArn: String BaseImageVersion: String BuildRoleArn: String CodeUri: String CpuConfigurations: List Description: String EgressNetworkConnectors: List EnvironmentVariables: Map Hooks: Hooks Logging: Logging Name: String PropagateTags: Boolean Resources: List Tags: Map

속성

AdditionalOsCapabilities

MicroVM 런타임 환경에 부여할 추가 OS 기능입니다. 값을 지정하지 않으면 서비스에서 추가 OS 기능을 부여하지 않습니다.

유효한 값: ALL

유형: 목록

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 AdditionalOsCapabilities 속성으로 직접 전달됩니다.

BaseImageArn

빌드할 기본 MicroVM 이미지의 ARN입니다.

유형: 문자열

필수 항목 여부:

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 BaseImageArn 속성으로 직접 전달됩니다.

BaseImageVersion

사용할 기본 MicroVM 이미지의 버전입니다.

유형: 문자열

필수 항목 여부:

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 BaseImageVersion 속성으로 직접 전달됩니다.

BuildRoleArn

MicroVM 빌드 서비스가 Amazon S3에서 코드 아티팩트를 다운로드하고 빌드 로그를 작성하기 위해 수임하는 IAM 역할의 ARN입니다.

유형: 문자열

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 BuildRoleArn 속성과 유사합니다. 이는 CloudFormation 내부에서 필요하지만 AWS SAM내부에서는 필요하지 않습니다. 역할을 지정하지 않으면는 논리적 ID가 인 역할을 AWS SAM 생성합니다<resource-logical-id>BuildRole. 코드 아티팩트가 고객 관리형 키로 암호화된 경우 적절한 kms:Decrypt 권한을 자신의 역할에 제공해야 AWS KMS합니다.

CodeUri

Dockerfile 및 애플리케이션 코드가 포함된 zip 아티팩트의 Amazon S3 URI입니다.

유형: 문자열

필수 항목 여부:

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage resource. AWS SAM wraps의 CodeArtifact 속성으로 변환됩니다. URI를 CodeArtifact.Uri 구조로 래핑합니다.

CpuConfigurations

MicroVM에 지원되는 CPU 아키텍처를 지정하는 CpuConfiguration 객체 목록입니다. 값을 지정하지 않으면 서비스가 기본 CPU 아키텍처를 사용합니다.

유형: 목록

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 CpuConfigurations 속성으로 직접 전달됩니다.

Description

MicroVM 이미지에 대한 설명입니다.

유형: 문자열

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 Description 속성으로 직접 전달됩니다.

EgressNetworkConnectors

런타임 시 MicroVM에서 사용할 수 있는 송신 네트워크 커넥터 ARNs.

유형: 목록

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 EgressNetworkConnectors 속성으로 직접 전달됩니다.

EnvironmentVariables

MicroVM 런타임 환경에 설정된 환경 변수입니다.

유형: 맵

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 EnvironmentVariables 속성과 유사합니다. 에서 맵으로를 AWS SAM지정합니다(예: KEY: value).는 CloudFormation 배열 형식으로 AWS SAM 변환합니다[{Key: KEY, Value: value}].

Hooks

MicroVMs 및 MicroVM 이미지의 수명 주기 후크 구성입니다.

유형: Hooks

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 Hooks 속성으로 직접 전달됩니다.

Logging

MicroVM 로깅 출력에 대한 구성입니다. 정확히 하나 지정: CloudWatch 로깅CloudWatch을 활성화하거나 로깅Disabled을 끕니다.

Type: Logging

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 Logging 속성으로 직접 전달됩니다.

Name

MicroVM 이미지의 이름입니다.

유형: 문자열

필수 항목 여부:

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 Name 속성으로 직접 전달됩니다.

PropagateTags

Tags 속성에서 자동 생성된 빌드 역할과 같은 생성된 리소스로 태그를 전달할지 여부를 지정합니다.

유형: 부울

필수 항목 여부: 아니요

기본값: False

CloudFormation 호환성:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

Resources

MicroVM에 대한 리소스 요구 사항을 지정하는 리소스 객체 목록입니다.

유형: 목록

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 Resources 속성으로 직접 전달됩니다.

Tags

이 MicroVM 이미지에 추가된 태그를 지정하는 키-값 페어의 맵입니다.

유형: 맵

필수 항목 여부: 아니요

CloudFormation 호환성:이 속성은 AWS::Lambda::MicrovmImage 리소스의 Tags 속성과 유사합니다. 의 Tags 속성은 키-값 페어로 AWS SAM 구성됩니다(이 CloudFormation 속성은 Tag 객체 목록으로 구성됨). 또한는이 MicroVM 이미지와 해당 이미지에 대해 생성된 기본 역할에 lambda:createdBy:SAM 태그를 AWS SAM 자동으로 추가합니다.

반환 값

Ref

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

Ref 함수의 사용에 대한 자세한 내용은 AWS CloudFormation 사용자 가이드Ref 섹션을 참조하세요.

Fn::GetAtt

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

Fn::GetAtt의 사용에 대한 자세한 내용은 AWS CloudFormation 사용자 가이드Fn::GetAtt 섹션을 참조하세요.

CreatedAt

MicroVM 이미지 버전이 생성된 시점의 타임스탬프입니다.

ImageArn

MicroVM 이미지의 ARN입니다.

LatestActiveImageVersion

MicroVM 이미지의 최신 활성 버전입니다.

LatestFailedImageVersion

MicroVM 이미지의 가장 최근에 실패한 버전이 있는 경우.

State

MicroVM 이미지의 현재 상태입니다.

UpdatedAt

MicroVM 이미지 버전이 마지막으로 업데이트된 타임스탬프입니다.

예제

미니멀 MicroVM 이미지

다음 예제에서는 필요한 속성만 사용하여 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 이미지 구성

다음 예시에서는 사용 가능한 모든 속성이 구성된 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