View a markdown version of this page

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

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS::Serverless::MicrovmImage

Erstellt ein AWS Lambda MicroVM-Image aus einem in Amazon S3 gespeicherten Codeartefakt. Ein MicroVM-Image ist ein Firecracker Snapshot, der aus einem Anwendungscode erstellt wird Dockerfile und den Start von MicroVM-Instanzen in Sekundenbruchteilen ermöglicht.

Anmerkung

Bei der Bereitstellung auf werden Ihre AWS CloudFormation AWS SAM Ressourcen in AWS SAM Ressourcen umgewandelt. CloudFormation Weitere Informationen finden Sie unter Generiert CloudFormation Ressourcen für AWS SAM.

Syntax

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

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

Eigenschaften

AdditionalOsCapabilities

Zusätzliche Betriebssystemfunktionen, die der MicroVM-Laufzeitumgebung gewährt werden sollen. Wenn Sie keinen Wert angeben, gewährt der Dienst keine zusätzlichen Betriebssystemfunktionen.

Gültige Werte: ALL

Typ: Liste

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die AdditionalOsCapabilities Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

BaseImageArn

Der ARN des MicroVM-Basisimages, aus dem erstellt werden soll.

Typ: Zeichenfolge

Erforderlich: Ja

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die BaseImageArn Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

BaseImageVersion

Die Version des zu verwendenden MicroVM-Basisimages.

Typ: Zeichenfolge

Erforderlich: Ja

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die BaseImageVersion Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

BuildRoleArn

Der ARN der IAM-Rolle, die der MicroVM-Build-Service annimmt, um Ihr Code-Artefakt von Amazon S3 herunterzuladen und Build-Logs zu schreiben.

Typ: Zeichenfolge

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der BuildRoleArn Eigenschaft einer Ressource. AWS::Lambda::MicrovmImage Dies ist in erforderlich CloudFormation , aber nicht in AWS SAM. Wenn Sie keine Rolle angeben, AWS SAM erstellt eine Rolle mit der logischen ID<resource-logical-id>BuildRole. Wenn Ihr Codeartefakt mit einem vom Kunden verwalteten Schlüssel verschlüsselt ist AWS KMS, müssen Sie Ihrer eigenen Rolle die entsprechenden kms:Decrypt Berechtigungen zuweisen.

CodeUri

Die Amazon S3 S3-URI des ZIP-Artefakts, das den Dockerfile und den Anwendungscode enthält.

Typ: Zeichenfolge

Erforderlich: Ja

CloudFormation Kompatibilität: Diese Eigenschaft wird in die CodeArtifact Eigenschaft einer AWS::Lambda::MicrovmImage Ressource umgewandelt. AWS SAM schließt den URI in die CodeArtifact.Uri Struktur ein.

CpuConfigurations

Eine Liste von CpuConfigurationObjekten, die die unterstützten CPU-Architekturen für die MicroVM spezifizieren. Wenn Sie keinen Wert angeben, verwendet der Dienst die Standard-CPU-Architektur.

Typ: Liste

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die CpuConfigurations Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

Description

Eine Beschreibung des MicroVM-Images.

Typ: Zeichenfolge

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die Description Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

EgressNetworkConnectors

Die Liste der ausgehenden Netzwerk-Connector-ARNs, die der microVM zur Laufzeit zur Verfügung stehen.

Typ: Liste

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die EgressNetworkConnectors Eigenschaft einer Ressource übergeben. AWS::Lambda::MicrovmImage

EnvironmentVariables

Umgebungsvariablen, die in der MicroVM-Laufzeitumgebung festgelegt sind.

Typ: Karte

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der EnvironmentVariables Eigenschaft einer AWS::Lambda::MicrovmImage Ressource. Geben Sie in AWS SAM als Map an (z. B.KEY: value). AWS SAM konvertiert in das CloudFormation Array-Format[{Key: KEY, Value: value}].

Hooks

Lifecycle-Hook-Konfiguration für MicroVMs und MicroVM-Images.

Typ: Hooks

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die Hooks Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

Logging

Konfiguration für die MicroVM-Logging-Ausgabe. Geben Sie genau eine an: CloudWatch um die CloudWatch Protokollierung zu aktivieren oder Disabled um die Protokollierung zu deaktivieren.

Typ: Protokollierung

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die Logging Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

Name

Der Name des MicroVM-Images.

Typ: Zeichenfolge

Erforderlich: Ja

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die Name Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

PropagateTags

Gibt an, ob Tags von der Tags Eigenschaft an generierte Ressourcen übergeben werden sollen, z. B. an die automatisch generierte Build-Rolle.

Typ: Boolesch

Required: No

Standardwert: False

CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

Resources

Eine Liste von Resources-Objekten, die die Ressourcenanforderungen für die MicroVM spezifizieren.

Typ: Liste

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die Resources Eigenschaft einer AWS::Lambda::MicrovmImage Ressource übergeben.

Tags

Eine Zuordnung von Schlüssel-Wert-Paaren, die die Tags angibt, die diesem MicroVM-Image hinzugefügt wurden.

Typ: Karte

Required: No

CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der Tags Eigenschaft einer AWS::Lambda::MicrovmImage Ressource. Die Tags Eigenschaft in AWS SAM besteht aus Schlüssel-Wert-Paaren (wohingegen CloudFormation diese Eigenschaft aus einer Liste von Tag Objekten besteht). Fügt diesem MicroVM-Image und den dafür generierten Standardrollen außerdem AWS SAM automatisch ein lambda:createdBy:SAM Tag hinzu.

Rückgabewerte

Punkt

Wenn die logische ID dieser Ressource für die Ref intrinsische Funktion bereitgestellt wird, gibt sie den ARN des MicroVM-Images zurück.

Weitere Informationen zur Verwendung der Ref Funktion finden Sie Refim AWS CloudFormation Benutzerhandbuch.

Fn:: GetAtt

Fn::GetAtt gibt einen Wert für ein angegebenes Attribut dieses Typs zurück. Im Folgenden sehen Sie die verfügbaren Attribute und Beispielrückgabewerte.

Weitere Informationen zur Verwendung Fn::GetAtt finden Sie Fn::GetAttim AWS CloudFormation Benutzerhandbuch.

CreatedAt

Der Zeitstempel, als die MicroVM-Image-Version erstellt wurde.

ImageArn

Der ARN des MicroVM-Images.

LatestActiveImageVersion

Die neueste aktive Version des MicroVM-Images.

LatestFailedImageVersion

Die letzte fehlgeschlagene Version des MicroVM-Images, falls vorhanden.

State

Der aktuelle Status des MicroVM-Images.

UpdatedAt

Der Zeitstempel, zu dem die MicroVM-Image-Version zuletzt aktualisiert wurde.

Beispiele

Minimales MicroVM-Image

Im folgenden Beispiel wird ein MicroVM-Image erstellt, das nur die erforderlichen Eigenschaften enthält. AWS SAM generiert automatisch eine Build-Rolle.

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"

Vollständige MicroVM-Image-Konfiguration

Im folgenden Beispiel wird ein MicroVM-Image erstellt, bei dem alle verfügbaren Eigenschaften konfiguriert sind.

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