Unterstützte Schrittaktionen für Ihr Workflow-Dokument - EC2 Image Builder

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.

Unterstützte Schrittaktionen für Ihr Workflow-Dokument

Dieser Abschnitt enthält Details zu den Schrittaktionen, die Image Builder unterstützt.

In diesem Abschnitt verwendete Begriffe
AMI

Amazon Machine Image

ARN

Amazon-Ressourcenname.

ApplyImageConfigurations

Diese Schrittaktion wendet verschiedene Konfigurationen und Integrationen auf verteilte Systeme an AMIs, z. B. Lizenzkonfigurationen, Startvorlagenkonfigurationen, S3-Exportkonfigurationen, EC2 Schnellstartkonfigurationen und Systems Manager Manager-Parameterkonfigurationen. Konfigurationen gelten nur für verteilte Images im Quellkonto, mit Ausnahme von SSM-Parameterkonfigurationen, die kontoübergreifend angewendet werden können.

Standard-Timeout: 360 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
Region Die Bildregion. Zeichenfolge Ja
licenseConfigurationArns Der ARN für die Lizenzkonfiguration für das Bild. Array Nein
launchTemplateConfigurations Array Nein
launchTemplateConfigurations:launchTemplateId Die Startvorlagen-ID, die auf das Image angewendet werden soll. Zeichenfolge Ja, launchTemplateConfigurations wenn angegeben
launchTemplateConfigurations: accountId Das Startvorlagenkonto IDs , das auf das Bild angewendet werden soll. Zeichenfolge Nein
launchTemplateConfigurations:setDefaultVersion Die Standardversionseinstellung der Startvorlage für das Image. Boolesch Nein
s3 ExportConfiguration Array Nein
S3ExportConfiguration: Rollenname Der Rollenname der S3-Exportkonfiguration für das Image. Zeichenfolge Ja, s3ExportConfiguration wenn angegeben
s3ExportConfiguration: diskImageFormat Das Festplatten-Image-Format für die S3-Exportkonfiguration für das Image. Zeichenfolge Ja, s3ExportConfiguration wenn angegeben Zulässige Werte — VMDK|RAW|VHD
S3ExportConfiguration: S3-Eimer Der Name des Buckets für die S3-Exportkonfiguration für das Image. Zeichenfolge Ja, s3ExportConfiguration wenn angegeben
S3: S3-Präfix ExportConfiguration Das S3-Exportkonfigurations-Bucket-Präfix für das Image. Zeichenfolge Nein
fastLaunchConfigurations Die EC2 Fast Launch-Konfiguration für das Image. Array Nein
fastLaunchConfigurationsDie Schnellstartkonfiguration für das Image. ----sep----:enabled EC2 Schneller Start enabled/disabled für das Bild. Boolesch Ja, fastLaunchConfigurations wenn angegeben
fastLaunchConfigurationsJa, falls angegeben ----SEP----:SnapshotConfiguration EC2 Schneller Start enabled/disabled für das Bild. Zuordnung Nein
fastLaunchConfigurationsSchnellstart für das Bild. ----SEP----:SnapshotConfiguration: targetResourceCount EC2 Anzahl der Fast Launch-Zielressourcen für das Image. Ganzzahl Nein
fastLaunchConfigurations:maxParallelLaunches EC2 Fast Launch: maximale Anzahl parallel Starts für das Bild. Ganzzahl Nein
fastLaunchConfigurationsFast Launch: maximale Anzahl paralleler Starts für das Image. ----sep----:LaunchTemplate Nein
fastLaunchConfigurations:LaunchTemplate ----SEP----:LaunchTemplate: launchTemplateId EC2 ID der Schnellstartvorlage für das Image. Zeichenfolge Nein
fastLaunchConfigurationsID der Schnellstartvorlage für das Image. ----sep----:launchTemplate: launchTemplateName EC2 Name der Schnellstartvorlage für das Image. Zeichenfolge Nein
fastLaunchConfigurationsName der Schnellstartvorlage für das Image. ----sep----:launchTemplate: launchTemplateVersion EC2 Schnellstart-Vorlagenversion für das Image. Zeichenfolge Nein
ssmParameterConfigurations Die SSM-Parameterkonfiguration für das Image. Zuordnung Nein
ssmParameterConfigurations:amiAccountId Die SSM-Parameter-AMI-Konto-ID für das Image. Zeichenfolge Nein
ssmParameterConfigurationsDie SSM-Parameter-AMI-Konto-ID für das Image. ----SEP----:ParameterName Der SSM-Parametername für das Bild. Zeichenfolge Ja, wenn ssmParameterConfigurations angegeben
ssmParameterConfigurationsJa, falls angegeben ----SEP----:DataType Der SSM-Parameter-Datentyp für das Bild. Zeichenfolge Nein Zulässige Werte - text|aws:ec2:image)

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
Konfigurierte Bilder Eine Liste der konfigurierten Bilder. Array
Konfigurierte Bilder: Konto-ID Die Zielkonto-ID des verteilten Images. Zeichenfolge
Konfigurierte Bilder: Name Der Name des AMI. Zeichenfolge
Konfigurierte Bilder: AMIID Die AMI-ID des verteilten Images. Zeichenfolge
Konfigurierte Bilder: Startdatum UTC-Zeit, zu der die Verteilung gestartet wurde. Zeichenfolge
Konfigurierte Bilder: Datum, an dem der Vorgang unterbrochen wurde UTC-Zeit, zu der die Verteilung abgeschlossen wurde. Zeichenfolge
Konfigurierte Bilder: Schritt Der Schritt, bei dem die Verteilung beendet wurde. Abgeschlossen| AssociateLicensesRunning | | UpdateLaunchTemplateRunning | PutSsmParametersRunning | UpdateFastLaunchConfiguration ExportAmiQueued ExportAmiRunning
Konfigurierte Bilder: Region Typ des verteilten Images AWS Zeichenfolge
Konfigurierte Bilder: Status Status der Verteilung. Abgeschlossen|Fehlgeschlagen|Abgebrochen| TimedOut
Konfigurierte Bilder: Fehlermeldung Fehlermeldung, falls vorhanden. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: ApplyImageConfigurations action: ApplyImageConfigurations onFailure: Abort inputs: distributedImages.$: $.stepOutputs.DistributeImageStep.distributedImages

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.ApplyImageConfigurationsStep.configuredImages

BootstrapInstanceForContainer

Diese Schrittaktion führt ein Dienstskript aus, um die Instanz mit Mindestanforderungen für die Ausführung von Container-Workflows zu booten. Image Builder verwendet die sendCommand in der Systems Manager Manager-API enthaltene, um dieses Skript auszuführen. Weitere Informationen finden Sie unter Befehl AWS Systems Manager ausführen.

Anmerkung

Das Bootstrap-Skript installiert die Pakete AWS CLI und Docker, die Voraussetzung dafür sind, dass Image Builder erfolgreich Docker-Container erstellen kann. Wenn Sie diese Schrittaktion nicht einbeziehen, kann der Image-Build fehlschlagen.

Standard-Timeout: 60 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID der Instanz, die gebootet werden soll. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, mit dem die Instanz für diesen Workflow gestartet wurde.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
runCommandId Die ID des Systems ManagersendCommand, der das Bootstrap-Skript auf der Instanz ausgeführt hat. Zeichenfolge
Status Der vom Systems Manager zurückgegebene StatussendCommand. Zeichenfolge
output Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: ContainerBootstrapStep action: BootstrapInstanceForContainer onFailure: Abort inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.ContainerBootstrapStep.status

CollectImageMetadata

Diese Schrittaktion ist nur für Build-Workflows gültig.

EC2 Image Builder führt den Agenten AWS Systems Manager (Systems Manager) auf den EC2 Instanzen aus, die es startet, um Ihr Image zu erstellen und zu testen. Image Builder sammelt zusätzliche Informationen über die Instanz, die während der Buildphase mit Systems Manager Inventory verwendet wurde. Diese Informationen umfassen den Namen und die Version des Betriebssystems (OS) sowie die Liste der Pakete und ihrer jeweiligen Versionen, wie von Ihrem Betriebssystem gemeldet.

Anmerkung

Diese Schrittaktion funktioniert nur für Bilder, die erstellt AMIs werden.

Standard-Timeout: 30 Minuten

Maximales Timeout: 720 Minuten

Rollback: Image Builder setzt alle Systems Manager Manager-Ressourcen zurück, die in diesem Schritt erstellt wurden.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die Build-Instanz, auf die die Metadateneinstellungen angewendet werden sollen. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, mit dem die Build-Instanz für diesen Workflow gestartet wurde.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
osVersion Der Name und die Version des Betriebssystems, die von der Build-Instanz erfasst wurden. Zeichenfolge
Assoziations-ID Die Systems Manager Manager-Zuordnungs-ID, die für die Inventarerfassung verwendet wird. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: CollectMetadataStep action: CollectImageMetadata onFailure: Abort inputs: instanceId: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe der Schrittaktion im Workflow-Dokument.

$.stepOutputs.CollectMetadataStep.osVersion

CollectImageScanFindings

Wenn Amazon Inspector für Ihr Konto aktiviert ist und das Scannen von Bildern für Ihre Pipeline aktiviert ist, sammelt diese Schrittaktion die von Amazon Inspector für Ihre Test-Instance gemeldeten Bildscan-Ergebnisse. Diese Schrittaktion ist für Build-Workflows nicht verfügbar.

Standard-Timeout: 120 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID für die Instanz, auf der der Scan ausgeführt wurde. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, mit dem die Instanz für diesen Workflow gestartet wurde.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
runCommandId Die ID des Systems ManagersendCommand, der das Skript zum Sammeln von Ergebnissen ausgeführt hat. Zeichenfolge
Status Der vom Systems Manager zurückgegebene StatussendCommand. Zeichenfolge
output Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: CollectFindingsStep action: CollectImageScanFindings onFailure: Abort inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.CollectFindingsStep.status

CreateImage

Diese Schrittaktion erstellt ein Image von einer laufenden Instance mit der EC2 CreateImage Amazon-API. Während des Erstellungsvorgangs wartet die Schrittaktion nach Bedarf, um zu überprüfen, ob die Ressourcen den richtigen Status erreicht haben, bevor sie fortgesetzt wird.

Standard-Timeout: 720 Minuten

Maximales Timeout: 3 Tage

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die Instanz, aus der das neue Bild erstellt werden soll. Zeichenfolge Ja Die Instanz für die angegebene Instanz-ID muss sich zu Beginn dieses Schritts in einem running Status befinden.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
imageId Die AMI-ID des erstellten Images. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: CreateImageFromInstance action: CreateImage onFailure: Abort inputs: instanceId.$: "i-1234567890abcdef0"

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.CreateImageFromInstance.imageId

DistributeImage

Diese Schrittaktion verteilt ein AMI an bestimmte Regionen und Konten. Es erstellt Kopien des AMI in Zielregionen und Konten auf der Grundlage der bereitgestellten Verteilungskonfiguration, die in den Anforderungen für oder angegeben ist, CreateImage CreateImagePipeline APIs oder benutzerdefinierten Verteilungseinstellungen, die im Workflow bereitgestellt werden, um die Einstellungen in der Verteilungskonfiguration zu überschreiben.

Standard-Timeout: 360 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
Region Die Liste der Regionen, in denen das Bild verteilt werden soll. Zeichenfolge Ja Mindestlänge 1. Maximale Länge beträgt 1024 Zeichen.
Name Der Name der Verteilungskonfiguration. Zeichenfolge Nein
description Die Distributionen der Verteilungskonfiguration. Zeichenfolge Nein
targetAccountIds Konto IDs , an das das Image verteilt werden soll. Array Nein
AmiTags Die Tags der Distributionskonfiguration. Zuordnung Nein
kmsKeyId KMS-Schlüssel, die auf das verteilte Image angewendet werden sollen. Zeichenfolge Nein

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
Verteilte Bilder Eine Liste verteilter Bilder Array
Verteilte Bilder: Region Die AWS Region des verteilten Bildes. Zeichenfolge
Verteilte Bilder: Name Der Name des AMI. Zeichenfolge
Verteilte Bilder: AMIID Die AMI-ID des verteilten Images. Zeichenfolge
Verteilte Bilder: Konto-ID Die Zielkonto-ID des verteilten Images. Zeichenfolge
Verteilte Bilder: Startdatum UTC-Zeit, zu der die Verteilung gestartet wurde. Zeichenfolge
Verteilte Bilder: Datum, an dem der Vorgang unterbrochen wurde UTC-Zeit, zu der die Verteilung abgeschlossen wurde. Zeichenfolge
Verteilte Bilder: Status Status der Verteilung. Abgeschlossen|Fehlgeschlagen|Abgebrochen| TimedOut
Verteilte Bilder: Schritt Der Schritt, bei dem die Verteilung beendet wurde. Abgeschlossen| CopyAmiRunning
Verteilte Bilder: Fehlermeldung Fehlermeldung, falls vorhanden. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: DistributeImage action: DistributeImage onFailure: Abort inputs: distributions: - region.$: "$.parameters.SourceRegion" description: "AMI distribution to source region" amiTags: DistributionTest: "SourceRegion" WorkflowStep: "DistributeToSourceRegion" BuildDate: "{{imagebuilder:buildDate:yyyyMMHHss}}" BuildVersion: "{{imagebuilder:buildVersion}}"

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.DistributeImageStep.distributedImages

ExecuteComponents

Bei dieser Schrittaktion werden Komponenten ausgeführt, die in der Rezeptur für das aktuelle Bild, das gerade erstellt wird, angegeben sind. Build-Workflows führen Build-Komponenten auf der Build-Instanz aus. Test-Workflows führen nur Testkomponenten auf der Testinstanz aus.

Image Builder verwendet die sendCommand in der Systems Manager API, um Komponenten auszuführen. Weitere Informationen finden Sie unter Befehl AWS Systems Manager ausführen.

Standard-Timeout: 720 Minuten

Maximales Timeout: 1 Tag

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID für die Instanz, auf der die Komponenten ausgeführt werden sollen. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, mit dem die Instanz für diesen Workflow gestartet wurde.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
runCommandId Die ID des Systems ManagersendCommand, der die Komponenten auf der Instanz ausgeführt hat. Zeichenfolge
Status Der vom Systems Manager zurückgegebene StatussendCommand. Zeichenfolge
output Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: ExecComponentsStep action: ExecuteComponents onFailure: Abort inputs: instanceId: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe der Schrittaktion im Workflow-Dokument.

$.stepOutputs.ExecComponentsStep.status

ExecuteStateMachine

Diese Schrittaktion startet die Ausführung einer AWS Step Functions Zustandsmaschine aus einem Image Builder Builder-Workflow. Image Builder verwendet die Step Functions StartExecution API, um die Zustandsmaschine zu initiieren, und wartet, bis sie abgeschlossen ist. Dies ist nützlich, um komplexe Workflows, Compliance-Validierungs- oder Zertifizierungsprozesse in Ihre Image-Building-Pipeline zu integrieren.

Weitere Informationen finden Sie unter Weitere Informationen zu Zustandsmaschinen in Step Functions im AWS Step Functions Entwicklerhandbuch.

Standard-Timeout: 6 Stunden

Maximales Timeout: 24 Stunden

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
stateMachineArn Der ARN der auszuführenden Step Functions Functions-Zustandsmaschine. Zeichenfolge Ja Muss ein gültiger State-Machine-ARN sein.
input JSON-Eingabedaten, die der Zustandsmaschine zur Verfügung gestellt werden sollen. Zeichenfolge Nein {} Muss eine gültige JSON-Zeichenfolge sein, maximale Länge: 16 KiB.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
executionArn Der ARN der State-Machine-Ausführung. Zeichenfolge
output Die Ausgabe der State-Machine-Ausführung. Zeichenfolge

IAM-Berechtigungen erforderlich

Ihre benutzerdefinierte Ausführungsrolle muss über die folgenden Berechtigungen verfügen, um diese Schrittaktion verwenden zu können:

Aktionen zulassen
  • states:StartExecution

  • states:DescribeExecution

Geben Sie Ressourcen an
  • arn:aws:states:us-west-2:111122223333:stateMachine:state-machine-name

  • arn:aws:states:us-west-2:111122223333:execution:state-machine-name:*

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: ValidateImageCompliance action: ExecuteStateMachine timeoutSeconds: 3600 onFailure: Abort inputs: stateMachineArn: arn:aws:states:us-west-2:111122223333:stateMachine:ImageComplianceValidation input: | { "imageId": "{{ $.stepOutputs.CreateImageFromInstance.imageId }}", "region": "us-west-2", "complianceLevel": "high", "requiredScans": ["cve", "benchmark", "configuration"] }

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.ValidateImageCompliance.executionArn

LaunchInstance

Diese Schrittaktion startet eine Instanz in Ihrer AWS-Konto und wartet, bis der Systems Manager Manager-Agent auf der Instanz ausgeführt wird, bevor Sie mit dem nächsten Schritt fortfahren. Die Startaktion verwendet Einstellungen aus Ihren Rezept- und Infrastrukturkonfigurationsressourcen, die mit Ihrem Image verknüpft sind. Der Instance-Typ, der gestartet werden soll, stammt beispielsweise aus der Infrastrukturkonfiguration. Die Ausgabe ist die Instanz-ID der Instance, die sie gestartet hat.

Die waitFor Eingabe konfiguriert die Bedingung, die die Anforderung zum Abschluss des Schritts erfüllt.

Standard-Timeout: 75 Minuten

Maximales Timeout: 720 Minuten

Rollback: Bei Build-Instances führt Rollback die Aktion aus, die Sie in Ihrer Infrastrukturkonfigurationsressource konfiguriert haben. Standardmäßig werden Build-Instances beendet, wenn die Image-Erstellung fehlschlägt. In der Infrastrukturkonfiguration gibt es jedoch eine Einstellung, nach der die Build-Instanz zur Fehlerbehebung beibehalten wird.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
imageIdOverride Das Bild, das für den Start der Instance verwendet werden soll Zeichenfolge Nein

Erstellungsphase: Basis-Image für das Image-Rezept

Testphase: AMI aus der Build-Phase ausgeben

Muss eine gültige AMI-ID sein
instanceTypesOverride Image Builder versucht jeden Instanztyp in der Liste, bis er einen findet, der erfolgreich gestartet wird. Liste von Zeichenfolgen Nein In Ihrer Infrastrukturkonfiguration angegebene Instanztypen Es müssen gültige Instance-Typen sein
Warte auf Die Bedingung, auf die gewartet werden muss, bevor der Workflow-Schritt abgeschlossen und mit dem nächsten Schritt fortgefahren wird Zeichenfolge Ja Image Builder unterstütztssmAgent.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
instanceId Die Instanz-ID der Instanz, die gestartet wurde. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: LaunchStep action: LaunchInstance onFailure: Abort inputs: waitFor: ssmAgent

Verwenden Sie die Ausgabe der Schrittaktion im Workflow-Dokument.

$.stepOutputs.LaunchStep.instanceId

ModifyImageAttributes

Diese Schrittaktion ändert Attribute von Distributed AMIs, z. B. Startberechtigungen und andere AMI-Attribute. Dabei werden AMIs die Daten verwendet, die an Zielregionen und Konten verteilt wurden.

Standard-Timeout: 120 Minuten

Maximales Timeout: 180 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
Region Die Region des Bildes. Zeichenfolge Ja
Launch Permission Nein
Startberechtigung: Benutzer-IDs Der Benutzer, der in den IDs Startberechtigungen für das Bild geändert werden soll. Zeichenfolge Nein
Startberechtigung: Benutzergruppen Die Benutzergruppen, die in den Startberechtigungen für das Image geändert werden sollen. Zeichenfolge Nein
Startberechtigung: Organisation ARNS Die AWS Organisation, die in den Startberechtigungen ARNs für das Image geändert werden soll. Zeichenfolge Nein
Startberechtigung: organizationalUnitArns Die AWS Organisationseinheit ARNs , die in den Startberechtigungen für das Image geändert werden soll. Zeichenfolge Nein

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
Geänderte Bilder Eine Liste modifizierter Bilder Array
Geänderte Bilder: Konto-ID Die Zielkonto-ID des verteilten Images. Zeichenfolge
Geänderte Bilder: Name Der Name des AMI. Zeichenfolge
Geänderte Bilder: AMIID Die AMI-ID des verteilten Images. Zeichenfolge
Geänderte Bilder: Startdatum UTC-Zeit, zu der die Verteilung gestartet wurde. Zeichenfolge
Geänderte Bilder: Datum, an dem der Vorgang unterbrochen wurde UTC-Zeit, zu der die Verteilung abgeschlossen wurde. Zeichenfolge
Geänderte Bilder: Schritt Der Schritt, bei dem die Verteilung beendet wurde. Abgeschlossen| ModifyAmiRunning
Geänderte Bilder: Region Die AWS Region des Bildes. Zeichenfolge
Geänderte Bilder: Status Status der Verteilung. Abgeschlossen|Fehlgeschlagen|Abgebrochen| TimedOut
Geänderte Bilder: Fehlermeldung Fehlermeldung, falls vorhanden. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: ModifyImageAttributes action: ModifyImageAttributes onFailure: Abort inputs: distributedImages.$: $.stepOutputs.DistributeImageStep.distributedImages

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.ModifyImageAttributesStep.modifiedImages

RegisterImage

Diese Schrittaktion registriert ein neues Amazon Machine Image (AMI) mithilfe der EC2 RegisterImage Amazon-API. Es ermöglicht Ihnen, ein AMI aus einem vorhandenen Snapshot oder einer Gruppe von Snapshots zu erstellen und dabei verschiedene Image-Attribute anzugeben.

Standard-Timeout: 540 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
Architektur Die Architektur des AMI. Zeichenfolge Nein Gültige Werte: i386, x86_64, arm64, x86_64_mac, arm64_mac
blockDeviceMapping Die Blockgerätezuordnungseinträge für das AMI. Array Nein
Boot-Modus Der Startmodus des AMI. Zeichenfolge Nein Gültige Werte: Legacy-BIOS, UEFI, UEFI-Preferred
description Eine Beschreibung für das AMI. Zeichenfolge Nein
enaSupport Ob Enhanced Networking mit ENA aktiviert ist. Boolesch Nein
Standort des Bilds Der Speicherort des AMI-Manifests. Zeichenfolge Nein Erforderlich für S3-gestütztes AMIs
IMDS-Unterstützung Die IMDSv2 Unterstützungsstufe. Zeichenfolge Nein Gültige Werte: v2.0
includeSnapshotTags Ob Tags aus dem ersten Snapshot, der in der Blockgerätezuordnung definiert wurde, aufgenommen werden sollen. Boolesch Nein FALSE

Wenn der Wert auf true gesetzt ist, werden Tags wie folgt eingeschlossen:

  • Tags aus dem SnapshotId ersten EBS-Volume in der blockDeviceMapping Liste, das a enthält, SnapshotId wird mit den AMI-Ausgabe-Tags zusammengeführt.

  • AMI-Ausgabe-Tags haben Vorrang vor Snapshot-Tags mit demselben Schlüssel.

  • AWS reservierte Tags (solche, deren Schlüssel mit beginnenaws:) werden automatisch ausgeschlossen.

  • Wenn mehrere EBS-Volumes mit definiert SnapshotId sind, sind nur Tags des ersten EBS-Volumes in der Liste enthalten, SnapshotId das a enthält.

Kernel-ID Die ID des zu verwendenden Kernels. Zeichenfolge Nein
RAM-Disk-ID Die ID der zu verwendenden RAM-Disk. Zeichenfolge Nein
rootDeviceName Der Gerätename des Root-Geräts. Zeichenfolge Nein Beispiel: /dev/sda1
sriovNetSupport Verbessertes Netzwerk mit der Intel 82599 VF-Schnittstelle. Zeichenfolge Nein
TPM-Unterstützung Unterstützung für TPM-Versionen. Zeichenfolge Nein Gültige Werte: v2.0
UEFI-Daten Base64-kodierte UEFI-Daten. Zeichenfolge Nein
Virtualisierungstyp Der Virtualisierungstyp. Zeichenfolge Nein Gültige Werte: hvm, paravirtual

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
imageId Die AMI-ID des registrierten Images. Zeichenfolge

IAM-Berechtigungen erforderlich

Ihre benutzerdefinierte Ausführungsrolle muss über die folgenden Berechtigungen verfügen, um diese Schrittaktion verwenden zu können:

Aktionen zulassen
  • ec2:DescribeSnapshots

  • ec2:CreateTags

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: RegisterNewImage action: RegisterImage onFailure: Abort inputs: architecture: "x86_64" bootMode: "uefi" blockDeviceMapping: - DeviceName: "/dev/sda1" Ebs: SnapshotId: "snap-1234567890abcdef0" VolumeSize: 100 VolumeType: "gp3" rootDeviceName: "/dev/sda1" virtualizationType: "hvm"

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.RegisterNewImage.imageId

Beispiel mit einem SnapshotId von einem anderen Schritt und Snapshot-Tags, die im generierten AMI enthalten sind

- name: CreateSnapshot action: RunCommand onFailure: Abort inputs: instanceId: "i-1234567890abcdef0" documentName: "AWS-RunShellScript" parameters: commands: - "aws ec2 create-snapshot --volume-id vol-1234567890abcdef0 --description 'Snapshot for AMI' --query 'SnapshotId' --output text" - name: RegisterImageFromSnapshot action: RegisterImage onFailure: Abort inputs: architecture: "x86_64" bootMode: "uefi" blockDeviceMapping: - DeviceName: "/dev/sda1" Ebs: SnapshotId.$: "$.stepOutputs.CreateSnapshot.output[0]" VolumeSize: 100 VolumeType: "gp3" includeSnapshotTags: true rootDeviceName: "/dev/sda1" virtualizationType: "hvm"

RunCommand

Diese Schrittaktion führt ein Befehlsdokument für Ihren Workflow aus. Image Builder verwendet die sendCommand in der Systems Manager API, um es für Sie auszuführen. Weitere Informationen finden Sie unter Befehl AWS Systems Manager ausführen.

Standard-Timeout: 720 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID der Instanz, auf der das Befehlsdokument ausgeführt werden soll. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, mit dem die Instanz für diesen Workflow gestartet wurde.
documentName Der Name des Systems Manager Manager-Befehlsdokuments, das ausgeführt werden soll. Zeichenfolge Ja
Parameter Eine Liste von Schlüssel-Wert-Paaren für alle Parameter, die das Befehlsdokument benötigt. <string>wörterbuch<string, list > Bedingt
Version des Dokuments Die auszuführende Version des Befehlsdokuments. Zeichenfolge Nein $DEFAULT

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
runCommandId Die ID des Systems ManagersendCommand, der das Befehlsdokument auf der Instanz ausgeführt hat. Zeichenfolge
Status Der vom Systems Manager zurückgegebene StatussendCommand. Zeichenfolge
output Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. Liste von Zeichenfolgen

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: RunCommandDoc action: RunCommand onFailure: Abort inputs: documentName: SampleDocument parameters: osPlatform: - "linux" instanceId.$: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.RunCommandDoc.status

RunSysPrep

Diese Schrittaktion verwendet die sendCommand in der Systems Manager Manager-API, um das AWSEC2-RunSysprep Dokument für Windows-Instanzen auszuführen, bevor die Build-Instanz für den Snapshot heruntergefahren wird. Diese Aktionen folgen den AWS bewährten Methoden zum Härten und Reinigen des Images.

Standard-Timeout: 60 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID der Instanz, auf der das AWSEC2-RunSysprep Dokument ausgeführt werden soll. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, der die Instanz für diesen Workflow gestartet hat.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
runCommandId Die ID des Systems ManagersendCommand, der das AWSEC2-RunSysprep Dokument auf der Instanz ausgeführt hat. Zeichenfolge
Status Der vom Systems Manager zurückgegebene StatussendCommand. Zeichenfolge
output Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: RunSysprep action: RunSysPrep onFailure: Abort inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.RunSysprep.status

SanitizeInstance

Diese Schrittaktion führt das empfohlene Bereinigungsskript für Linux-Instances aus, bevor die Build-Instance für den Snapshot heruntergefahren wird. Das Bereinigungsskript trägt dazu bei, dass das endgültige Image den bewährten Sicherheitsmethoden entspricht und dass Build-Artefakte oder Einstellungen, die nicht auf Ihren Snapshot übertragen werden sollten, entfernt werden. Weitere Informationen zum Skript finden Sie unter. Bereinigung nach dem Build erforderlich Diese Schrittaktion gilt nicht für Container-Images.

Image Builder verwendet die sendCommand in der Systems Manager Manager-API enthaltene, um dieses Skript auszuführen. Weitere Informationen finden Sie unter Befehl AWS Systems Manager ausführen.

Standard-Timeout: 60 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID der Instanz, die bereinigt werden soll. Zeichenfolge Ja Dies muss die Ausgabeinstanz-ID des Workflow-Schritts sein, mit dem die Instanz für diesen Workflow gestartet wurde.

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
runCommandId Die ID des Systems ManagersendCommand, der das Bereinigungsskript auf der Instanz ausgeführt hat. Zeichenfolge
Status Der vom Systems Manager zurückgegebene StatussendCommand. Zeichenfolge
output Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: SanitizeStep action: SanitizeInstance onFailure: Abort inputs: instanceId: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.SanitizeStep.status

TerminateInstance

Diese Schrittaktion beendet die Instanz mit der Instanz-ID, die als Eingabe übergeben wurde.

Standard-Timeout: 30 Minuten

Maximales Timeout: 720 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID der Instanz, die beendet werden soll. Zeichenfolge Ja

Ausgaben: Für diese Schrittaktion gibt es keine Ausgaben.

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: TerminateInstance action: TerminateInstance onFailure: Continue inputs: instanceId.$: i-1234567890abcdef0

WaitForAction

Diese Schrittaktion unterbricht den laufenden Workflow und wartet auf den Empfang einer externen Aktion von der Image Builder SendWorkflowStepAction Builder-API-Aktion. In diesem Schritt wird ein EventBridge Ereignis mit dem Typ „Detail“ in Ihrem EventBridge Standard-Event-Bus veröffentlicht. EC2 Image Builder Workflow Step Waiting Der Schritt kann auch eine SNS-Benachrichtigung senden, wenn Sie einen SNS-Themen-ARN angeben, oder eine Lambda-Funktion asynchron aufrufen, wenn Sie einen Lambda-Funktionsnamen angeben.

Standard-Timeout: 3 Tage

Maximales Timeout: 7 Tage

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
snsTopicArn Ein optionaler SNS-Thema-ARN, an den eine Benachrichtigung gesendet werden kann, wenn der Workflow-Schritt aussteht. Zeichenfolge Nein
lambdaFunctionName Ein optionaler Name oder ARN der Lambda-Funktion, die asynchron aufgerufen werden soll, wenn der Workflow-Schritt aussteht. Zeichenfolge Nein
Nutzlast JSON-Zeichenfolge, die als Nachricht für SNS und als Nutzlast für Lambda verwendet wird. Falls angegeben, wird eine benutzerdefinierte Nutzlast standardmäßig eingeschlossen. message/payload, used for SNS and Lambda respectively. If not provided, generates default message/payload Zeichenfolge Nein Muss eine gültige JSON-Zeichenfolge sein, max. 16 KiB

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
action Die Aktion, die die SendWorkflowStepAction API-Aktion zurückgibt. Zeichenfolge (RESUMEoderSTOP)
Grund Der Grund für die zurückgegebene Aktion. Zeichenfolge

IAM-Berechtigungen erforderlich

Ihre benutzerdefinierte Ausführungsrolle muss über die folgenden Berechtigungen verfügen, um diese Schrittaktion verwenden zu können:

Aktionen zulassen
  • lambda:InvokeFunction

Geben Sie Ressourcen an
  • arn:aws:lambda:us-west-2:111122223333:function:function-name

  • arn:aws:lambda:us-west-2:111122223333:function:*

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument mit SNS-Benachrichtigung an.

- name: SendEventAndWait action: WaitForAction onFailure: Abort inputs: snsTopicArn: arn:aws:sns:us-west-2:111122223333:ExampleTopic

Geben Sie die Schrittaktion im Workflow-Dokument mit dem Aufruf der Lambda-Funktion an.

- name: SendEventAndWaitWithLambda action: WaitForAction onFailure: Abort inputs: lambdaFunctionName: ExampleFunction payload: | { "imageId": "{{ $.stepOutputs.CreateImageFromInstance.imageId }}", "region": "us-west-2" }

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.SendEventAndWait.reason

WaitForSSMAgent

Diese Schrittaktion wartet darauf, dass eine EC2 Instanz AWS Systems Manager nach erwarteten Phasen, in denen sie nicht reagiert, verwaltbar wird. Dies ist besonders nützlich für Workflows mit bekannten Instanzunterbrechungen, z. B. Systemneustarts, Betriebssystem-Upgrades oder plattformspezifische Operationen, bei denen die Instanz vorübergehend vom SSM getrennt wird. Image Builder überwacht die Instanz, bis die SSM-Konnektivität wiederhergestellt ist oder ein Timeout auftritt.

Standard-Timeout: 60 Minuten

Maximales Timeout: 180 Minuten

Rollback: Für diese Schrittaktion gibt es kein Rollback.

Eingaben: Die folgende Tabelle enthält unterstützte Eingaben für diese Schrittaktion.

Name der Eingabe Description Typ Erforderlich Standard Beschränkungen
instanceId Die ID der Instanz, die auf SSM-Konnektivität überwacht werden soll. Zeichenfolge Ja Muss eine gültige EC2 Instanz-ID sein

Ausgaben: Die folgende Tabelle enthält Ausgaben für diese Schrittaktion.

Ausgabenname Description Typ
Status Verbindungsstatus des SSM-Agenten. Zeichenfolge

Beispiel

Geben Sie die Schrittaktion im Workflow-Dokument an.

- name: WaitForInstanceAfterReboot action: WaitForSSMAgent onFailure: Abort timeoutInSeconds: 900 inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId

Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.

$.stepOutputs.WaitForInstanceAfterReboot.Status