Amazon-ECS-Dienstleistungen - Amazon Elastic Container Service

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.

Amazon-ECS-Dienstleistungen

Sie können einen Amazon-ECS-Service verwenden, um eine bestimmte Anzahl von Instances einer Aufgabendefinition gleichzeitig in einem Amazon-ECS-Cluster auszuführen und zu verwalten. Wenn eine Ihrer Aufgaben ausfällt oder anhält, startet der Amazon-ECS-Service-Scheduler eine andere Instance Ihrer Aufgabendefinition, um sie zu ersetzen. Dies trägt dazu bei, dass die von Ihnen gewünschte Anzahl von Aufgaben im Service erhalten bleibt.

Sie können Ihren Service optional auch hinter einem Load Balancer ausführen. Der Load Balancer verteilt den Datenverkehr über die mit dem Service verbundenen Aufgaben.

Wir empfehlen die Verwendung des Service-Schedulers für lang laufende zustandslose Services und Anwendungen. Der Service Scheduler stellt sicher, dass die von Ihnen angegebene Einplanungsstrategie einhalten wird, und plant Aufgaben neu ein, wenn eine Aufgabe fehlschlägt. Wenn beispielsweise die zugrunde liegende Infrastruktur ausfällt, plant der Service-Scheduler eine Aufgabe neu ein. Sie können Strategien zur Aufgabenplatzierung und Einschränkungen verwenden, um die Platzierung und Beendigung von Aufgaben durch den Scheduler anzupassen. Wenn eine Aufgabe in einem Service gestoppt wird, startet der Scheduler eine neue Aufgabe, die diese ersetzt. Dieser Vorgang wird so lange fortgesetzt, bis Ihr Service die gewünschte Anzahl von Aufgaben erreicht hat, basierend auf der Planungsstrategie, die der Service verwendet. Die Planungsstrategie des Services wird auch als Servicetyp bezeichnet.

Der Service-Scheduler ersetzt auch Aufgaben, die nach einem Fehlschlagen einer Container-Zustandsprüfung oder einer Load-Balancer-Zielgruppen-Zustandsprüfung als fehlerhaft eingestuft wurden. Dieser Ersatz hängt von den Parametern maximumPercent und desiredCount der Servicedefinition ab. Wenn eine Aufgabe als fehlerhaft markiert ist, startet der Service-Scheduler zunächst eine Ersatzaufgabe. Dann passiert Folgendes.

  • Wenn die Ersatzaufgabe den Integritätsstatus hatHEALTHY, stoppt der Service Scheduler die fehlerhafte Aufgabe

  • Wenn die Ersatzaufgabe den Zustand UNHEALTHY hat, stoppt der Scheduler entweder die fehlerhafte Ersatzaufgabe oder die vorhandene fehlerhafte Aufgabe, sodass die Gesamtanzahl der Aufgaben auf einen Wert gleich desiredCount eingestellt wird.

Wenn der Parameter maximumPercent den Scheduler daran hindert, zuerst eine Ersatzaufgabe zu starten, stoppt der Scheduler fehlerhafte Aufgaben einzeln nach dem Zufallsprinzip, um Kapazität freizugeben, und startet dann eine Ersatzaufgabe. Der Start- und Stoppvorgang wird fortgesetzt, bis alle fehlerhaften Aufgaben durch fehlerfreie Aufgaben ersetzt wurden. Sobald alle fehlerhaften Aufgaben ersetzt wurden und nur noch fehlerfreie Aufgaben ausgeführt werden, werden, wenn die Gesamtzahl der Aufgaben desiredCount übersteigt, die fehlerfreien Aufgaben nach dem Zufallsprinzip angehalten, bis die Gesamtzahl der Aufgaben gleich desiredCount ist. Weitere Informationen zu maximumPercent und desiredCount finden Sie unter Servicedefinitionsparamater.

Der Service-Scheduler enthält eine Logik, die die Häufigkeit des Neustarts von Aufgaben drosselt, wenn Aufgaben wiederholt nicht gestartet werden. Wenn eine Aufgabe gestoppt wird, ohne dass sie in einen RUNNING-Status eingetreten ist, beginnt der Service-Scheduler, die Startversuche zu verlangsamen, und sendet eine Service-Ereignismeldung aus. Dieses Verhalten verhindert, dass unnötige Ressourcen für fehlgeschlagene Aufgaben verwendet werden, bevor Sie das Problem beheben können. Nachdem der Service aktualisiert wurde, nimmt der Service-Scheduler sein normales Planungsverhalten wieder auf. Weitere Informationen erhalten Sie unter Drosselungslogik für Amazon ECS-Services und Ereignismeldungen des Amazon ECS-Service anzeigen.

Option für die Datenverarbeitung in der Infrastruktur

Es gibt zwei Rechenoptionen, die Ihre Aufgaben verteilen.

  • Eine capacity provider strategy (Strategie für Kapazitätsanbieter) veranlasst Amazon ECS, Ihre Aufgaben an einen oder mehrere Kapazitätsanbieter zu verteilen.

    Für die Strategie für Kapazitätsanbieter, wählt die Konsole standardmäßig eine Rechenoption aus. Im Folgenden wird die Reihenfolge beschrieben, in der die Konsole einen Standardwert auswählt:

    • Wenn der Cluster eine standardmäßige Kapazitätsanbieterstrategie definiert hat, ist diese ausgewählt.

    • Wenn für Ihren Cluster keine standardmäßige Kapazitätsanbieterstrategie definiert ist, Sie aber die Fargate-Kapazitätsanbieter zum Cluster hinzugefügt haben, wird eine benutzerdefinierte Kapazitätsanbieterstrategie ausgewählt, die den FARGATE Kapazitätsanbieter verwendet.

    • Wenn für Ihren Cluster keine Standardstrategie für Kapazitätsanbieter definiert ist, Sie dem Cluster jedoch einen oder mehrere Auto Scaling Scaling-Gruppenkapazitätsanbieter hinzugefügt haben, ist die Option Benutzerdefiniert (erweitert) verwenden ausgewählt und Sie müssen die Strategie manuell definieren.

    • Wenn in Ihrem Cluster keine Standardstrategie für Kapazitätsanbieter definiert ist und keine Kapazitätsanbieter zum Cluster hinzugefügt wurden, ist der Fargate Starttyp ausgewählt.

  • Ein Starttyp veranlasst Amazon ECS, unsere Aufgaben direkt auf Fargate oder auf den in Ihren Clustern registrierten EC2 Instances zu starten.

    Standardmäßig startet der Dienst in den Subnetzen in Ihrer Cluster-VPC.

Service Auto Scaling

Service Auto Scaling ist die Fähigkeit, die gewünschte Anzahl von Aufgaben in Ihrem Amazon ECS-Service automatisch zu erhöhen oder zu verringern. Amazon ECS nutzt den Application Auto Scaling-Service, um diese Funktionalität bereitzustellen.

Weitere Informationen finden Sie unter Automatisches Skalieren Sie Ihren Amazon ECS-Service.

Service-Load Balancing

Amazon ECS-Services, die auf gehostet werden, AWS Fargate unterstützen die Application Load Balancers, Network Load Balancers und Gateway Load Balancers. Anhand der folgenden Tabelle erfahren Sie, welche Art von Load Balancer Sie verwenden sollten.

Load Balancer Balancer-Typ Verwenden Sie in diesen Fällen

Application Load Balancer

Leiten Sie den Verkehr weiter HTTP/HTTPS (oder auf Layer 7).

Application Load Balancers bieten verschiedene Funktionen an, die sie besonders attraktiv für die Verwendung mit Amazon-ECS-Services machen:

  • Jeder Service kann den Datenverkehr von mehreren Load Balancern abwickeln und mehrere Ports mit Lastenausgleich verfügbar machen, indem er mehrere Zielgruppen festlegt.

  • Sie werden durch Aufgaben unterstützt, die sowohl auf Fargate als auch auf EC2 Instances gehostet werden.

  • Application Load Balancers ermöglichen es, dass Container die dynamische Host-Port-Zuweisung verwenden (so dass mehrere Aufgaben von demselben Service pro Container-Instance erlaubt sind).

  • Application Load Balancers unterstützen pfadbasierte Routing- und Prioritätsregeln (sodass mehrere Services denselben Listener-Port auf einem einzelnen Application Load Balancer verwenden können).

Network Load Balancer Leiten Sie TCP- oder UDP-Verkehr (oder Layer-4-Verkehr) weiter.
Gateway Load Balancer Leiten Sie TCP- oder UDP-Verkehr (oder Layer-4-Verkehr) weiter.

Verwenden Sie virtuelle Appliances wie Firewalls, Systeme zur Erkennung und Verhinderung von Eindringlingen und Deep-Packet-Inspektionssysteme.

Weitere Informationen finden Sie unter Verwenden Sie Load Balancing, um den Amazon ECS-Serviceverkehr zu verteilen.

Dienste miteinander verbinden

Wenn Sie eine Anwendung benötigen, um eine Verbindung zu anderen Anwendungen herzustellen, die als Amazon ECS-Services ausgeführt werden, bietet Amazon ECS die folgenden Möglichkeiten, dies ohne Load Balancer zu tun:

  • Service Connect — Ermöglicht die service-to-service Kommunikation mit automatischer Erkennung unter Verwendung von Kurznamen und Standardports.

  • Diensterkennung — Die Diensterkennung verwendet Route 53, um einen Namespace für Ihren Service zu erstellen, sodass dieser über DNS auffindbar ist.

  • Amazon VPC Lattice - VPC Lattice ist ein vollständig verwalteter Anwendungsnetzwerkservice, mit dem Sie Ihre Dienste über mehrere Konten hinweg verbinden, sichern und überwachen können. VPCs Damit sind Kosten verbunden.

Weitere Informationen finden Sie unter Amazon ECS-Services miteinander verbinden.