Was ist Image Builder? - EC2Image 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.

Was ist Image Builder?

EC2Image Builder ist ein vollständig verwaltetes Programm AWS -Service , mit dem Sie die Erstellung, Verwaltung und Bereitstellung von benutzerdefinierten, sicheren und up-to-date Server-Images automatisieren können. Sie können das AWS Management Console, oder verwenden AWS Command Line Interface, APIs um benutzerdefinierte Images in Ihrem zu erstellen AWS-Konto.

Sie besitzen die benutzerdefinierten Bilder, die Image Builder in Ihrem Konto erstellt. Sie können Pipelines so konfigurieren, dass Updates und System-Patches für die Images, die Sie besitzen, automatisiert werden. Sie können auch einen eigenständigen Befehl ausführen, um ein Image mit den von Ihnen definierten Konfigurationsressourcen zu erstellen.

Der Image Builder Builder-Pipeline-Assistent kann Sie wie folgt durch die Schritte zum Erstellen eines benutzerdefinierten Images führen:

  1. Wählen Sie ein Basis-Image für Ihre Anpassungen aus.

  2. Fügen Sie Ihrem Basis-Image Software hinzu oder entfernen Sie sie daraus.

  3. Passen Sie Einstellungen und Skripts mit Build-Komponenten an.

  4. Führen Sie ausgewählte Tests aus oder erstellen Sie benutzerdefinierte Testkomponenten.

  5. Verteilen AMIs an AWS-Regionen und AWS-Konten.

  6. Wenn Ihre Image Builder Builder-Pipeline ein benutzerdefiniertes Amazon Machine Image (AMI) für den Vertrieb erstellt, können Sie andere AWS-Konten Organisationen autorisieren und OUs es von Ihrem Konto aus starten. Ihrem Konto werden die Gebühren in Rechnung gestellt, die mit dem verbunden sind. AMI

Funktionen von Image Builder

EC2Image Builder bietet die folgenden Funktionen:

Steigern Sie die Produktivität und reduzieren Sie den Arbeitsaufwand für die Erstellung konformer up-to-date Images

Image Builder reduziert den Arbeitsaufwand für die Erstellung und Verwaltung von Images in großem Maßstab, indem es Ihre Build-Pipelines automatisiert. Sie können Ihre Builds automatisieren, indem Sie Ihren bevorzugten Zeitplan für die Build-Ausführung angeben. Durch die Automatisierung werden die Betriebskosten für die Wartung Ihrer Software mit den neuesten Betriebssystem-Patches gesenkt.

Erhöhen Sie die Verfügbarkeit Ihrer Dienste

Image Builder bietet Zugriff auf Testkomponenten, mit denen Sie Ihre Images vor der Bereitstellung testen können. Sie können auch benutzerdefinierte Testkomponenten mit AWS Task Orchestrator and Executor (AWSTOE) erstellen und diese verwenden. Image Builder verteilt Ihr Image nur, wenn alle konfigurierten Tests erfolgreich waren.

Legen Sie die Sicherheitslatte für Bereitstellungen höher

Mit Image Builder können Sie Images erstellen, die unnötiges Risiko von Sicherheitslücken bei Komponenten verhindern. Sie können AWS Sicherheitseinstellungen anwenden, um sichere out-of-the-box Images zu erstellen, die branchenspezifischen und internen Sicherheitskriterien entsprechen. Image Builder bietet auch Sammlungen von Einstellungen für Unternehmen in regulierten Branchen. Mithilfe dieser Einstellungen können Sie schnell und einfach standardkonforme Images erstellen. STIG Eine vollständige Liste der über Image Builder verfügbaren STIG Komponenten finden Sie unterVon Amazon verwaltete STIG Härtungskomponenten für Image Builder.

Zentralisierte Durchsetzung und Nachverfolgung der Herkunft

Mithilfe der integrierten Integrationen mit können Sie mit Image Builder Richtlinien durchsetzen AWS Organizations, die Konten darauf beschränken, Instanzen nur von genehmigten AMIs Instanzen auszuführen.

Vereinfachte gemeinsame Nutzung von Ressourcen zwischen AWS-Konten

EC2Image Builder ist in AWS Resource Access Manager (AWS RAM) integriert, sodass Sie bestimmte Ressourcen mit beliebigen AWS-Konto oder über diese gemeinsam nutzen können AWS Organizations. EC2Image Builder Builder-Ressourcen können gemeinsam genutzt werden:

  • Komponenten

  • Bilder

  • Image-Rezepte

  • Container-Rezepte

Weitere Informationen finden Sie unter Teilen Sie Image Builder Builder-Ressourcen mit AWS RAM.

Unterstützte Betriebssysteme

Image Builder unterstützt die folgenden Betriebssystemversionen:

Betriebssystem/Distribution Unterstützte Versionen

Amazon Linux

2 und 2023

CentOS

7 und 8

CentOS Stream

8

RedHat Enterprise Linux (RHEL)

7 und 8

SUSELinux Enterprise Server (SUSE)

12 und 15

Ubuntu

18.04LTS, 20.04 und 22.04 LTS LTS

Windows Server

2012 R2, 2016, 2019 und 2022

Unterstützte Bildformate

Für Ihre benutzerdefinierten AMI Bilder können Sie ein vorhandenes Bild AMI als Ausgangspunkt wählen. Bei Docker-Container-Images können Sie zwischen öffentlichen Images, die auf Amazon gehostet werden DockerHub, vorhandenen Container-Images in Amazon oder von Amazon ECR verwalteten Container-Images wählen.

Konzepte

Die folgenden Begriffe und Konzepte sind für Ihr Verständnis und Ihre Verwendung von EC2 Image Builder von zentraler Bedeutung.

AMI

Ein Amazon Machine Image (AMI) ist die grundlegende Bereitstellungseinheit in Amazon und gehört zu den Arten von ImagesEC2, die Sie mit Image Builder erstellen können. An AMI ist ein vorkonfiguriertes Image einer virtuellen Maschine, das das Betriebssystem (OS) und die vorinstallierte Software zur Bereitstellung EC2 von Instances enthält. Weitere Informationen finden Sie unter Amazon Machine Images (AMI).

Image-Pipeline

Eine Image-Pipeline bietet ein Automatisierungsframework für die Erstellung von sicheren Images AMIs und Container-Images AWS. Die Image Builder Builder-Image-Pipeline ist mit einem Image- oder Container-Rezept verknüpft, das die Erstellungs-, Validierungs- und Testphasen für einen Image-Build-Lebenszyklus definiert.

Eine Image-Pipeline kann einer Infrastrukturkonfiguration zugeordnet werden, die festlegt, wo Ihr Image erstellt wird. Sie können Attribute wie Instance-Typ, Subnetze, Sicherheitsgruppen, Protokollierung und andere infrastrukturbezogene Konfigurationen definieren. Sie können Ihre Image-Pipeline auch einer Verteilungskonfiguration zuordnen, um festzulegen, wie Sie Ihr Image bereitstellen möchten.

Verwaltetes Image

Ein verwaltetes Image ist eine Ressource in Image Builder, die aus einem Image AMI oder einem Container-Image sowie Metadaten wie Version und Plattform besteht. Das verwaltete Image wird von Image Builder Builder-Pipelines verwendet, um zu bestimmen, welches Basis-Image für den Build verwendet werden soll. In diesem Handbuch werden verwaltete Images manchmal als „Images“ bezeichnet. Ein Image ist jedoch nicht dasselbe wie einAMI.

Rezept für Bilder

Ein Image Builder Builder-Image-Rezept ist ein Dokument, das das Basis-Image und die Komponenten definiert, die auf das Basis-Image angewendet werden, um die gewünschte Konfiguration für das AMI Ausgabebild zu erzeugen. Sie können ein Image-Rezept verwenden, um Builds zu duplizieren. Image Builder Builder-Image-Rezepte können mit dem Konsolenassistenten, dem oder dem geteilt, verzweigt und bearbeitet werden. AWS CLI API Sie können Image-Rezepte mit Ihrer Versionskontrollsoftware verwenden, um gemeinsam nutzbare, versionierte Image-Rezepte zu verwalten.

Rezept für Container

Ein Image Builder Builder-Container-Rezept ist ein Dokument, das das Basis-Image und die Komponenten definiert, die auf das Basis-Image angewendet werden, um die gewünschte Konfiguration für das Ausgabe-Container-Image zu erzeugen. Sie können ein Container-Rezept verwenden, um Builds zu duplizieren. Sie können Image Builder Builder-Image-Rezepte teilen, verzweigen und bearbeiten, indem Sie den Konsolenassistenten AWS CLI, den oder den verwendenAPI. Sie können Container-Rezepte mit Ihrer Versionskontrollsoftware verwenden, um gemeinsam nutzbare, versionierte Container-Rezepte zu verwalten.

Basis-Image

Das Basis-Image ist das ausgewählte Image und das Betriebssystem, das zusammen mit den Komponenten in Ihrem Image- oder Container-Rezeptdokument verwendet wird. Das Basisimage und die Komponentendefinitionen ergeben zusammen die gewünschte Konfiguration für das Ausgabebild.

Komponenten

Eine Komponente definiert die Reihenfolge der Schritte, die erforderlich sind, um entweder eine Instanz vor der Image-Erstellung anzupassen (eine Build-Komponente) oder um eine Instanz zu testen, die über das erstellte Image gestartet wurde (eine Testkomponente).

Eine Komponente wird aus einem deklarativen Klartext YAML oder JSON Dokument erstellt, das die Laufzeitkonfiguration für das Erstellen und Validieren oder Testen einer Instanz beschreibt, die von Ihrer Pipeline erzeugt wird. Komponenten werden auf der Instanz mithilfe einer Komponentenverwaltungsanwendung ausgeführt. Die Komponentenverwaltungsanwendung analysiert die Dokumente und führt die gewünschten Schritte aus.

Nach ihrer Erstellung werden eine oder mehrere Komponenten mithilfe eines Image- oder Container-Rezepts gruppiert, um den Plan für die Erstellung und das Testen einer virtuellen Maschine oder eines Container-Images zu definieren. Sie können öffentliche Komponenten verwenden, die Eigentum sind und von denen diese verwaltet werden AWS, oder Sie können eigene Komponenten erstellen. Weitere Informationen zu Komponenten finden Sie unterSo verwendet Image Builder die AWS Task Orchestrator and Executor Anwendung zur Verwaltung von Komponenten.

Dokument zu den Komponenten

Ein deklaratives Klartext YAML - oder JSON Dokument, das die Konfiguration für eine Anpassung beschreibt, die Sie auf Ihr Bild anwenden können. Das Dokument wird verwendet, um eine Build- oder Testkomponente zu erstellen.

Laufzeitphasen

EC2Image Builder besteht aus zwei Laufzeitphasen: Build und Test. Jede Laufzeitphase besteht aus einer oder mehreren Phasen, deren Konfiguration durch das Komponentendokument definiert ist.

Konfigurationsphasen

Die folgende Liste zeigt die Phasen, die während der Build - und Testphase ausgeführt werden:

Erstellungsphase:
Build-Phase

Eine Image-Pipeline beginnt mit der Buildphase der Build-Phase, wenn sie ausgeführt wird. Das Basis-Image wird heruntergeladen, und die für die Buildphase der Komponente angegebene Konfiguration wird angewendet, um eine Instanz zu erstellen und zu starten.

Phase validieren

Nachdem Image Builder die Instanz gestartet und alle Anpassungen der Buildphase angewendet hat, beginnt die Validierungsphase. Während dieser Phase stellt Image Builder sicher, dass alle Anpassungen wie erwartet funktionieren, basierend auf der Konfiguration, die die Komponente für die Validierungsphase angibt. Wenn die Instanzvalidierung erfolgreich ist, stoppt Image Builder die Instanz, erstellt ein Image und fährt dann mit der Testphase fort.

Testphase:
Testphase

Während dieser Phase startet Image Builder eine Instanz aus dem Image, das es nach erfolgreichem Abschluss der Überprüfungsphase erstellt hat. Image Builder führt während dieser Phase Testkomponenten aus, um zu überprüfen, ob die Instanz fehlerfrei ist und wie erwartet funktioniert.

Testphase für Container-Hosts

Nachdem Image Builder die Testphase für alle Komponenten ausgeführt hat, die Sie im Container-Rezept ausgewählt haben, führt Image Builder diese Phase für Container-Workflows aus. In der Container-Host-Testphase können zusätzliche Tests ausgeführt werden, die das Containermanagement und benutzerdefinierte Laufzeitkonfigurationen validieren.

Workflow

Workflows definieren die Reihenfolge der Schritte, die Image Builder beim Erstellen eines neuen Images ausführt. Für alle Images gibt es Workflows zum Erstellen und Testen. Container verfügen über einen zusätzlichen Workflow für die Verteilung.

Workflow-Typen
BUILD

Deckt die Konfiguration in der Buildphase für jedes erstellte Image ab.

TEST

Deckt die Konfiguration der Testphase für jedes erstellte Image ab.

DISTRIBUTION

Deckt den Verteilungsworkflow für Container-Images ab.

Preisgestaltung

Die Verwendung von EC2 Image Builder zur Erstellung von benutzerdefinierten Images AMI oder Container-Images ist kostenlos. Für andere Dienste, die im Prozess verwendet werden, gelten jedoch die Standardpreise. Die folgende Liste enthält die Nutzung einiger AWS -Services , für die je nach Konfiguration Kosten anfallen können, wenn Sie Ihre benutzerdefinierten Images AMI oder Container-Images erstellen, erstellen, speichern und verteilen.

  • Starten einer EC2-Instance

  • Speichern von Protokollen auf Amazon S3

  • Validierung von Bildern mit Amazon Inspector

  • Speichern von Amazon EBS Snapshots für Ihre AMIs

  • Speichern von Container-Bildern in Amazon ECR

  • Container-Images in und aus Amazon übertragen und daraus ziehen ECR

  • Wenn Systems Manager Advanced Tier aktiviert ist und EC2 Amazon-Instances mit lokaler Aktivierung ausgeführt werden, werden Ihnen möglicherweise Ressourcen über Systems Manager in Rechnung gestellt

EC2Image Builder verwendet andere, AWS -Services um Images zu erstellen, abhängig von Ihrer Image Builder Builder-Rezeptkonfiguration. Weitere Informationen zur Produkt- und Serviceintegration für Ihre benutzerdefinierten Images finden Sie unterIntegrieren Sie Produkte und Services in Image Builder.