https://www.computerweekly.com/de/tipp/Wie-AWS-Fargate-das-Container-Management-entlastet
Zunehmend betreiben Entwicklungs- und IT-Ops-Teams in Unternehmen Container auf Pools von Cloud-VMs, sogenannten Clustern, anstatt auf einzelnen Compute-Instanzen wie in EC2. Dieser Ansatz bietet zwar einerseits mehr Flexibilität, schafft andererseits aber auch Mehrarbeit für Anwender. Sie müssen zwei Umgebungen konfigurieren und verwalten: Amazon EC2 und die Container-Infrastruktur.
Orchestrierungsdienste wie der Amazon EC2 Container Service (ECS) bieten Cluster-Management und Container-Steuerung als Managed-Service. Dadurch wird ein Teil dieses Overheads vermieden. Allerdings müssen die Benutzer die zugrunde liegenden Instanzen, die den Cluster bilden, noch konfigurieren und verwalten.
Um dies zu ändern, veröffentlichte Amazon AWS Fargate. Fargate ergänzt ECS und ECS for Kubernetes (EKS) und löst den zweiten Teil des Container-Bereitstellungs-Puzzles: das Instanz-Management.
Ähnlich wie Azure Container Instances verwandelt AWS Fargate einzelne Container in konsumierbare Cloud-Ressourcen. Bei Fargate muss ein Entwickler nur die Parameter für eine Container-Instanz angeben und AWS stellt sie auf seiner Hardware bereit.
Die grundlegenden Elemente einer Fargate-Bereitstellung sind Compute, Networking, Storage, Zugriffsrechte, Logging und Debugging-Konfiguration sowie das Runtime-Image – die alle in Task-Definitionen gekapselt sind.
Entwickler können diese unveränderlichen, versionierten Dokumente – nahezu identisch mit ECS-Task-Definitionen – in JSON- oder YAML-Syntax schreiben. Multiple Container werden durch einen Task-Lauf auf einem von ECS verwalteten Container-Cluster beschrieben, wobei Kubernetes Ende 2018 via EKS unterstützt werden soll.
Die Tasks umfassen folgende Elemente:
Diese verschachtelten Aufgaben- und Container-Einstellungen bieten alles, was Fargate benötigt, um mehrere Container auf einem Host bereitzustellen. Darüber hinaus können Entwickler mit ECS Fargate-Workloads auf einem virtuellen Cluster verwalten, für den Fall, dass mehrere Aufgaben gemeinsam bereitgestellt werden sollen.
AWS Fargate Version 1.1 enthält Erweiterungen des Dienstes, einschließlich der Unterstützung von Task-Metadaten-Endpoints, Container Health Checks und ECS Service Discovery. Metadaten-Endpoints ermöglichen die Erfassung von Fargate-Metriken durch Monitoring-Tools von Drittanbietern wie Datadog. Health Checks identifizieren fehlgeschlagene Tasks und generieren einen automatischen Neustart von fehlgeschlagenen oder aufgehangenen Tasks. ECS Service Discovery erleichtert schließlich die Verbindung zwischen containerisierten Diensten, die in verschiedenen Tasks laufen.
AWS Fargate kann ein Segen für Unternehmen sein, die Container-Implementierungen als Ärgernis betrachten. Schließlich macht der Dienst das Management von EC2-Instanzen überflüssig. Wenn IT-Teams Erfahrungen mit der Ausführung von containerisierten Anwendungen sammeln, können sie Fargate-Bereitstellungen auf ECS - und eventuell auch auf EKS - für das Cluster-Management ausdehnen. Sie haben dabei den Komfort, dass sie die Task-Konfigurationen wiederverwenden können und erhalten so mehr Ressourcenoptionen und mehr Kontrollmöglichkeiten.
Preise direkt zwischen Fargate und Google Kubernetes Engine (GKE) zu vergleichen, ist schwierig, da die Knotengrößen nicht direkt vergleichbar sind. Sie können jedoch für jede Dienstleistung eine grobe Schätzung der Kosten vornehmen.
Das Preismodell von Fargate basiert auf einer Kombination aus Ressourcennutzung, wie zum Beispiel vCPU und Speicherzuweisung, und Ausführungszeit in Schritten von einer Sekunde mit einem Minimum von einer Minute. AWS lässt Benutzer zahlen, sobald ein Container-Image aus einem Repository heruntergeladen wird und stoppt, wenn die Aufgabe beendet wird. Wenn Sie also eine Anwendung mit zehn Tasks haben, die jeweils 0,25 vCPU und ein GB Arbeitsspeicher verwenden, und wenn diese Anwendung eine Stunde pro Tag läuft, kostet das 7,61 US-Dollar pro Monat.
Wenn Sie bei GKE für jede der zehn oben genannten Aufgaben einen eigenen Knoten verwenden und die kleinste gemeinsame Instanz auswählen, die GKE bereitstellt – den f1-micro -– berechnet der Kostenrechner von Google, dass die Nutzung pro Stunde und Tag 2,31 US-Dollar pro Monat kosten würde; das sind etwa 30 Prozent der Kosten von Fargate. GKE erfordert jedoch gründliche Kenntnisse des Kubernetes-Managements – und verlangt außerdem einiges mehr an Setup als Fargate.
Folgen Sie SearchDataCenter.de auch auf Twitter, Google+, Xing und Facebook!
08 Nov. 2018