Übersicht über die Übung
Diese Übung demonstriert die Verwendung von Amazon Elastic Container Service zum Hosten einer einfachen Webanwendung mit mehreren Komponenten, die aus einer Website mit zwei unterstützenden API-Services besteht. Die Website zeigt ein Formular an, in dem Sie eine Geschichte mit Platzhaltern für Substantive, Verben und Adjektive verfassen. Wenn Sie auf die Schaltfläche Submit (Senden) klicken, wird die Wörter-API nach den Wörtern abgefragt, die erforderlich sind, um alle Platzhalter im Text der Geschichte auszufüllen. Sie können dann auf Save (Speichern) klicken – so wird Ihre Kreation über die Save-API dauerhaft in Amazon DynamoDB gespeichert. Die App heißt Storyizer.
Sie erstellen zuerst den Docker-Container für jede Komponente der Web-App auf einem Befehls-Host. Dann verschieben Sie die Container in das Amazon Elastic Container Repository (ECR), damit sie beim Aufbau des ECS-Clusters abgerufen werden können.
Zu diesem Zeitpunkt starten Sie eine CloudFormation-Vorlage, die den ECS-Cluster mit einem Elastic Container Service erstellt, der für jede der drei Komponenten Ihrer Webanwendung definiert ist. Jeder Service ist so konfiguriert, dass zwei laufende Aufgabe verwaltet werden (eine Aufgabe ist die Definition zum Ausführen eines bestimmten Docker-Containers). Dies führt zu einem hochverfügbaren Design, da ECS eine Service-Aufgabe automatisch durch eine neu gestartete Aufgabe ersetzt, wenn die ursprüngliche Aufgabe fehlerhaft wird. ECS koordiniert auch die dynamische Host-Port-Zuordnung mit dem Application Load Balancer (ALB) und jeder ECS-Aufgabe. Auf diese Weise können Sie mehr als einen Container einer App-Komponente auf einem einzelnen Host ohne Portkonflikte ausführen.
Behandelte Themen
Lernziele dieser Übung:
- Verstehen der zum Erstellen von Docker-Images erforderlichen Schritte
- Übermitteln von Container-Images in ein Amazon-ECR-Repository per Push
- Bereitstellen von Containern aus einem Repository als Services in einem Amazon-ECS-Cluster
Erforderliche technische Vorkenntnisse
Für diese Übung ist Folgendes erforderlich:
- Zugriff auf einen Notebook-Computer mit WLAN, auf dem Microsoft Windows, Mac OS X oder Linux (Ubuntu, SuSE oder Red Hat) ausgeführt wird
- Kein Zugriff auf die qwikLABS-Übungsumgebung mit einem iPad oder Tablet
- Für Microsoft-Windows-Benutzer: Administratorzugriff auf dem Computer
- Ein Internetbrowser wie Chrome, Firefox oder IE9 oder höher (frühere Versionen von Internet Explorer werden nicht unterstützt)
- Unter Microsoft Windows ein SSH-Client wie PuTTY