Was ist Amazon Elastic Container Service? - Amazon Elastic Container Service

Was ist Amazon Elastic Container Service?

Amazon Elastic Container Service (Amazon ECS) ist ein hoch skalierbarer, schneller Containerverwaltungs-Service. Sie können damit Container in einem Cluster ausführen, stoppen und verwalten. Mit Amazon ECS sind Ihre Container in einer Aufgabendefinition definiert, die Sie zum Ausführen einzelner Aufgaben oder Aufgaben innerhalb eines Services verwenden. In diesem Zusammenhang ist ein Service eine Konfiguration, mit der Sie eine bestimmte Anzahl von Aufgaben gleichzeitig in einem Cluster ausführen können. Sie können Ihre Aufgaben und Services auf einer Serverless-Infrastruktur ausführen, die von AWS Fargate verwaltet wird. Um Ihre Infrastruktur besser zu steuern, können Sie Ihre Aufgaben und Services auf einem Cluster von Amazon-EC2-Instances ausführen, die Sie verwalten.

Amazon ECS bietet die folgenden Funktionen:

  • Eine Serverless-Option mit AWS Fargate. Mit AWS Fargate müssen Sie keine Server verwalten, Kapazitätsplanung durchführen oder Container-Workloads aus Sicherheitsgründen isolieren. Fargate übernimmt die Infrastrukturverwaltungs-Aspekte Ihrer Workload für Sie. Sie können die Platzierung von Containern in Ihrem Cluster entsprechend Ihrem Ressourcenbedarf, Ihrer Isolationspolitik und Ihren Verfügbarkeitserfordernissen planen.

  • Integration in AWS Identity and Access Management (IAM). Sie können jedem Ihrer Container granulare Berechtigungen zuweisen. Dies ermöglicht eine hohe Isolation beim Erstellen Ihrer Anwendungen. Mit anderen Worten, Sie können Ihre Container mit den Sicherheits- und Compliance-Stufen starten, die Sie von AWS erwarten.

  • Von AWS verwaltete Container-Orchestrierung. Als vollständig verwalteter Service verfügt Amazon ECS über eine integrierte AWS-Konfiguration und bewährte Methoden für den Betrieb. Dies bedeutet auch, dass Sie keine Steuerebene, Knoten oder Add-Ons verwalten müssen. Er ist sowohl in Alexa Web Information Service als auch mit Tools von Drittanbietern wie Amazon-Elastic-Container-Registry und Docker integriert. Diese Integration erleichtert es Teams, sich auf die Erstellung der Anwendungen zu konzentrieren, nicht auf die Umgebung.

  • Fortlaufende Integration und fortlaufende Bereitstellung (CI/CD). Dies ist ein gängiger Prozess für Microservice-Architekturen, die auf Docker-Containern basieren. Sie können eine CI/CD-Pipeline erstellen, die folgende Aktionen ausführt:

    • Überwachung von Änderungen an einem Quellcode-Repository

    • Erstellen eines neuen Docker-Images basierend auf dieser Quelle

    • Übertragen des Images in ein Image-Repository wie Amazon ECR oder Docker Hub

    • Aktualisieren Ihrer Amazon-ECS-Services, um das neue Image in Ihrer Anwendung zu verwenden

  • Support für Service-Discovery. Dies ist ein wichtiger Bestandteil der meisten verteilten Systeme und serviceorientierten Architekturen. Mit Service-Discovery werden Ihre Microservice-Komponenten automatisch erkannt, da sie anhand einer bestimmten Infrastruktur erstellt und beendet werden.

  • Support für das Senden Ihrer Container-Instance-Protokollinformationen an CloudWatch Logs. Nachdem Sie diese Informationen an Amazon CloudWatch gesendet haben, können Sie die Protokolle Ihrer Container-Instances an einem praktischen Standort anzeigen. Dies verhindert, dass Ihre Container-Protokolle Speicherplatz auf Ihren Container-Instances belegen.

Das AWS-Containerservice-Team bietet eine öffentliche Roadmap auf GitHub. Die Roadmap enthält Informationen darüber, woran die Teams arbeiten, und ermöglicht es AWS-Kunden, direktes Feedback zu geben. Weitere Informationen finden Sie unter AWS-Container-Roadmap auf der GitHub-Website.

Starttypen

Es gibt zwei Modelle, mit denen Sie Ihre Container ausführen können:

  • Fargate-Launchtyp – Dies ist eine Serverless-Option mit nutzungsbasierter Zahlung. Sie können Container ausführen, ohne Ihre Infrastruktur verwalten zu müssen.

  • EC2-Launchtyp – Konfigurieren und Bereitstellen von EC2-Instances in Ihrem Cluster, um Ihre Container auszuführen.

Der Fargate-Launchtyp eignet sich für die folgenden Workloads:

  • Große Workloads, die für niedrigen Betriebsaufwand optimiert werden müssen

  • Kleine Workloads mit gelegentlichen Spitzenleistungen

  • Winzige Workloads

  • Batch-Workloads

Der EC2-Launchtyp eignet sich für die folgenden Workloads:

  • Workloads, die eine gleichbleibend hohe CPU-Kern- und Speicherauslastung erfordern

  • Große Workloads, die für den Preis optimiert werden müssen

  • Ihre Anwendungen müssen auf persistenten Speicher zugreifen

  • Sie müssen Ihre Infrastruktur direkt verwalten

Zugriff auf Amazon ECS

Sie können Ihre Amazon-ECS-Ressourcen über die folgenden Schnittstellen erstellen und verwalten:

  • AWS Management Console – Bietet eine Webschnittstelle für den Zugriff auf Ihre Amazon-ECS-Ressourcen.

  • AWS Command Line Interface (AWS CLI) – Stellt Befehle für eine breite Palette von AWS-Services bereit, inklusive Amazon ECS. Es wird auf Windows, Mac und Linux unterstützt. Weitere Informationen finden Sie unter AWS Command Line Interface.

  • AWS-SDKs – Bieten sprachspezifische APIs und übernehmen viele der Verbindungsdetails. Dazu gehören das Berechnen von Signaturen, das Behandeln von Wiederholungsversuchen und das Behandeln von Fehlern. Weitere Informationen finden Sie unter AWS-SDKs.

  • AWS Copilot – Bietet Entwicklern ein Open-Source-Tool, mit dem Sie produktionsfertige containerisierte Anwendungen auf Amazon ECS erstellen, veröffentlichen und betreiben können. Weitere Informationen finden Sie unter AWS Copilot auf der GitHub-Website.

  • Amazon-ECS-CLI – Bietet eine Befehlszeilenschnittstelle, mit der Sie Ihre Anwendungen auf Amazon ECS ausführen können und AWS Fargate unter Verwendung des Docker-Compose-Dateiformats. Sie können Ressourcen schnell bereitstellen, Images mithilfe von Amazon-Elastic-Container-Registry pushen und pullen und ausgeführte Anwendungen auf Amazon ECS oder Fargate überwachen. Sie können innerhalb der CLI auch Container testen, die lokal ausgeführt werden, zusammen mit Containern in der Cloud. Weitere Informationen finden Sie unter Amazon ECS CLI auf der GitHub-Website.

  • AWS CDK – Bietet ein Open-Source-Softwareentwicklungs-Framework, mit dem Sie Ihre Cloud-Anwendungsressourcen mithilfe vertrauter Programmiersprachen modellieren und bereitstellen können. AWS CDK stellt Ihre Ressourcen sicher und wiederholbar bereit durch AWS CloudFormation. Weitere Informationen finden Sie unter Erste Schritte mit Amazon ECS mit AWS CDK.

Preise

Die Amazon-ECS-Preise sind davon abhängig, ob Sie Infrastruktur von AWS Fargate oder Amazon EC2 verwenden, um Ihre containerisierten Workloads zu hosten. Bei Verwendung von Amazon ECS auf AWS Outposts folgt die Preisgestaltung demselben Modell, das verwendet wird, wenn Sie Amazon EC2 direkt verwenden. Weitere Informationen finden Sie unter Amazon ECS-Preise.

Amazon ECS und Fargate bieten außerdem Savings Plans an, die erhebliche Einsparungen auf der Grundlage Ihrer AWS-Verwendung bieten. Weitere Informationen finden Sie im Benutzerhandbuch zu Savings Plans.

Um Ihre Rechnung anzuzeigen, navigieren Sie zum Fakturierungs- und Kostenverwaltungs-Dashboard in der AWS Billing and Cost Management-Konsole. Ihre Abrechnung enthält Links zu Nutzungsberichten mit zusätzlichen 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.

Trusted Advisor ist ein Service, mit dem Sie den Preis, die Sicherheit und die Leistung Ihrer AWS-Umgebung optimieren können. Weitere Informationen zu Trusted Advisor finden Sie unter AWS Trusted Advisor.