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.
Richten Sie sich ein, um benutzerdefinierte Images mit Image Builder zu erstellen
Bevor Sie Images mit EC2 Image Builder erstellen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen für die Erstellung einer Image-Pipeline erfüllen. Sofern nicht ausdrücklich anders angegeben, sind diese Voraussetzungen für alle Arten von Pipelines erforderlich.
Voraussetzungen
Nachdem Sie die Voraussetzungen erfüllt haben, können Sie EC2 Image Builder über eine der folgenden Schnittstellen verwalten.
Mit dem Service verknüpfte Image Builder Builder-Rolle
EC2 Image Builder verwendet eine dienstverknüpfte Rolle, um anderen AWS Diensten in Ihrem Namen Berechtigungen zu erteilen. Sie müssen eine serviceverknüpfte Rolle nicht manuell erstellen. Wenn Sie Ihre erste Image Builder-Ressource in der AWS Management Console, der AWS CLI oder der AWS API erstellen, erstellt Image Builder die serviceverknüpfte Rolle für Sie. Weitere Informationen zu der dienstbezogenen Rolle, die Image Builder in Ihrem Konto erstellt, finden Sie unterVerwenden Sie mit dem IAM-Dienst verknüpfte Rollen für Image Builder.
Konfigurationsanforderungen
-
Image Builder unterstützt AWS PrivateLink. Weitere Informationen zur Konfiguration von VPC-Endpunkten für Image Builder finden Sie unter. Image Builder und VPC-Endpunkte mit AWS PrivateLink Schnittstelle
-
Die Instances, die Image Builder zum Erstellen von Container-Images verwendet, müssen über Internetzugang verfügen, um sie AWS CLI von Amazon S3 herunterzuladen und gegebenenfalls ein Basis-Image aus dem Docker Hub-Repository herunterzuladen. Image Builder verwendet die AWS CLI , um das Dockerfile aus dem Container-Rezept abzurufen, wo es als Daten gespeichert ist.
-
Die Instanzen, die Image Builder zum Erstellen von Images und zum Ausführen von Tests verwendet, müssen Zugriff auf den Systems Manager Manager-Dienst haben. Die Installationsanforderungen hängen von Ihrem Betriebssystem ab.
Um die Installationsanforderungen für Ihr Basis-Image zu sehen, wählen Sie die Registerkarte, die Ihrem Basis-Image-Betriebssystem entspricht.
Container-Repository für Container-Image-Pipelines
Für Container-Image-Pipelines definiert das Rezept die Konfiguration für die Docker-Images, die im Ziel-Container-Repository erzeugt und gespeichert werden. Sie müssen das Ziel-Repository erstellen, bevor Sie das Container-Rezept für Ihr Docker-Image erstellen.
Image Builder verwendet Amazon ECR als Ziel-Repository für Container-Images. Um ein Amazon ECR-Repository zu erstellen, folgen Sie den unter Erstellen eines Repositorys im Amazon Elastic Container Registry-Benutzerhandbuch beschriebenen Schritte.
Dedizierter Host für macOS-Images
Amazon EC2 Mac-Instances benötigen einen Dedicated Host, der auf einem Metal-Instance-Typ ausgeführt wird. Bevor Sie ein benutzerdefiniertes macOS-Image erstellen, müssen Sie Ihrem Konto einen Dedicated Host zuweisen. Weitere Informationen zu Mac-Instances und eine Liste der Instance-Typen, die das macOS-Betriebssystem nativ unterstützen, finden Sie unter Amazon EC2 Mac-Instances im EC2 Amazon-Benutzerhandbuch.
Wenn Sie einen Dedicated Host erstellt haben, können Sie die Einstellungen in der Infrastrukturkonfigurationsressource für Ihr Image konfigurieren. Die Infrastrukturkonfiguration umfasst Platzierungseigenschaften, in denen Sie den Host, die Host-Platzierungsgruppe oder die Availability Zone angeben können, in der sich die Instances befinden sollen, die von Ihrem Image aus gestartet werden.
IAM-Voraussetzungen
Die IAM-Rolle, die Sie Ihrem Instanzprofil zuordnen, muss über Berechtigungen zum Ausführen der in Ihrem Image enthaltenen Build- und Testkomponenten verfügen. Die folgenden IAM-Rollenrichtlinien müssen der IAM-Rolle angehängt werden, die dem Instanzprofil zugeordnet ist:
-
Amazon SSMManaged InstanceCore
Wenn Sie die Protokollierung konfigurieren, muss das in Ihrer Infrastrukturkonfiguration angegebene Instance-Profil über s3:PutObject
Berechtigungen für den Ziel-Bucket (arn:aws:s3:::
) verfügen. Zum Beispiel:BucketName
/*
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::
bucket-name
/*" } ] }
Richtlinie anfügen
Die folgenden Schritte führen Sie durch den Prozess des Anfügens der IAM-Richtlinien an eine IAM-Rolle, um die oben genannten Berechtigungen zu gewähren.
-
Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter. https://console.aws.amazon.com/iam/
-
Wählen Sie im linken Navigationsbereich Richtlinien aus.
-
Filtern Sie die Liste der Richtlinien mit EC2InstanceProfileForImageBuilder
-
Wählen Sie das bullet neben der Richtlinie aus und wählen Sie in der Dropdownliste Richtlinienaktionen die Option Anhängen aus.
-
Wählen Sie den Namen der IAM-Rolle aus, an die die Richtlinie angehängt werden soll.
-
Wählen Sie Richtlinie anfügen aus.
-
Wiederholen Sie die Schritte 3-6 für EC2InstanceProfileForImageBuilderECRContainerBuildsund SSMManagedInstanceCoreAmazon-Richtlinien.
Anmerkung
Wenn Sie ein mit Image Builder erstelltes Image in ein anderes Konto kopieren möchten, müssen Sie die EC2ImageBuilderDistributionCrossAccountRole
Rolle in allen Zielkonten erstellen und die Ec2ImageBuilderCrossAccountDistributionAccess policy verwaltete Richtlinie an die Rolle anhängen. Weitere Informationen finden Sie unter Teilen Sie Image Builder Builder-Ressourcen mit AWS RAM.
Voraussetzungen für den Systems Manager Agent
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.
Um die Erfassung dieser Informationen abzulehnen, wählen Sie die Methode aus, die Ihrer bevorzugten Umgebung entspricht:
-
Image Builder Builder-Konsole — Deaktivieren Sie das Kontrollkästchen Erweiterte Metadatensammlung aktivieren.
-
AWS CLI— Geben Sie die Option an
--no-enhanced-image-metadata-enabled
-
Image Builder Builder-API oder SDKs — Setzen Sie den
enhancedImageMetadataEnabled
Parameter auffalse
.
Image Builder sendet RunCommand
im Rahmen des Workflows zum Erstellen und Testen von Images Aktionen an Ihre Build- und Testinstanz. Sie können die Verwendung von RunCommand
zum Senden von Aktionen an Ihre Build- und Testinstanz nicht deaktivieren.