View a markdown version of this page

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

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS::Serverless::MicrovmImage

Amazon S3 に保存されているコードアーティファクトから AWS Lambda MicroVM イメージを作成します。 Amazon S3 MicroVM イメージは、 Dockerfileとアプリケーションコードから構築されたFirecrackerスナップショットであり、MicroVM インスタンスの 1 秒未満の起動を可能にします。

注記

にデプロイすると AWS CloudFormation、 は AWS SAM リソースを CloudFormation リソース AWS SAM に変換します。詳細については、「の生成済み 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。コードアーティファクトがカスタマーマネージドキーで暗号化されている場合は AWS KMS、適切なkms:Decryptアクセス許可を独自のロールに提供する必要があります。

CodeUri

Dockerfile およびアプリケーションコードを含む zip アーティファクトの Amazon S3 URI。

タイプ: 文字列

必須: はい

CloudFormation 互換性: このプロパティは resourceAWS::Lambda::MicrovmImage. AWS SAM wraps URI の CodeArtifactプロパティに変換されます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 ログ記録出力の設定。1 つだけ指定CloudWatchします。CloudWatch ログ記録を有効にするか、ログ記録をオフにDisabledします。

型: ログ記録

必須: いいえ

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 を自動的に追加します。

戻り値

参照番号

このリソースの論理 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