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

Was ist EC2 Image Builder?

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

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 Sie AMIs an AWS-Regionen und AWS-Konten.

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

Funktionen von EC2 Image Builder

EC2 Image Builder bietet die folgenden Funktionen:

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

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ötige Sicherheitslücken bei Komponenten vermeiden. 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 konforme Images für STIG-Standards erstellen. Eine vollständige Liste der über Image Builder verfügbaren STIG-Komponenten finden Sie unterVon Amazon verwaltete STIG-Härtungskomponenten für EC2 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, Instances nur von genehmigten AMIs auszuführen.

Vereinfachte gemeinsame Nutzung von Ressourcen zwischen AWS-Konten

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

  • Komponenten

  • Bilder

  • Image-Rezepte

  • Container-Rezepte

Weitere Informationen finden Sie unter EC2 Image Builder Builder-Ressourcen teilen.

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

Red Hat Enterprise Linux (RHEL)

7 und 8

SUSE Linux Enterprise Server (SUSE)

12 und 15

Ubuntu

18.04 LTS, 20.04 LTS und 22.04 LTS

Windows Server

2012 R2, 2016, 2019 und 2022

Unterstützte Bildformate

Für Ihre benutzerdefinierten AMI-Images können Sie ein vorhandenes AMI als Ausgangspunkt wählen. Für Docker-Container-Images können Sie zwischen öffentlichen Images, die auf gehostet werden DockerHub, vorhandenen Container-Images in Amazon ECR oder von Amazon 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 EC2 und gehört zu den Arten von Images, die Sie mit Image Builder erstellen können. Ein AMI ist ein vorkonfiguriertes VM-Image, das das Betriebssystem (OS) und die vorinstallierte Software zur Bereitstellung von EC2-Instances enthält. Weitere Informationen finden Sie unter Amazon Machine Images (AMI).

Image-Pipeline

Eine Image-Pipeline bietet ein Automatisierungs-Framework für die Erstellung sicherer 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 AMI- oder 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 ein AMI.

Rezept für ein Bild

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 Ausgabe-AMI-Image zu erzeugen. Sie können ein Image-Rezept verwenden, um Builds zu duplizieren. Image Builder Builder-Image-Rezepte können mit dem Konsolenassistenten, der oder der API geteilt, verzweigt und bearbeitet werden. AWS CLI 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, die oder die API verwenden. 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 YAML- oder JSON-Dokument im Klartext 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 YAML- oder JSON-Dokument im Klartext, 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

EC2 Image Builder hat zwei Laufzeitphasen: Build und Test. Jede Laufzeitphase besteht aus einer oder mehreren Phasen, deren Konfiguration im 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 benutzerdefinierter 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 Verwendung einiger AWS-Services , für die je nach Konfiguration Kosten anfallen können, wenn Sie Ihre benutzerdefinierten 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-Images in Amazon ECR

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

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

EC2 Image Builder verwendet andere, um Images AWS-Services 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 EC2 Image Builder.