Was ist AWS Fargate? - Amazon ECS

Was ist AWS Fargate?

AWS Fargate ist eine Technologie, mit der Sie in Amazon ECS Container ausführen können, ohne hierfür Server oder Amazon-EC2-Instance-Cluster verwalten zu müssen. Mit Fargate müssen Sie keine Cluster virtueller Maschinen mehr bereitstellen, konfigurieren oder skalieren, um Container auszuführen. Auf diese Weise müssen keine Servertypen mehr ausgewählt werden, es muss nicht entschieden werden, wann die Cluster skaliert werden oder das Cluster-Packing optimiert werden.

Wenn Sie Ihre Amazon-ECS-Aufgaben und -Services mit dem Fargate-Launchtyp oder einem Fargate-Kapazitätsanbieter ausführen, packen Sie Ihre Anwendung in Container, geben die Betriebssystem-, CPU- und Arbeitsspeicheranforderungen an, definieren Netzwerk- und IAM-Richtlinien und launchen die Anwendung. Jede Fargate-Aufgabe hat ihre eigene Isolationsgrenze und teilt den zugrunde liegenden Kernel, die CPU-Ressourcen, die Arbeitsspeicherressourcen oder die Elastic-Network-Schnittstelle nicht mit einer anderen Aufgabe.

Weitere Informationen zur Fargate-Architektur finden Sie unter Verwenden des Fargate-Launchtyps im Entwicklerhandbuch zu Amazon Elastic Container Service

In diesem Thema werden die verschiedenen Komponenten der Fargate-Aufgaben und -Services beschrieben. Außerdem wird darauf eingegangen, was beim Verwenden von Fargate mit Amazon ECS zu beachten ist.

Komponenten

Cluster

Ein Amazon-ECS-Cluster ist eine logische Gruppierung von Aufgaben oder Services. Sie können Cluster verwenden, um Ihre Anwendungen zu isolieren. Wenn Ihre Aufgaben auf Fargate ausgeführt werden, werden Ihre Clusterressourcen auch von Fargate verwaltet.

Aufgabendefinitionen

Eine Aufgabendefinition ist eine Textdatei, die einen oder mehrere Container beschreibt, die Ihre Anwendung bilden. Sie ist im JSON-Format. Sie können damit maximal zehn Container beschreiben. Die Aufgabendefinition fungiert als Vorlage für Ihre Anwendung. Sie gibt verschiedene Parameter für Ihre Anwendung an. So können Sie beispielsweise Parameter für das Betriebssystem angeben, welche Container verwendet werden sollen, welche Ports für Ihre Anwendung geöffnet werden sollen und welche Daten-Volumes mit den Containern in der Aufgabe verwendet werden sollen. Welche spezifischen Parameter für Ihre Aufgabendefinition verfügbar sind, hängt von den Anforderungen Ihrer spezifischen Anwendung ab.

Ihr gesamter Anwendungs-Stack muss sich nicht in einer einzigen Aufgabendefinition befinden. In der Tat empfehlen wir, Ihre Anwendung über mehrere Aufgabendefinitionen zu überspannen. Das können Sie tun, indem Sie verwandte Container in eigene Aufgabendefinitionen kombinieren, die jeweils eine einzelne Komponente darstellen.

Aufgaben

Eine Aufgabe ist die Instance iierung einer Aufgabendefinition auf einer Container-Instance in einem Cluster. Nachdem Sie eine Aufgabendefinition für Ihre Anwendung in Amazon ECS erstellt haben, können Sie angeben, wie viele Aufgaben in Ihrem Cluster ausgeführt werden. Sie können eine eigenständige Aufgabe ausführen oder eine Aufgabe als Teil eines Services ausführen.

Dienstleistungen

Sie können einen Amazon-ECS-Service verwenden, um Ihre gewünschte Anzahl von Aufgaben gleichzeitig in einem Amazon-ECS-Cluster auszuführen und zu warten. Wenn eine Ihrer Aufgaben aus irgendeinem Grund fehlschlägt oder angehalten wird, launcht der Scheduler des Amazon-ECS-Service eine andere Instance entsprechend Ihrer Aufgabendefinition. Dies geschieht, um sie zu ersetzen und dadurch Ihre gewünschte Anzahl von Aufgaben im Service beizubehalten.

Betriebssystem- und CPU-Architektur

Die folgenden Betriebssysteme werden unterstützt:

  • Amazon Linux 2

  • Windows Server 2019 Voll

  • Windows Server 2019 Kern

  • Windows Server 2022 Voll

  • Windows Server 2022 Kern

Wenn Sie Windows-Container auf Fargate verwenden, lesen Sie Überlegungen zu Windows-Container auf AWS Fargate.

Für die Amazon-ECS-Aufgabendefinition stehen 2 Architekturen zur Verfügung, ARM und X86_64.

Wenn Sie Windows-Container auf Fargate ausführen, benötigen Sie eine X86_64-CPU-Architektur.

Wenn Sie Linux-Container auf Fargate ausführen, können Sie die X86_64-CPU-Architektur oder die ARM64-Architektur für Ihre ARM-basierten Anwendungen verwenden. Weitere Informationen finden Sie unter Arbeiten mit 64-Bit-ARM-Workloads auf Amazon ECS.

Regionen

Weitere Informationen über Regionen, die Linux-Container auf Fargate unterstützen, finden Sie unter Unterstützte Regionen für Linux-Container auf AWS Fargate.

Weitere Informationen zu den Regionen, die Windows-Container auf Fargate unterstützen, finden Sie unter Unterstützte Regionen für Windows-Container auf AWS Fargate.

Überlegungen zu Windows-Container auf AWS Fargate

Windows-Container auf AWS Fargate unterstützen die folgenden Betriebssysteme:

  • Windows Server 2019 Voll

  • Windows Server 2019 Kern

  • Windows Server 2022 Voll

  • Windows Server 2022 Kern

AWS kümmert sich um die Lizenzverwaltung des Betriebssystems, sodass Sie keine zusätzlichen Microsoft-Lizenzen benötigen.

Windows-Container auf AWS Fargate unterstützt den awslogs-Treiber. Weitere Informationen finden Sie unter Verwenden des awslogs-Protokolltreibers.

Ihre Aufgaben können entweder Linux-Container oder Windows-Container ausführen. Wenn Sie beide Containertypen ausführen müssen, müssen Sie separate Aufgaben erstellen.

Die folgenden Funktionen werden auf Windows-Containern auf Fargate nicht unterstützt:

  • Gruppenverwaltete Service-Konten (gMSA)

  • Amazon FSx

  • ENI Trunking

  • App-Mesh-Service und Proxy-Integration für Aufgaben

  • Firelens-Protokollrouter-Integration für Aufgaben

  • Konfigurierbarer flüchtiger Speicher

  • EFS-Volumes

  • Der Fargate-Spot-Kapazitätsanbieter

  • Image-Volumes

    Die Dockerfile-Option volume wird ignoriert. Nutzen Sie stattdessen eine Bind-Bindungsbereitstellung in Ihrer Aufgabendefinition. Weitere Informationen finden Sie unter Bind-Mounts.

Exemplarische Vorgehensweisen für erste Schritte

Die folgenden exemplarischen Vorgehensweisen helfen Ihnen bei der ersten Verwendung von Amazon ECS auf Fargate.

Weitere Informationen zu Amazon Elastic Container Service finden Sie unter Was ist Amazon ECS?.

Preise

Mit Amazon ECS auf AWS Fargate zahlen Sie für die vCPU und die Speicherressourcen, die Ihre Aufgaben verwenden. Weitere Informationen finden Sie unter Fargate – Preise.

Fargate bietet auch Savings Plans an, die erhebliche Einsparungen bei Ihrer AWS-Verwendung einbringen. Weitere Informationen finden Sie im Benutzerhandbuch zu Savings Plans.

Um Ihre Rechnung anzuzeigen, navigieren Sie zu Fakturierungs- und Kostenverwaltungs-Dashboard in der AWS Billing and Cost Management-Konsole. Ihre Abrechnung enthält Links zu Nutzungsberichten mit Details zu Ihrer Abrechnung. Weitere Informationen zur Abrechnung von AWS-Konten finden Sie unter AWS-Kontenfakturierung.

Wenden Sie sich bei Fragen zu AWS-Abrechnungen, -Konten und -Vorfällen an AWS Support.

Eine Übersicht über Trusted Advisor, einen Service, der Sie bei der Optimierung von Kosten, Sicherheit und Leistung Ihrer AWS-Umgebung unterstützt, finden Sie unter AWS Trusted Advisor.