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.
Unterstützte Aktionen
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. | String | 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. | String | Ja, launchTemplateConfigurations wenn angegeben |
||
| launchTemplateConfigurations: accountId | Das Startvorlagenkonto IDs , das auf das Bild angewendet werden soll. | String | 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. | String | Ja, s3ExportConfiguration wenn angegeben |
||
| s3ExportConfiguration: diskImageFormat | Das Festplatten-Image-Format für die S3-Exportkonfiguration für das Image. | String | 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. | String | Ja, s3ExportConfiguration wenn angegeben |
||
| S3: S3-Präfix ExportConfiguration | Das S3-Exportkonfigurations-Bucket-Präfix für das Image. | String | 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. | String | Nein | ||
| fastLaunchConfigurationsID der Schnellstartvorlage für das Image. ----sep----:launchTemplate: launchTemplateName | EC2 Name der Schnellstartvorlage für das Image. | String | Nein | ||
| fastLaunchConfigurationsName der Schnellstartvorlage für das Image. ----sep----:launchTemplate: launchTemplateVersion | EC2 Schnellstart-Vorlagenversion für das Image. | String | Nein | ||
| ssmParameterConfigurations | Die SSM-Parameterkonfiguration für das Image. | Zuordnung | Nein | ||
| ssmParameterConfigurations:amiAccountId | Die SSM-Parameter-AMI-Konto-ID für das Image. | String | Nein | ||
| ssmParameterConfigurationsDie SSM-Parameter-AMI-Konto-ID für das Image. ----SEP----:ParameterName | Der SSM-Parametername für das Bild. | String | Ja, wenn ssmParameterConfigurations angegeben |
||
| ssmParameterConfigurationsJa, falls angegeben ----SEP----:DataType | Der SSM-Parameter-Datentyp für das Bild. | String | 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. | String |
| Konfigurierte Bilder: Name | Der Name des AMI. | String |
| Konfigurierte Bilder: AMIID | Die AMI-ID des verteilten Images. | String |
| Konfigurierte Bilder: Startdatum | UTC-Zeit, zu der die Verteilung gestartet wurde. | String |
| Konfigurierte Bilder: Datum, an dem der Vorgang unterbrochen wurde | UTC-Zeit, zu der die Verteilung abgeschlossen wurde. | String |
| 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 | String |
| Konfigurierte Bilder: Status | Status der Verteilung. | Abgeschlossen|Fehlgeschlagen|Abgebrochen| TimedOut |
| Konfigurierte Bilder: Fehlermeldung | Fehlermeldung, falls vorhanden. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:ApplyImageConfigurationsaction: 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 die Docker-Pakete, 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
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. | String | 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. | String |
| Status | Der vom Systems Manager zurückgegebene StatussendCommand. | String |
| output | Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:ContainerBootstrapStepaction: 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
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. | String | 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. | String |
| Assoziations-ID | Die Systems Manager Manager-Zuordnungs-ID, die für die Inventarerfassung verwendet wird. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:CollectMetadataStepaction: 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
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. | String | 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. | String |
| Status | Der vom Systems Manager zurückgegebene StatussendCommand. | String |
| output | Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:CollectFindingsStepaction: 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
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. | String | 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. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:CreateImageFromInstanceaction: 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. | String | Ja | Mindestlänge 1. Maximale Länge beträgt 1024 Zeichen. | |
| name | Der Name der Verteilungskonfiguration. | String | Nein | ||
| description | Die Distributionen der Verteilungskonfiguration. | String | 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. | String | 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. | String |
| Verteilte Bilder: Name | Der Name des AMI. | String |
| Verteilte Bilder: AMIID | Die AMI-ID des verteilten Images. | String |
| Verteilte Bilder: Konto-ID | Die Zielkonto-ID des verteilten Images. | String |
| Verteilte Bilder: Startdatum | UTC-Zeit, zu der die Verteilung gestartet wurde. | String |
| Verteilte Bilder: Datum, an dem der Vorgang unterbrochen wurde | UTC-Zeit, zu der die Verteilung abgeschlossen wurde. | String |
| 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. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:DistributeImageaction: 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
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. | String | 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. | String |
| Status | Der vom Systems Manager zurückgegebene StatussendCommand. | String |
| output | Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:ExecComponentsStepaction: 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. | String | Ja | Muss ein gültiger State-Machine-ARN sein. | |
| input | JSON-Eingabedaten, die der Zustandsmaschine zur Verfügung gestellt werden sollen. | String | 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. | String |
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:ValidateImageComplianceaction: ExecuteStateMachine timeoutSeconds: 3600 onFailure: Abort inputs: stateMachineArn: arn:aws:states:us-west-2:111122223333:stateMachine:ImageComplianceValidationinput: | { "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: 60 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 zum Starten der Instance verwendet werden soll | String | 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 | String | 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. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:LaunchStepaction: 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. | String | Ja | ||
| Launch Permission | Nein | ||||
| Startberechtigung: Benutzer-IDs | Der Benutzer, der in den IDs Startberechtigungen für das Bild geändert werden soll. | String | Nein | ||
| Startberechtigung: Benutzergruppen | Die Benutzergruppen, die in den Startberechtigungen für das Image geändert werden sollen. | String | Nein | ||
| Startberechtigung: Organisation ARNS | Die AWS Organisation, die in den Startberechtigungen ARNs für das Image geändert werden soll. | String | Nein | ||
| Startberechtigung: organizationalUnitArns | Die AWS Organisationseinheit ARNs , die in den Startberechtigungen für das Image geändert werden soll. | String | 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. | String |
| Geänderte Bilder: Name | Der Name des AMI. | String |
| Geänderte Bilder: AMIID | Die AMI-ID des verteilten Images. | String |
| Geänderte Bilder: Startdatum | UTC-Zeit, zu der die Verteilung begann. | String |
| Geänderte Bilder: Datum, an dem der Vorgang unterbrochen wurde | UTC-Zeit, zu der die Verteilung abgeschlossen wurde. | String |
| Geänderte Bilder: Schritt | Der Schritt, bei dem die Verteilung beendet wurde. | Abgeschlossen| ModifyAmiRunning |
| Geänderte Bilder: Region | Die AWS Region des Bildes. | String |
| Geänderte Bilder: Status | Status der Verteilung. | Abgeschlossen|Fehlgeschlagen|Abgebrochen| TimedOut |
| Geänderte Bilder: Fehlermeldung | Fehlermeldung, falls vorhanden. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:ModifyImageAttributesaction: 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: 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 |
|---|---|---|---|---|---|
| Anwendung ansehen | Die Architektur des AMI. | String | 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. | String | Nein | Gültige Werte: Legacy-BIOS, UEFI, UEFI-Preferred | |
| description | Eine Beschreibung für das AMI. | String | Nein | ||
| enaSupport | Ob Enhanced Networking mit ENA aktiviert ist. | Boolesch | Nein | ||
| Standort des Bilds | Der Speicherort des AMI-Manifests. | String | Nein | Erforderlich für S3-gestütztes AMIs | |
| IMDS-Unterstützung | Die IMDSv2 Unterstützungsstufe. | String | 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:
|
| Kernel-ID | Die ID des zu verwendenden Kernels. | String | Nein | ||
| RAM-Disk-ID | Die ID der zu verwendenden RAM-Disk. | String | Nein | ||
| rootDeviceName | Der Gerätename des Root-Geräts. | String | Nein | Beispiel: /dev/sda1 | |
| sriovNetSupport | Verbessertes Netzwerk mit der Intel 82599 VF-Schnittstelle. | String | Nein | ||
| TPM-Unterstützung | Unterstützung für TPM-Versionen. | String | Nein | Gültige Werte: v2.0 | |
| UEFI-Daten | Base64-kodierte UEFI-Daten. | String | Nein | ||
| Virtualisierungstyp | Der Virtualisierungstyp. | String | 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. | String |
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-idvol-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: 12 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 |
|---|---|---|---|---|---|
| instanceId | Die ID der Instanz, auf der das Befehlsdokument ausgeführt werden soll. | String | 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. | String | 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. | String | 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. | String |
| Status | Der vom Systems Manager zurückgegebene StatussendCommand. | String |
| output | Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. | Liste von Zeichenfolgen |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:RunCommandDocaction: RunCommand onFailure: Abort inputs: documentName:SampleDocumentparameters: 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
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. |
String | 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. |
String |
| Status | Der vom Systems Manager zurückgegebene StatussendCommand. | String |
| output | Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:RunSysprepaction: 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
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. | String | 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. | String |
| Status | Der vom Systems Manager zurückgegebene StatussendCommand. | String |
| output | Die Ausgabe wurde vom Systems Manager zurückgegebensendCommand. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:SanitizeStepaction: 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
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. | String | Ja |
Ausgaben: Für diese Schrittaktion gibt es keine Ausgaben.
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:TerminateInstanceaction: 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
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. | String | Nein | ||
| lambdaFunctionName | Ein optionaler Name oder ARN der Lambda-Funktion, die asynchron aufgerufen werden soll, wenn der Workflow-Schritt aussteht. | String | 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 | String | 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. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument mit SNS-Benachrichtigung an.
- name:SendEventAndWaitaction: 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:SendEventAndWaitWithLambdaaction: WaitForAction onFailure: Abort inputs: lambdaFunctionName:ExampleFunctionpayload: | { "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. | String | 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. | String |
Beispiel
Geben Sie die Schrittaktion im Workflow-Dokument an.
- name:WaitForInstanceAfterRebootaction: WaitForSSMAgent onFailure: Abort timeoutInSeconds: 900 # 15 minutes inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId
Verwenden Sie die Ausgabe des Schrittaktionswerts im Workflow-Dokument.
$.stepOutputs.WaitForInstanceAfterReboot.Status