View a markdown version of this page

Erstellen und aktualisieren Sie AMI-Verteilungskonfigurationen - 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.

Erstellen und aktualisieren Sie AMI-Verteilungskonfigurationen

In diesem Abschnitt wird das Erstellen und Aktualisieren von Distributionskonfigurationen für ein Image Builder-AMI behandelt.

Voraussetzungen für die AMI-Verteilung

Für einige Verteilungseinstellungen gelten folgende Voraussetzungen:

Voraussetzungen für SSM-Ausgabeparameter

Bevor Sie eine neue AMI-Verteilungskonfiguration erstellen, die einen AWS Systems Manager Parameter Store-Parameter (SSM-Parameter) festlegt, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen.

Rolle „Ausführung“

Wenn Sie eine Pipeline erstellen oder den Befehl create-image in der verwenden AWS CLI, können Sie nur eine Image Builder-Ausführungsrolle angeben. Wenn Sie eine Image Builder-Workflow-Ausführungsrolle definiert haben, würden Sie dieser Rolle zusätzliche Funktionsberechtigungen hinzufügen. Andernfalls würden Sie eine neue benutzerdefinierte Rolle erstellen, die die erforderlichen Berechtigungen enthält.

Wichtig

Es wird empfohlen, die AWSServiceRoleForImageBuilder serviceverknüpfte Rolle nicht als Ausführungsrolle zu übergeben. Erstellen Sie stattdessen eine benutzerdefinierte IAM-Rolle und hängen Sie die EC2ImageBuilderExecutionPolicy AWS verwaltete Richtlinie an. Diese Richtlinie gewährt dieselben Berechtigungen, die Image Builder benötigt, um in AWS-Services Ihrem Namen anzurufen. Durch die Verwendung einer benutzerdefinierten Rolle haben Sie die volle Kontrolle über die Berechtigungen, die Image Builder verwendet. Außerdem bleiben Ihre Service Control Policies (SCPs) und Resource Control Policies (RCPs) für Vorgänge gültig, die Image Builder in Ihrem Namen ausführt.

  • Um die Ausgabe-AMI-ID während der Verteilung in einem SSM-Parameter zu speichern, müssen Sie die ssm:PutParameter Aktion in Ihrer Image Builder-Ausführungsrolle angeben, wobei der Parameter als Ressource aufgeführt wird.

  • Wenn Sie den Parameter-Datentyp auf AWS EC2 Image Signal Systems Manager setzen, um den Parameterwert als AMI-ID zu validieren, müssen Sie auch die ec2:DescribeImages Aktion hinzufügen.

Opt-in Region

Sie müssen eine Opt-In-Region (Region, die standardmäßig deaktiviert ist) im Quellkonto aktivieren. Diese Anforderung gilt, wenn Ihre Verteilungskonfiguration auf diese Region abzielt, unabhängig davonssmParameterConfigurations, ob Sie die serviceverknüpfte Image Builder-Rolle oder eine benutzerdefinierte Ausführungsrolle verwenden.

Anmerkung

Die AMI-Kopie in eine Opt-in-Region kann auch dann erfolgreich sein, wenn das Quellkonto die Region nicht aktiviert hat. Nur das Schreiben des SSM-Ausgabeparameters schlägt fehl.

Ohne diese Voraussetzung schlägt der Build mit einem Fehler ähnlich dem folgenden fehl:

In region 'af-south-1' - 'STS Client Error: The provided execution role does not exist or does not have sufficient permissions.'

Sie lösen dieses Problem, indem Sie einen der folgenden Schritte ausführen:

  • Aktivieren Sie die Opt-in-Regionen im Quellkonto. Anweisungen zum Aktivieren einer Region findest du im Referenzhandbuch zur Kontoverwaltung unter AWS Regionen in deinem AWS Konto aktivieren oder deaktivieren.

  • Lassen Sie diese Option für die Regionen aus, ssmParameterConfigurations für die Sie sich anmelden. Verwenden Sie stattdessen eine EventBridge Amazon-Regel, um auf das Ereignis EC2 Image Builder Image State Change zu reagieren, und schreiben Sie die Parameter selbst.

Voraussetzungen für EC2 Fast Launch

Bevor Sie eine neue Vertriebskonfiguration für EC2 Fast Launch für Windows-AMIs erstellen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen.

  • Wenn Sie bei der Konfiguration von EC2 Fast Launch eine benutzerdefinierte Startvorlage angeben, verwendet der Service die VPC und andere Konfigurationseinstellungen, die Sie in der Startvorlage definiert haben. Weitere Informationen finden Sie unter Verwenden einer Startvorlage beim Einrichten von EC2 Fast Launch.

  • Wenn Sie keine benutzerdefinierte Startvorlage verwenden, um Ihre Einstellungen zu konfigurieren, müssen Sie die EC2FastLaunchFullAccess Richtlinie an die IAM-Rolle anhängen, die Image Builder zum Erstellen Ihres Images verwendet. Wenn Sie eine Pipeline erstellen oder den Befehl create-image in der verwenden AWS CLI, können Sie nur eine Image Builder-Ausführungsrolle angeben. Wenn Sie eine Image Builder-Workflow-Ausführungsrolle definiert haben, würden Sie dieser Rolle zusätzliche Funktionsberechtigungen hinzufügen. Andernfalls würden Sie eine neue benutzerdefinierte Rolle erstellen, die die erforderlichen Berechtigungen enthält.

    Für diese Funktion sind zusätzliche Berechtigungen erforderlich, die über die in der Basisausführungsrichtlinie enthaltenen hinausgehen. Sie müssen also eine benutzerdefinierte Rolle verwenden. Es wird empfohlen, eine benutzerdefinierte Rolle zu erstellen, an die die EC2ImageBuilderExecutionPolicy AWS verwaltete Richtlinie angehängt ist, und die EC2FastLaunchFullAccess Richtlinie dann dieser Rolle hinzuzufügen.

    Wenn Image Builder dann Ihr Image kopiert, erstellt EC2 Fast Launch automatisch einen CloudFormation Stapel mit den folgenden Ressourcen in Ihrem AWS-Konto.

    • Eine Virtual Private Cloud (VPC)

    • Private Subnetze über mehrere Availability Zones hinweg

    • Eine Startvorlage, konfiguriert mit Instance Metadata Service Version 2 (IMDSv2)

    • Eine Sicherheitsgruppe mit keinen Regeln für ein- oder ausgehenden Datenverkehr

Anmerkung

Image Builder unterstützt keine kontoübergreifende Verteilung für AMIs, für die EC2 Fast Launch voraktiviert ist. EC2 Fast Launch muss vom Zielkonto aus aktiviert werden.

Erstellen Sie eine AMI-Verteilungskonfiguration

Zu den Verteilungskonfigurationen gehören der Ausgabe-AMI-Name, spezifische Regionseinstellungen für die Verschlüsselung, Startberechtigungen und AWS-Konten Organisationen und Organisationseinheiten (OUs), die das Ausgabe-AMI starten können, sowie Lizenzkonfigurationen.

Eine Verteilungskonfiguration ermöglicht es Ihnen, den Namen und die Beschreibung Ihres Ausgabe-AMI anzugeben, andere AWS-Konten zum Starten des AMI zu autorisieren, das AMI auf andere Konten zu kopieren und das AMI in andere AWS Regionen zu replizieren. Außerdem können Sie das AMI in Amazon Simple Storage Service (Amazon S3) exportieren oder EC2 Fast Launch für Windows-Ausgabe-AMIs konfigurieren. Um ein AMI öffentlich zu machen, setzen Sie die Startberechtigung für autorisierte Konten auf all. Sehen Sie sich die Beispiele für die Veröffentlichung eines AMI auf ModifyImageAttribute EC2 an.

Console

Gehen Sie wie folgt vor, um eine neue AMI-Verteilungskonfiguration zu erstellen in: AWS-Managementkonsole

  1. Öffnen Sie die EC2 Image Builder-Konsole unter https://console.aws.amazon.com/imagebuilder/.

  2. Wählen Sie im Navigationsbereich die Option Verteilungseinstellungen aus. Dies zeigt eine Liste der Vertriebskonfigurationen, die unter Ihrem Konto erstellt wurden.

  3. Wählen Sie oben im Bereich mit den Verteilungseinstellungen die Option Verteilungseinstellungen erstellen aus.

  4. Wählen Sie im Abschnitt Image-Typ den Ausgabetyp Amazon Machine Image (AMI) aus.

  5. Geben Sie im Abschnitt Allgemein einen Namen für Ihre Vertriebskonfiguration und optional eine Beschreibung ein.

  6. Geben Sie im Abschnitt Regionseinstellungen die folgenden Details für jede Region ein, in der Sie Ihr AMI verteilen:

    1. Das AMI wird standardmäßig an die aktuelle Region (Region 1) verteilt. Region 1 ist die Quelle für die Verteilung. Einige Einstellungen für Region 1 können nicht bearbeitet werden. Für alle Regionen, die Sie hinzufügen, können Sie eine Region aus der Dropdownliste Region auswählen.

      Der KMS-Schlüssel identifiziert den Schlüssel AWS KMS key , der zum Verschlüsseln der EBS-Volumes für Ihr Bild in der Zielregion verwendet wird. Es ist wichtig zu beachten, dass dies nicht für das ursprüngliche AMI gilt, das der Build unter Ihrem Konto in der Quellregion (Region 1) erstellt. Die Verschlüsselung, die während der Verteilungsphase des Builds ausgeführt wird, gilt nur für Images, die an andere Konten oder Regionen verteilt werden.

      Um die EBS-Volumes für das AMI zu verschlüsseln, das in der Quellregion für Ihr Konto erstellt wurde, müssen Sie den KMS-Schlüssel in der Image-Rezepturblock-Gerätezuordnung (Speicher (Volumes) in der Konsole) festlegen.

      Image Builder kopiert das AMI auf die Zielkonten, die Sie für die Region angeben.

      Voraussetzung

      Um ein Image kontenübergreifend zu kopieren, müssen Sie die EC2ImageBuilderDistributionCrossAccountRole Rolle in allen Zielkonten der Verteilung erstellen und die Ec2ImageBuilderCrossAccountDistributionAccess policy verwaltete Richtlinie an die Rolle anhängen.

      Der Ausgabe-AMI-Name ist optional. Wenn Sie einen Namen angeben, enthält der endgültige Ausgabe-AMI-Name einen angehängten Zeitstempel, der angibt, wann das AMI erstellt wurde. Wenn Sie keinen Namen angeben, hängt Image Builder den Build-Zeitstempel an den Rezeptnamen an. Dadurch werden eindeutige AMI-Namen für jeden Build gewährleistet.

      1. Mit AMI-Sharing können Sie bestimmten AWS Principals Zugriff gewähren, um Instances von Ihrem AMI aus zu starten. Wenn Sie den Abschnitt AMI-Sharing erweitern, können Sie die folgenden Details eingeben:

        • Startberechtigungen — Wählen Sie Privat aus, wenn Sie Ihr AMI geheim halten und bestimmten AWS Principals Zugriff gewähren möchten, um eine Instance von Ihrem privaten AMI aus zu starten. Wählen Sie Öffentlich, wenn Sie Ihr AMI öffentlich machen möchten. Jeder AWS Principal kann eine Instance von Ihrem öffentlichen AMI aus starten.

        • Principals — Sie können den folgenden Typen von AWS Principals Zugriff zum Starten von Instances gewähren:

          • AWS Konto — Zugriff auf ein bestimmtes Konto gewähren AWS

          • Organisationseinheit (OU) — Gewähren Sie Zugriff auf eine OU und all ihre untergeordneten Entitäten. Zu den untergeordneten Entitäten gehören Organisationseinheiten und AWS Konten.

          • Organisation — Gewähren Sie Zugriff auf Ihre AWS Organizations und alle untergeordneten Entitäten. Zu den untergeordneten Entitäten gehören Organisationseinheiten und AWS Konten.

            Wählen Sie zunächst den Prinzipaltyp aus. Geben Sie dann die ID für den AWS Principal, dem Sie Zugriff gewähren möchten, in das Feld rechts neben der Dropdownliste ein. Sie können mehrere IDs unterschiedlichen Typs eingeben.

      2. Sie können den Abschnitt Lizenzkonfiguration erweitern, um Lizenzkonfigurationen, die mit AWS License Manager Ihren Image Builder-Images erstellt wurden, anzuhängen. Lizenzkonfigurationen enthalten Lizenzregeln, die auf den Bedingungen Ihrer Unternehmensvereinbarungen basieren. Image Builder schließt automatisch Lizenzkonfigurationen ein, die Ihrem Basis-AMI zugeordnet waren.

      3. Sie können den Abschnitt zur Konfiguration der Startvorlage erweitern, um eine EC2-Startvorlage anzugeben, die zum Starten von Instances über das von Ihnen erstellte AMI verwendet werden soll.

        Wenn Sie eine EC2-Startvorlage verwenden, können Sie Image Builder anweisen, nach Abschluss des Builds eine neue Version Ihrer Startvorlage zu erstellen, die die neueste AMI-ID enthält. Um die Startvorlage zu aktualisieren, konfigurieren Sie die Einstellungen wie folgt:

        • Name der Startvorlage — Wählen Sie den Namen der Startvorlage aus, die Image Builder aktualisieren soll.

        • Standardversion festlegen — Wählen Sie dieses Kontrollkästchen, um die Standardversion der Startvorlage auf die neue Version zu aktualisieren.

        Um eine weitere Startvorlagenkonfiguration hinzuzufügen, wählen Sie Startvorlagenkonfiguration hinzufügen. Sie können bis zu fünf Startvorlagenkonfigurationen pro Region verwenden.

      4. Sie können den Abschnitt SSM-Parameterkonfigurationen erweitern, um einen SSM-Parameter zu konfigurieren, der die Ausgabe-AMI-ID für das Image speichert, das an die Zielregion verteilt wird. Sie können optional ein Vertriebskonto in der Region angeben.

        Parametername — Geben Sie den Namen für Ihren Parameter ein. Zum Beispiel /output/image/param.

        Datentyp — Behalten Sie den Standardwert (AWS EC2 Image) bei. Dadurch wird Systems Manager angewiesen, den Parameterwert zu überprüfen, um sicherzustellen, dass es sich um eine gültige AMI-ID handelt.

    2. Um Verteilungseinstellungen für eine andere Region hinzuzufügen, wählen Sie Region hinzufügen.

  7. Wählen Sie Einstellungen erstellen, wenn Sie fertig sind.

AWS CLI

Das folgende Beispiel zeigt, wie Sie den create-distribution-configuration Befehl verwenden, um eine neue Verteilungskonfiguration für Ihr AMI zu erstellen AWS CLI.

  1. Erstellen einer CLI-Eingabe-JSON-Datei

    Verwenden Sie ein Tool zur Dateibearbeitung, um eine JSON-Datei mit Schlüsseln zu erstellen, die in einem der folgenden Beispiele gezeigt werden, und Werten, die für Ihre Umgebung gültig sind. In diesen Beispielen wird definiert AWS-Konten, welche AWS Organizations oder welche Organisationseinheiten (OUs) berechtigt sind, das AMI zu starten, das Sie an die angegebenen Regionen verteilen. Benennen Sie die Dateicreate-ami-distribution-configuration.json, die im nächsten Schritt verwendet werden soll:

    Beispiel 1: Verteilen an AWS-Konten

    In diesem Beispiel wird ein AMI auf zwei Regionen verteilt und angegeben AWS-Konten , welche über Startberechtigungen in jeder Region verfügen.

    { "name": "MyExampleAccountDistribution", "description": "Copies AMI to eu-west-1, and specifies accounts that can launch instances in each Region.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{imagebuilder:buildDate}}", "description": "An example image name with parameter references", "amiTags": { "KeyName": "Some Value" }, "launchPermission": { "userIds": [ "987654321012" ] } } }, { "region": "eu-west-1", "amiDistributionConfiguration": { "name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}", "amiTags": { "KeyName": "Some value" }, "launchPermission": { "userIds": [ "100000000001" ] } } } ] }
    Beispiel 2: An Organisationen und Organisationseinheiten verteilen

    In diesem Beispiel wird ein AMI an die Quellregion verteilt und die Startberechtigungen für Organisation und Organisationseinheit angegeben.

    { "name": "MyExampleAWSOrganizationDistribution", "description": "Shares AMI with the Organization and OU", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{ imagebuilder:buildDate }}", "launchPermission": { "organizationArns": [ "arn:aws:organizations::123456789012:organization/o-myorganization123" ], "organizationalUnitArns": [ "arn:aws:organizations::123456789012:ou/o-123example/ou-1234-myorganizationalunit" ] } } } ] }
    Beispiel 3: Speichern Sie die Ausgabe-AMI-ID in einem SSM-Parameter

    In diesem Beispiel wird die Ausgabe-AMI-ID in einem AWS Systems Manager Parameter Store-Parameter in der Verteilungsregion gespeichert.

    { "name": "SSMParameterOutputAMI", "description": "Updates an SSM parameter with the output AMI ID for the distribution.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{ imagebuilder:buildDate }}" }, "ssmParameterConfigurations": [ { "amiAccountId": "111122223333", "parameterName": "/output/image/param", "dataType": "aws:ec2:image" } ] } ] }
  2. Führen Sie den folgenden Befehl aus, indem Sie die Datei verwenden, die Sie als Eingabe erstellt haben.
    aws imagebuilder create-distribution-configuration --cli-input-json file://create-ami-distribution-configuration.json
    Anmerkung
    • Sie müssen diefile://-Notation am Anfang des JSON-Dateipfades.

    • Der Pfad für die JSON-Datei sollte der entsprechenden Konvention für das Basisbetriebssystem folgen, auf dem Sie den Befehl ausführen. Beispielsweise verwendet Windows den umgekehrten Schrägstrich (\), um auf den Verzeichnispfad zu verweisen, während Linux und macOS den Schrägstrich (/) verwenden.

    Weitere Informationen finden Sie create-distribution-configuration in der AWS CLI Befehlsreferenz.

Aktualisieren Sie eine AMI-Verteilungskonfiguration

Sie können Ihre AMI-Verteilungskonfiguration ändern. Die Änderungen, die Sie vornehmen, gelten jedoch nicht für Ressourcen, die Image Builder bereits verteilt hat. Wenn Sie beispielsweise ein AMI an eine Region verteilt haben, die Sie später aus Ihrer Distribution entfernen, verbleibt das AMI, das bereits verteilt wurde, in dieser Region, bis Sie es manuell entfernen.

AWS-Managementkonsole

Gehen Sie wie folgt vor, um eine AMI-Verteilungskonfiguration im Verzeichnis zu erstellen AWS-Managementkonsole:

  1. Öffnen Sie die EC2 Image Builder-Konsole unter https://console.aws.amazon.com/imagebuilder/.

  2. Wählen Sie im Navigationsbereich die Option Verteilungseinstellungen aus. Dies zeigt eine Liste der Vertriebskonfigurationen, die unter Ihrem Konto erstellt wurden.

  3. Um Details anzuzeigen oder eine Vertriebskonfiguration zu aktualisieren, wählen Sie den Link Konfigurationsname. Dadurch wird die Detailansicht für die Verteilungseinstellungen geöffnet.

    Anmerkung

    Sie können auch das Kontrollkästchen neben dem Konfigurationsnamen aktivieren und dann Details anzeigen auswählen.

  4. Um die Verteilungskonfiguration zu bearbeiten, wählen Sie in der oberen rechten Ecke des Abschnitts mit den Verteilungsdetails die Option Bearbeiten aus. Einige Felder sind gesperrt, z. B. der Name der Verteilungskonfiguration und die Standardregion, die als Region 1 angezeigt wird. Weitere Informationen zu den Einstellungen der Distributionskonfiguration finden Sie unterErstellen Sie eine AMI-Verteilungskonfiguration.

  5. Wählen Sie abschließend Änderungen speichern aus.

AWS CLI

Das folgende Beispiel zeigt, wie Sie den update-distribution-configuration Befehl verwenden, um die Verteilungseinstellungen für Ihr AMI zu aktualisieren, indem Sie den verwenden AWS CLI.

  1. Erstellen einer CLI-Eingabe-JSON-Datei

    Verwenden Sie ein Tool zur Dateibearbeitung, um eine JSON-Datei mit den im folgenden Beispiel gezeigten Schlüsseln und Werten, die für Ihre Umgebung gültig sind, zu erstellen. In diesem Beispiel wird eine Datei mit dem Namen verwendet. update-ami-distribution-configuration.json

    { "distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/update-ami-distribution-configuration.json", "description": "Copies AMI to eu-west-2, and specifies accounts that can launch instances in each Region.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{imagebuilder:buildDate}}", "description": "An example image name with parameter references", "launchPermissions": { "userIds": [ "987654321012" ] } } }, { "region": "eu-west-2", "amiDistributionConfiguration": { "name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}", "tags": { "KeyName": "Some value" }, "launchPermissions": { "userIds": [ "100000000001" ] } } } ] }
  2. Führen Sie den folgenden Befehl aus, indem Sie die Datei verwenden, die Sie als Eingabe erstellt haben.
    aws imagebuilder update-distribution-configuration --cli-input-json file://update-ami-distribution-configuration.json
    Anmerkung
    • Sie müssen diefile://-Notation am Anfang des JSON-Dateipfades.

    • Der Pfad für die JSON-Datei sollte der entsprechenden Konvention für das Basisbetriebssystem folgen, auf dem Sie den Befehl ausführen. Beispielsweise verwendet Windows den Backslash (\), um auf den Verzeichnispfad zu verweisen, während Linux und macOS den Schrägstrich (/) verwenden.

    Weitere Informationen finden Sie update-distribution-configuration in der AWS CLI Befehlsreferenz. Informationen zum Aktualisieren der Tags für Ihre Ressource zur Distributionskonfiguration finden Sie im Markieren von Ressourcen Abschnitt.

Beispiel: Aktivieren Sie EC2 Fast Launch mit einer Startvorlage für Ausgabe-AMIs

Das folgende Beispiel zeigt, wie Sie den create-distribution-configuration Befehl mit einer Startvorlage verwenden, um Verteilungseinstellungen zu erstellen, für die EC2 Fast Launch für Ihr AMI konfiguriert ist, und zwar aus dem. AWS CLI

Um EC2 Fast Launch-Einstellungen ohne Startvorlage zu konfigurieren, stellen Sie sicher, dass Sie alle Bedingungen erfüllt haben, Voraussetzungen für das Einrichten von EC2-Schnellstart bevor Sie Ihre Verteilungskonfiguration erstellen.

  1. Erstellen einer CLI-Eingabe-JSON-Datei

    Verwenden Sie ein Dateibearbeitungswerkzeug, um eine JSON-Datei mit Schlüsseln zu erstellen, wie im folgenden Beispiel gezeigt, plus Werten, die für Ihre Umgebung gültig sind.

    In diesem Beispiel werden Instances für alle Zielressourcen gleichzeitig gestartet, da die maximale Anzahl paralleler Starts größer ist als die Anzahl der Zielressourcen. Diese Datei ist ami-dist-config-win-fast-launch.json in dem Befehlsbeispiel benannt, das im nächsten Schritt gezeigt wird.

    { "name": "WinFastLaunchDistribution", "description": "An example of Windows AMI EC2 Fast Launch settings in the distribution configuration.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{imagebuilder:buildDate}}", "description": "Includes Windows AMI EC2 Fast Launch settings.", "amiTags": { "KeyName": "Some Value" } }, "fastLaunchConfigurations": [{ "enabled": true, "snapshotConfiguration": { "targetResourceCount": 5 }, "maxParallelLaunches": 6, "launchTemplate": { "launchTemplateId": "lt-0ab1234c56d789012", "launchTemplateVersion": "1" } }], "launchTemplateConfigurations": [{ "launchTemplateId": "lt-0ab1234c56d789012", "setDefaultVersion": true }] }] }
    Anmerkung

    Sie können launchTemplateId im launchTemplate Abschnitt launchTemplateName anstelle von den angeben, aber Sie können nicht sowohl den Namen als auch die ID angeben.

  2. Führen Sie den folgenden Befehl aus, indem Sie die Datei verwenden, die Sie als Eingabe erstellt haben.
    aws imagebuilder create-distribution-configuration --cli-input-json file://ami-dist-config-win-fast-launch.json
    Anmerkung
    • Sie müssen diefile://-Notation am Anfang des JSON-Dateipfades.

    • Der Pfad für die JSON-Datei sollte der entsprechenden Konvention für das Basisbetriebssystem folgen, auf dem Sie den Befehl ausführen. Beispielsweise verwendet Windows den umgekehrten Schrägstrich (\), um auf den Verzeichnispfad zu verweisen, während Linux und macOS den Schrägstrich (/) verwenden.

    Weitere Informationen finden Sie create-distribution-configuration in der AWS CLI Befehlsreferenz.

Beispiel: Erstellen Sie Verteilungseinstellungen für Ausgabe-VM-Festplatten aus dem AWS CLI

Das folgende Beispiel zeigt, wie Sie den create-distribution-configuration Befehl verwenden, um Verteilungseinstellungen zu erstellen, mit denen VM-Image-Festplatten bei jedem Image-Build nach Amazon S3 exportiert werden.

  1. Erstellen einer CLI-Eingabe-JSON-Datei

    Sie können den create-distribution-configuration Befehl, den Sie in der AWS CLI verwenden, optimieren. Erstellen Sie dazu eine JSON-Datei, die die gesamte Exportkonfiguration enthält, die Sie an den Befehl übergeben möchten.

    Anmerkung

    Die Benennungskonvention für die Datenwerte in der JSON-Datei folgt dem Muster, das für die Image Builder-API-Operationsanforderungsparameter angegeben ist. Informationen zur Überprüfung der Anforderungsparameter für API-Operationen finden Sie im CreateDistributionConfiguration Befehl in der EC2 Image Builder-API-Referenz.

    Um die Datenwerte als Befehlszeilenparameter bereitzustellen, beziehen Sie sich auf die in der AWS CLI Befehlsreferenz angegebenen Parameternamen. Gehen Sie zum create-distribution-configuration Befehl als Optionen.

    Hier ist eine Zusammenfassung der Parameter, die wir im s3ExportConfiguration JSON-Objekt für dieses Beispiel angeben:

    • roleName (string, required) — Der Name der Rolle, die der VM die Import/Export Erlaubnis erteilt, Bilder in Ihren S3-Bucket zu exportieren.

    • disk ImageFormat (string, required) — Exportiert das aktualisierte Disk-Image in eines der folgenden unterstützten Formate:

      • Virtuelle Festplatte (VHD) — Kompatibel mit Hyper-V Virtualisierungsprodukten von Citrix Xen und Microsoft.

      • Stream-optimized ESX Virtual Machine Disk (VMDK) — Kompatibel mit den Versionen 4, 5 und 6 von VMware ESX und VMware vSphere.

      • Raw — Rohformat.

    • s3Bucket (string, erforderlich) — Der S3-Bucket, in dem die Ausgabe-Disk-Images für Ihre VM gespeichert werden.

    Speichern Sie die Datei als export-vm-disks.json. Verwenden Sie den Dateinamen im Befehlcreate-distribution-configuration.

    { "name": "example-distribution-configuration-with-vm-export", "description": "example", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "description": "example-with-vm-export" }, "s3ExportConfiguration": { "roleName": "vmimport", "diskImageFormat": "RAW", "s3Bucket": "vm-bucket-export" } }], "clientToken": "abc123def4567ab" }
  2. Führen Sie den folgenden Befehl aus, indem Sie die Datei verwenden, die Sie als Eingabe erstellt haben.
    aws imagebuilder create-distribution-configuration --cli-input-json file://export-vm-disks.json
    Anmerkung
    • Sie müssen diefile://-Notation am Anfang des JSON-Dateipfades.

    • Der Pfad für die JSON-Datei sollte der entsprechenden Konvention für das Basisbetriebssystem folgen, auf dem Sie den Befehl ausführen. Beispielsweise verwendet Windows den Backslash (\), um auf den Verzeichnispfad zu verweisen, während Linux und macOS den Schrägstrich (/) verwenden.

    Weitere Informationen finden Sie create-distribution-configuration in der AWS CLI Befehlsreferenz.