

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 Express-Modus
<a name="express-service-overview"></a>

Ein Amazon ECS Express Mode-Service reduziert die Komplexität der Bereitstellung containerisierter Anwendungen, indem er sinnvolle Standardeinstellungen bereitstellt und die Konfiguration der unterstützenden Dienste automatisiert. AWS Anstatt die Konfigurationsparameter für mehrere Dienste zu verwalten, erfordert ein Express-Modus-Service zunächst nur drei Dinge:
+ Ein Container-Image
+ Eine Rolle bei der Ausführung von Aufgaben
+ Eine Infrastrukturrolle

Amazon ECS Express Mode orchestriert und konfiguriert die gesamte erforderliche Infrastruktur: einen Fargate-basierten ECS-Service mit einer eindeutigen zugänglichen URL, Load Balancer mit SSL/TLS, Auto-Scaling-Richtlinien, Überwachungs- und Netzwerkkomponenten.

Verwenden Sie Amazon ECS Express Mode Services in den folgenden Szenarien:
+ Webanwendungen und APIs — Stateless-containerisierte Anwendungen, die HTTP-Anfragen bedienen
+ Schnelles Prototyping — Schnelle Bereitstellung und Test von Anwendungen ohne Mehraufwand bei der Einrichtung der Infrastruktur
+ Produktivität der Entwickler — Ermöglichen Sie es Anwendungsteams, Anwendungen unabhängig und ohne umfassende AWS Kenntnisse zu implementieren
+ Effizienz des Plattformteams — Reduzieren Sie den Wartungsaufwand, indem Sie Self-Service-Bereitstellungsfunktionen bereitstellen

Die Amazon ECS Express Mode Services unterstützen entweder öffentliche oder private HTTPS-Anwendungen und skalieren automatisch je nach Auslastung oder Traffic.

## Vorteile der Amazon ECS Express Mode Services
<a name="express-service-benefits"></a>

Die Amazon ECS Express Mode-Services bieten mehrere wichtige Vorteile für die Bereitstellung und Verwaltung von containerisierten Anwendungen auf. AWS
+ Vereinfachte Bereitstellung — Stellen Sie containerisierte Anwendungen mit produktionsbereiten Standardeinstellungen für mehrere Services bereit. AWS 
+ Keine Kompromisse bei den Funktionen — Alle zugrunde liegenden AWS Ressourcen bleiben für die direkte Verwaltung zugänglich, wenn Sie eine detaillierte Steuerung oder erweiterte Funktionen benötigen.
+ Kostenoptimierung — Nutzt zur Kostensenkung die gemeinsame Nutzung von Application Load Balancers auf mehrere Express-Modus-Dienste und verwendet dabei dieselbe Netzwerkkonfiguration.
+ Transparente Infrastruktur — Alle Ressourcen werden in Ihrem AWS Konto erstellt und bieten volle Transparenz und Zugriff über die AWS Konsole und APIs.

## Preisgestaltung
<a name="express-service-pricing"></a>

Für die Nutzung eines Amazon ECS Express Mode-Service fallen keine zusätzlichen Gebühren an. Sie zahlen nur für die zugrunde liegenden AWS Ressourcen, die für die Ausführung Ihrer Anwendung erstellt wurden, einschließlich:
+ Fargate-Rechenressourcen
+ Application Load Balancer
+ CloudWatch Logs und Metriken
+ Gebühren für die Datenübertragung

## Verfügbarkeit
<a name="express-service-availability"></a>

Der Amazon ECS Express-Modus ist in allen AWS Regionen verfügbar, in denen Amazon ECS und Fargate unterstützt werden. Sie können Express-Modus-Services mit einer der folgenden Methoden erstellen und verwalten:
+ Die Amazon ECS-Konsole
+ AWS AWS CLI
+ AWS SDKs
+ CloudFormation
+ Terraform
+ AWS Labs MCP Server für Amazon ECS

# Einen Amazon ECS Express Mode-Service erstellen
<a name="express-service-create-full"></a>

Ein Amazon ECS Express Mode-Service reduziert die Komplexität der Bereitstellung containerisierter Anwendungen, indem er sinnvolle Standardeinstellungen bereitstellt und die Konfiguration der unterstützenden Dienste automatisiert. AWS Anstatt die Konfigurationsparameter für mehrere Services zu verwalten, benötigt ein Express-Modus-Service nur ein Container-Image, eine Aufgabenausführungsrolle und eine Infrastrukturrolle, um loszulegen.

Nach Abschluss Ihrer Bereitstellung erhalten Sie eine eindeutige URL für Ihre Anwendung. Sie finden den Service, den Sie gerade bereitgestellt haben, in *Clustern*. Wenn Sie keinen Cluster angegeben haben, befindet er sich im `Default` Cluster.

## Voraussetzungen
<a name="express-service-create-full-prerequisites"></a>

Bevor Sie einen Expressmodus-Dienst erstellen, stellen Sie sicher, dass Sie über eine der folgenden Voraussetzungen verfügen:
+ Ein in Amazon ECR gespeichertes Container-Image.
+ Oder ein Container-Image, das in einer privaten Registrierung gespeichert ist. Um eine private Registrierung zu verwenden, konfigurieren Sie ein Secrets Manager Manager-Geheimnis. Weitere Informationen finden Sie im *AWS Secrets Manager Benutzerhandbuch* unter [Create an AWS Secrets Manager Secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html).

**Anmerkung**  
IAM-Rollen sind ebenfalls erforderlich, werden jedoch in den [Konsolen](express-service-first-run.html) - und [CLI-Handbüchern](express-service-getting-started.html) separat behandelt. Die Amazon ECS-Konsole verfügt über automatisierte Abläufe für die Rollenerstellung.

## Anleitungen
<a name="express-service-create-options"></a>
+ Eine vereinfachte Bedienung der Konsole bei der ersten Ausführung finden Sie unter[Erstellen Sie Ihren ersten Amazon ECS Express Mode-Service in der Konsole](express-service-first-run.md).
+ Informationen zum Erstellen eines Expressmodus-Dienstes mit dem finden Sie AWS CLI unter[Erstellen Sie Ihren ersten Express-Modus-Dienst mit dem AWS CLI](express-service-getting-started.md).
+ Weitere Informationen darüber, was der Expressmodus erstellt und wie er funktioniert, finden Sie unter[Von Amazon ECS Express Mode Services erstellte Ressourcen](express-service-work.md).

## Anpassen
<a name="express-service-create-custom"></a>

 Bei der Erstellung eines Expressmodus-Service wählt Amazon ECS Standardwerte für Ihr Amazon ECS und andere AWS Ressourcen aus. Passen Sie die Anwendung bei Bedarf mithilfe der optionalen Parameter an. Nutzen Sie einen Expressmodus-Service und passen Sie Folgendes an:
+ Service-Name
+ Amazon ECS-Cluster
+ Container-Einstellungen — Port und Pfad zur Integritätsprüfung
+ Umgebungsvariablen und Secrets
+ Benutzerdefinierte Befehle
+ Aufgabenrolle — Diese Rolle ermöglicht es Ihrem Anwendungscode (auf dem Container), andere AWS Dienste zu verwenden.

  Sie benötigen diese Rolle, wenn Ihre Anwendung auf andere AWS Dienste wie Amazon S3 zugreift.
+ Datenverarbeitungsressourcen – CPU- und Speicherzuweisung
+ Netzwerkkonfiguration — Subnetze und Dienstsicherheitsgruppe
+ Richtlinien für Application Auto Scaling – Metriken, Zielwerte und Aufgabenlimits
+ CloudWatch Protokolliert die Konfiguration
+ Ressourcen-Tags

# Erstellen Sie Ihren ersten Amazon ECS Express Mode-Service in der Konsole
<a name="express-service-first-run"></a>

Die Konsolenoberfläche für den Expressmodus-Service bietet eine optimierte Möglichkeit, Ihre containerisierte Anwendung mit minimalem Konfigurationsaufwand bereitzustellen. Weitere Informationen zu den Voraussetzungen finden Sie unter. [Amazon ECS Express-Modus](express-service-overview.md) Weitere Informationen darüber, was der Expressmodus erzeugt und wie er funktioniert, finden Sie unter[Von Amazon ECS Express Mode Services erstellte Ressourcen](express-service-work.md).

## Verfahren
<a name="express-service-first-run-procedure"></a>

1. Öffnen Sie die Konsole auf [https://console.aws.amazon.com/ecs/Version](https://console.aws.amazon.com/ecs/v2) 2.

1. Wählen Sie im Navigationsbereich den **Expressmodus** aus.

1. **Gehen Sie unter Lass uns deine App einrichten** wie folgt vor:

   1. Geben Sie das Bild an, das für Ihre Anwendung verwendet werden soll. Geben Sie **unter Bild-URI** den URI für Ihr Bild ein. Um Ihre Amazon ECR-Images zu durchsuchen, wählen Sie **Browse ECR images** und gehen Sie dann wie folgt vor:

      1. Wählen Sie für **Privates Repository** das private Amazon ECR-Repository aus.

      1. Wählen Sie für **Bild** Ihr Bild aus.

      1. Wählen Sie aus, wie das Bild identifiziert werden soll. **Wählen Sie für Bild auswählen von** eine der folgenden Optionen aus:
         + AWS empfiehlt, dass Sie **Image Digest** wählen.
         + Um das Tag zu verwenden, wählen Sie **Image-Tag** und dann das Tag aus.

   1. Wenn Sie eine private Registrierung verwenden, wählen Sie **Private Registrierung** aus. Geben Sie dann für **Secrets Manager ARN oder Name** den Secrets Manager ARN ein, den Sie in den Voraussetzungen erstellt haben.

   1. Wählen Sie für die **Rolle „Aufgabenausführung**“ und die **Rolle „Infrastruktur**“ die Rollen aus. Wenn Sie diese Rollen noch nie zuvor in Amazon ECS erstellt haben, sehen Sie in der Drop-down-Liste die Option **Neue Rolle erstellen**. Wenn Sie diese Option auswählen, wird die Rolle automatisch für Sie erstellt, sobald Sie auf **Erstellen** klicken. Für die **Rolle „Aufgabenausführung**“ wird in den Berechtigungsdetails der Link für zusätzliche Informationen zu [Amazon ECSTask ExecutionRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonECSTaskExecutionRolePolicy.html) im AWS Managed Policy Reference Guide angezeigt. Für die **Rolle „Infrastruktur**“ wird in den Berechtigungsdetails der Link für zusätzliche Informationen zu den von [Amazon ECSInfrastructure RoleforExpressGatewayServices](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonECSInfrastructureRoleforExpressGatewayServices.html) verwalteten Richtlinien im Referenzhandbuch für AWS verwaltete Richtlinien angezeigt. 

      Wenn Sie diese Rollen lieber anpassen möchten, gelangen Sie über die Schaltfläche **Neue Rolle erstellen** zur IAM-Konsole, wo Sie die Rolle erstellen und die der Rolle zugewiesenen Berechtigungen anzeigen und bearbeiten können. Wenn Sie zur Amazon ECS Express-Modus-Konsole zurückkehren, aktualisieren Sie sie, um die von Ihnen erstellte Rolle anzuzeigen.
**Anmerkung**  
Wenn Sie zum ersten Mal einen Service in der Amazon ECS-Konsole erstellen, wird einigen Benutzern möglicherweise eine Meldung angezeigt. `Invalid Parameter Exception: Unable to assume the service linked role. ` Wenn dies der Fall ist, warten Sie einige Sekunden und versuchen Sie es erneut.

1. Wählen Sie **Erstellen** aus. Sie haben gerade Ihren ersten Amazon ECS Express Mode-Service erstellt\$1

## Nächste Schritte
<a name="express-service-first-run-next-steps"></a>

Nachdem Sie Ihren ersten Express-Modus-Service erstellt haben:
+ Greifen Sie nach Abschluss der Bereitstellung über die angegebene Anwendungs-URL auf Ihre Anwendung zu.
+ Überwachen Sie den Fortschritt der Bereitstellung auf der Registerkarte Ressourcen der Konsole. Wenn die Bereitstellung abgeschlossen ist, ist Ihr Dienst bereit, Datenverkehr zu empfangen. Weitere Informationen finden Sie unter [Details eines Amazon ECS Express Mode-Service anzeigen](express-service-view-service.md).
+ Um zurück zu Ihrem Service zu navigieren, wählen Sie einen der **Navigationscluster** aus und wählen Sie dann den `default` Cluster aus, falls Sie bei der Erstellung keinen angegeben haben. Amazon ECS organisiert Services in logischen Gruppierungen, die als Cluster bezeichnet werden. Dies ist eine einfache Möglichkeit, Anwendungen in Ihrem Konto zu organisieren.
+ Falls bei der Bereitstellung Probleme auftreten, finden Sie weitere Informationen unter[Fehlerbehebung bei Amazon ECS Express-Modus-Services](express-service-troubleshooting.md).

## Anpassen
<a name="express-service-first-run-customize"></a>

Optional können Sie auch die Konfiguration Ihres Expressmodus-Dienstes anpassen. Öffnen Sie den Abschnitt **Zusätzliche Konfigurationen — *optional***.

1. Wählen Sie einen **Cluster** aus der Drop-down-Liste aus, wenn es einen bestimmten Amazon ECS-Cluster gibt, in dem Sie Ihren Service bereitstellen möchten. Wenn kein Cluster angegeben ist, verwendet der Expressmodus den `Default` Cluster. Wenn Sie die Expressmodus-Konsole verlassen, um einen Cluster zu erstellen, verwenden Sie die Schaltfläche „Aktualisieren“, um das Dropdownmenü zu füllen.

1. Geben Sie einen **Namen** für den Dienst ein. Wenn kein Name angegeben ist, generiert der Expressmodus einen aus dem Namen des Container-Images. Dieser Servicename wird für mehrere Ressourcen verwendet, einschließlich der Anwendungs-URL, des Amazon ECS-Service, der Amazon ECS-Aufgabendefinition, des Zertifikats, des Skalierungsziels und der Skalierungsrichtlinie.

1. Geben Sie optional Details zu Ihrem **Container** an:

   1. Geben Sie als **Container-Port** den Port ein, auf dem Ihre Anwendung lauscht (Standard ist 80).

   1. Geben **Sie unter Pfad zur Integritätsprüfung** den Pfad für Integritätsprüfungen ein (z. B.`"/health"`). Der Standardwert ist `"/".`

   1. Fügen Sie unter **Umgebungsvariablen** Schlüssel-Wert-Paare für Umgebungsvariablen hinzu, die Ihre Anwendung benötigt. Geben Sie für **Schlüssel** den Namen der Umgebungsvariablen ein. Wählen Sie als **Werttyp** die Option **Umgebungsvariable** oder **Geheim** aus. Geben Sie für **Wert oder Wert von** den Wert oder die Referenz ein. Wählen **Sie Umgebungsvariable** hinzufügen, um nach Bedarf weitere Variablen hinzuzufügen. Es sind keine Standardwerte angegeben.

   1. Geben Sie für **Command** optional einen benutzerdefinierten Befehl ein, um die `CMD` Docker-Anweisung zu überschreiben. Es ist kein Standard angegeben.

   1. Wählen Sie **unter Aufgabenrolle** eine IAM-Rolle aus, die Ihrer Anwendung Berechtigungen gewährt. Es ist kein Standard angegeben.

1. Geben Sie optional Details zu Ihrer **Rechenleistung** und zur **automatischen Skalierung** an:

   1. Wählen Sie für **CPU** die vCPU-Zuweisung für Ihre Aufgaben aus (die Standardeinstellung ist 1 vCPU).

   1. Wählen Sie **unter Arbeitsspeicher** die Speicherzuweisung für Ihre Aufgaben aus (die Standardeinstellung ist 2 GB).

   1. Wählen Sie für die **ECS-Servicemetrik** die Metrik aus, nach der skaliert werden soll (die Standardeinstellung ist **Durchschnittliche CPU-Auslastung**).

   1. Wählen Sie als **Zielwert** den Zielprozentsatz für die Skalierung aus (der Standardwert ist **60.**)

   1. Legen Sie für **Minimale Anzahl von Aufgaben** und **Maximale Anzahl von Aufgaben** die Skalierungsgrenzen fest. (Die Standardwerte sind **1** und **20**)

1. Markieren Sie das Kästchen zur **Anpassung der Netzwerkkonfigurationen**. Wenn Sie diese Konfigurationen nicht anpassen, verwendet der Expressmodus die Standard-VPC.

   1. Wählen Sie eine **VPC** aus, um schnell zu den **Subnetzen** zu navigieren, in denen Ihre Dienste ausgeführt werden. Verlassen Sie optional die Amazon ECS-Konsole, um eine neue VPC zu erstellen, und kehren Sie zur Aktualisierung zurück und suchen Sie diese VPC im Drop-down-Menü.

   1. Wählen oder erstellen Sie für **Sicherheitsgruppen** Sicherheitsgruppen, um zusätzlichen eingehenden Netzwerkzugriff auf Ihren Service zu ermöglichen.

1. Unter **Protokolle**:

   1. Geben Sie für ** CloudWatch Amazon-Protokollgruppe** den bevorzugten Protokollgruppennamen für Ihre Anwendungsprotokolle ein. Die Standard-Protokollgruppe wird nach Ihren Cluster- und Servicenamen benannt.

   1. Geben Sie für **Amazon CloudWatch Log Stream Prefix** ein bevorzugtes Präfix für Log-Streams ein. Das Standard-Stream-Präfix ist `ecs/Main/.`

1. Fügen Sie unter **Tags** Schlüssel-Wert-Paare hinzu, um Ihre Ressourcen zu taggen. Geben Sie für **Key (Schlüssel)** den Tag-Schlüssel ein. Geben Sie für **Value (Wert)** den Tag-Wert ein. Wählen Sie **Neues Element hinzufügen**, um nach Bedarf weitere Tags hinzuzufügen. Tags können nur beim Erstellen hinzugefügt werden.

# Erstellen Sie Ihren ersten Express-Modus-Dienst mit dem AWS CLI
<a name="express-service-getting-started"></a>

Dieses Tutorial zeigt Ihnen, wie Sie eine Expressmodus-Dienstanwendung mit dem erstellen. AWS AWS CLI Sie stellen eine einfache Webanwendung bereit, die die Kernfunktionen des Express Mode-Dienstes demonstriert.

## Voraussetzungen
<a name="express-service-prerequisites"></a>

Stellen Sie vor Beginn sicher, dass Sie über Folgendes verfügen:
+ Ein AWS Konto mit den entsprechenden Berechtigungen
+ Das AWS AWS CLI installierte und konfigurierte
+ Ein Container-Image, das in Amazon ECR oder einer privaten Registrierung gespeichert ist

## Schritt 1: IAM-Rollen erstellen
<a name="express-service-create-execution-role"></a>

Für einen Expressmodus-Dienst sind zwei IAM-Rollen erforderlich. Die Task Execution Role ermöglicht es Amazon ECS, in Ihrem Namen Container-Images abzurufen und Protokolle zu schreiben. Erstellen Sie eine Rolle zur Aufgabenausführung und eine Infrastrukturrolle mit den folgenden Richtlinien:

```
#Create the roles with ECS trust policies
aws iam create-role --role-name ecsTaskExecutionRole \
    --assume-role-policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": "ecs-tasks.amazonaws.com"
                },
                "Action": "sts:AssumeRole",
            }
        ]
    }'

aws iam create-role --role-name ecsInfrastructureRoleForExpressServices \ 
    --assume-role-policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
            {
                "Sid": "AllowAccessInfrastructureForECSExpressServices",
                "Effect": "Allow",
                "Principal": {
                    "Service": "ecs.amazonaws.com"
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }'
```

```
#Attach the AWS managed policies
aws iam attach-role-policy --role-name ecsTaskExecutionRole \
    --policy-arn arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy
aws iam attach-role-policy --role-name ecsInfrastructureRoleForExpressServices \
    --policy-arn arn:aws:iam::aws:policy/service-role/AmazonECSInfrastructureRoleforExpressGatewayServices
```

Weitere Informationen finden Sie unter [IAM-Rolle für die Amazon-ECS-Aufgabenausführung](task_execution_IAM_role.md).

## Schritt 2: Erstellen Sie Ihre erste Express-Modus-Dienstanwendung
<a name="express-service-create-basic"></a>

Erstellen Sie eine Expressmodus-Dienstanwendung mit den mindestens erforderlichen Parametern:

```
aws ecs create-express-gateway-service \
    --primary-container "image"="public.ecr.aws/nginx/nginx:latest" \
    --execution-role-arn arn:aws:iam::123456789012:role/ecsTaskExecutionRole \
    --infrastructure-role-arn arn:aws:iam::123456789012:role/ecsInfrastructureRoleForExpressServices \
    --monitor-resources
```

Dieser Befehl erstellt eine Expressmodus-Dienstanwendung mit:
+ Ein eindeutiger Dienstname, der aus dem Imagenamen generiert wird
+ 1 vCPU und 2 GB Arbeitsspeicher
+ Port 80 für HTTPS-Verkehr
+ Automatische Skalierung basierend auf der CPU-Auslastung
+ Ein mit dem Internet verbundener Application Load Balancer in der Standard-VPC und öffentlichen Subnetzen
+ Eine für diesen Dienst eindeutige URL im folgenden Format `servicename.ecs.region.on.aws`

Der Befehl überwacht kontinuierlich Ressourcen, während sie bereitgestellt werden, und gibt den Status zurück. Sobald die Bereitstellung des Dienstes abgeschlossen ist, ist die Anwendungs-URL bereit, Datenverkehr zu empfangen. Wenn Sie die Überwachung unterbrechen, werden die Informationen über den erstellten Dienst zurückgegeben, einschließlich des Dienst-ARN und der URL:

```
{
    "service": {
        "cluster": "arn:aws:ecs:region:123456789012:cluster/default",
        "serviceName": "nginx-1234",
        "serviceArn": "arn:aws:ecs:region:123456789012:service/default/nginx-1234",
        "infrastructureRoleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRoleForExpressServices",
        "status": {
            "statusCode": "ACTIVE"
        },
        "createdAt": "UNIXTIMESTAMP"
    }
}
```

## Schritt 3: Erstellen Sie eine Expressmodus-Dienstanwendung mit benutzerdefinierten Einstellungen
<a name="express-service-create-custom"></a>

Sie können Ihre Expressmodus-Dienstanwendung anpassen, indem Sie zusätzliche Parameter angeben:

```
aws ecs create-express-gateway-service \
    --execution-role-arn arn:aws:iam::123456789012:role/ecsTaskExecutionRole \
    --infrastructure-role-arn arn:aws:iam::123456789012:role/ecsInfrastructureRoleForExpressServices \
    --primary-container '{"image":"123456789012.dkr.ecr.region.amazonaws.com/my-app:latest","containerPort":8080,"environment":[{"name":"ENV","value":"production"},{"name":"DEBUG","value":"false"}]}' \
    --service-name "my-web-app" \
    --cpu 2 \
    --memory 4 \
    --health-check-path "/health" \
    --scaling-target '{"minTaskCount":3,"maxTaskCount":100}' \
    --monitor-resources
```

Dadurch wird eine Anwendung erstellt mit:
+ Ein benutzerdefinierter Name "my-web-app“
+ 2 vCPU und 4 GB Arbeitsspeicher
+ Port 8080 für Anwendungsdatenverkehr
+ Benutzerdefinierter Endpunkt für die Gesundheitsprüfung
+ Umgebungsvariablen
+ Mindestens 3 Aufgaben, maximal 100 Aufgaben für Auto Scaling

## Schritt 4: Überwachen Sie Ihre Bereitstellung
<a name="express-service-monitor-deployment"></a>

Die `--monitor-resources` Markierung funktioniert bei jedem Create-, Update- oder Delete-Aufruf an Ihre Express-Modus-Dienste. Darüber hinaus können Sie die Ressourcen in einem Dienst unabhängig von einer mutierenden Aktion jederzeit überwachen. Die Bereitstellungszeit kann je nach den Ressourcen, die bereitgestellt werden müssen, variieren. Sobald sich der Status auf ändert`ACTIVE`, ist Ihre Anwendung bereit, Datenverkehr zu empfangen.

```
aws ecs monitor-express-gateway-service --service-arn arn:aws:ecs:region:123456789012:service/app-23d97h88
```

Sie können auch die aktuelle Konfiguration und den Status Ihrer Express Mode-Dienstanwendung abrufen:

```
aws ecs describe-express-gateway-service --service-arn arn:aws:ecs:region:123456789012:service/app-23d97h88
```

## Schritt 5: Greifen Sie auf Ihre Anwendung zu
<a name="express-service-access-application"></a>

Greifen Sie über die angegebene URL auf die Expressmodus-Dienstanwendung zu, wenn sie aktiv wird. Das URL-Format ist:

```
https://<service-name>.ecs.<region>.on.aws/
```

Beispiel:

```
https://app-23d97h88.ecs.us-west-2.on.aws/
```

Ihre Anwendung läuft jetzt mit:
+ Automatische SSL/TLS Kündigung
+ Lastenausgleich über mehrere Availability Zones
+ Automatische Skalierung basierend auf der CPU-Auslastung
+ CloudWatch Protokollierung und Überwachung
+ 5XX-Rollback-Alarme und Canary-Bereitstellungen für future Updates 

# Von Amazon ECS Express Mode Services erstellte Ressourcen
<a name="express-service-work"></a>

Ein Expressmodus-Dienst reduziert die Komplexität der Bereitstellung containerisierter Anwendungen, indem er sinnvolle Standardeinstellungen bereitstellt und die Konfiguration der unterstützenden Dienste automatisiert. AWS Anstatt Hunderte von Konfigurationsparametern über mehrere Dienste hinweg zu verwalten, benötigt ein Express-Modus-Dienst nur ein Container-Image, eine Aufgabenausführungsrolle und eine Infrastrukturrolle, um loszulegen.

Express-Modus-Services bieten vereinfachte Verfahren für die Bereitstellung und Konfiguration eines Amazon ECS-Service, der die bevorzugte Infrastruktur für die Ausführung einer Produktions-Webanwendung bündelt. Express-Modus-Services integrieren automatisch bewährte Verfahren für Betrieb und Konfiguration. Die folgenden Ressourcen werden erstellt:
+ Der ECS-Standardcluster (falls er nicht bereits existiert) mit Fargate-Kapazitätsanbietern
+ Eine Aufgabendefinition mit Container-, Protokollierungs- und Netzwerkkonfigurationen
+ Ein Service mit kanarischer Bereitstellung und auto Skalierung
+ Application Load Balancer mit HTTPS-Listener, Listener-Regeln und Zielgruppen
+ Sicherheitsgruppen mit minimalem erforderlichem Zugriff
+ Service Linked Roles für auto-scaling und Lastenausgleich
+ Skalierbares Ziel von Application Auto Scaling und Skalierungsrichtlinie für die Zielverfolgung.

  Durch die Skalierungsrichtlinie werden so viele Service-Aufgaben wie erforderlich hinzugefügt oder entfernt, damit die Metrik auf oder nahe an dem Zielwert gehalten wird. Abgesehen davon, dass eine Skalierungsrichtlinie für die Ziel-Nachverfolgung die Metrik nahe an dem Zielwert hält, passt sie sich auch an die Schwankungen in der Metrik aufgrund eines schwankenden Lastmusters an und verringert schnelle Schwankungen der Anzahl der Aufgaben, die in Ihrem Service ausgeführt werden.
+ Für den Dienst spezifische Protokollgruppe
+ Metrischer Alarm zur Erkennung fehlerhafter Bereitstellungen
+ ACM-Zertifikat

Verwenden Sie die Standardeinstellungen, um mit den Expressmodus-Diensten zu beginnen, oder konfigurieren Sie Ihre Anwendung mit einem minimalen Satz von Parametern. 

## Cluster-Standardeinstellungen
<a name="express-service-cluster-defaults"></a>

Die folgenden Standardwerte können im Expressmodus für den Cluster konfiguriert werden:
+ ClusterName: Verwendet den Cluster. `default`

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder indem Sie Folgendes angeben. `create-express-gateway-service --cluster`

Die folgenden Standardwerte werden im Expressmodus festgelegt, können jedoch direkt im Cluster aktualisiert werden.
+ CapacityProviders: ["FARGATE"] — Verwendet Fargate

## Standardeinstellungen für Aufgabendefinitionen
<a name="express-service-task-defaults"></a>

Die folgenden Standardwerte können im Expressmodus für die Aufgabendefinition konfiguriert werden:
+ cpu: 1024 - 1 vCPU-Einheit, die der Aufgabe zugewiesen ist

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder sie ausführen`create-express-gateway-service --cpu`.
+ Arbeitsspeicher: 2048 — 2 GB Arbeitsspeicher, der der Aufgabe zugewiesen wurde

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder indem Sie Folgendes ausführen`create-express-gateway-service --memory`.

Die folgenden Standardwerte werden im Expressmodus festgelegt, können jedoch direkt in der Aufgabendefinition aktualisiert werden.
+ NetworkMode: „awsvpc“ — Verwendet den Netzwerkmodus `awsvpc`
+ operatingSystemFamily: „LINUX“ — Läuft auf einem Linux-Betriebssystem
+ CPUArchitecture: „X86\$164" — Verwendet die x86\$164-Prozessorarchitektur
+ Erfordert Kompatibilitäten: ["FARGATE"] — kompatibel mit dem Fargate-Starttyp
+ platformVersion: „LATEST“ — Verwendet die neueste Fargate-Plattformversion

## Standardeinstellungen für die Containerdefinition
<a name="express-service-container-defaults"></a>

Die folgenden Standardwerte können im Expressmodus für den Container konfiguriert werden:
+ port: 80 — Standardport für Containerverkehr

Die folgenden Standardwerte werden im Expressmodus festgelegt, können jedoch direkt in der Aufgabendefinition — Container-Definition aktualisiert werden:
+ essential: true — Der Container ist als wichtig für die Integrität der Aufgabe gekennzeichnet
+ protocol: „tcp“ — Standardprotokoll für die Load Balancer-Kommunikation
+ name: „Main“ — Standardname für den primären Container

  Wenn Sie den Namen des Standardcontainers ändern, kann sich dies auf die Fähigkeit von Express Mode auswirken, nachfolgende Aktualisierungen an Ihrem Dienst vorzunehmen. Dies wird nicht empfohlen, wenn Sie die Expressmodus-Konsole weiterhin verwenden möchten oder APIs
+ VersionConsistency: aktiviert — Löst Image-Tags in Digest IDs auf, um konsistente Bereitstellungen zu gewährleisten
+ initProcessEnabled: true — Aktiviert die Unterstützung von Docker-Init-Prozessen.
+ stopTimeout: 30 Sekunden — Zeit zwischen SIGTERM- und SIGKILL-Signalen.

## Standardeinstellungen für die Protokollierung
<a name="express-service-logging-defaults"></a>

Die folgenden Standardwerte können im Expressmodus für die CloudWatch Protokolle konfiguriert werden:
+ awslogs-group: „/aws/ecs/<cluster>/<name>-\$1\$1\$1\$1“ — Name der Protokollgruppe, abgeleitet vom Cluster- und Dienstnamen

  **Sie können diese Option anpassen, indem Sie die Option Zusätzliche Konfigurationen in der Konsole verwenden oder indem Sie Folgendes ausführen.** `create-express-gateway-service --primary-container “awsLogsConfiguration”=[{“logGroup”=“/my/logGroup/”}]`
+ awslogs-stream-prefix: „ecs“ — Präfix für Log-Stream-Namen

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder indem Sie sie ausführen`create-express-gateway-service --primary-container “awsLogsConfiguration”=[{“logStreamPrefix”=“myprefix”}]`.

Die folgenden Standardwerte werden im Expressmodus festgelegt, können jedoch direkt in der Konfiguration „Aufgabendefinition — Protokoll“ aktualisiert werden:
+ LogDriver: „awslogs“ — Verwendet Protokolle CloudWatch 
+ awslogs-region: aktuelle Region — Verwendet dieselbe Region wie der Expressmodus-Dienst
+ mode: „non-blocking“ — Der Protokollierungsmodus ist auf „Nicht blockierend“ eingestellt
+ max-buffer-size: „25m“ — Maximale Puffergröße für Log-Schreibvorgänge

## Standardwerte für den Dienst
<a name="express-service-service-defaults"></a>

Die folgenden Standardeinstellungen können im Expressmodus für den Amazon ECS-Service konfiguriert werden:
+ ServiceName: Expressmodus-Dienst → Name — Name des Dienstes (vom Kunden bereitgestellt oder vom Imagenamen abgeleitet)

  Der Name kann nur bei der Erstellung konfiguriert werden und ist nicht für die Konfiguration bei Updates verfügbar.
+ Cluster: Expressmodus-Dienst → Cluster — ECS-Cluster für diesen Service (vom Kunden bereitgestellt oder Standard)

  Der Cluster kann nur bei der Erstellung konfiguriert werden und ist nicht für die Konfiguration bei Updates verfügbar.
+ desiredCount: Expressmodus-Dienst → MinTasks — Gewünschte Anzahl für den Dienst (Standard ist 1)

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder indem Sie Folgendes ausführen `create-express-gateway-service --scaling-target ‘{“minTaskCount”=3}',`
+ Tags: Express-Modus-Service Tags für AWS Tagging (vom Kunden bereitgestellt)

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder sie ausführen`create-express-gateway-service --tags`. Tags können nur bei der Erstellung einer neuen Ressource hinzugefügt werden. 

Die folgenden Standardeinstellungen werden im Expressmodus festgelegt, können jedoch direkt im Amazon ECS-Service aktualisiert werden:
+ availabilityZoneRebalancing: true — Aktiviert das automatische AZ-Rebalancing
+ CapacityProviderStrategy: \$1"base“: 1, „CapacityProvider“: „FARGATE“, „weight“: 1\$1 — Verwendet Fargate für Rechenkapazität
+ deploymentConfiguration: Standardmäßig Canary — Der Express-Modus-Dienst verwendet Canary-Bereitstellungen

  Beachten Sie, dass die Bereitstellungsstrategie für Expressmodus-Dienste nicht aktualisiert werden kann.
+ enable ECSManaged Tags: true — Aktiviert ECS-verwaltetes Ressourcen-Tagging
+ healthCheckGracePeriodSeconds: 300 — Übergangsfrist, bevor der Scheduler die ELB- oder Lattice-Integritätsprüfungen überprüft (entspricht der Standardeinstellung für die Kulanzfrist für die ELB-Zustandsprüfung)
+ <Not set>LaunchType: — Verwendet Kapazitätsanbieter 
+ LoadBalancers: Die Load Balancer-Konfiguration wird von ECS verwaltet

  Beachten Sie, dass Load Balancer-Konfigurationen bei Express-Modus-Diensten nicht aktualisiert werden können.
+ PlacementStrategy: Nicht gesetzt — Verwendet Fargate beim Start (sollte immer AZ Spread sein)
+ platformVersion: LATEST — Fargate-Plattformversion (hartcodiert auf NEUESTE Version)
+ propagateTags: „SERVICE“ — Überträgt Tags vom Service an Aufgaben
+ SchedulingStrategy: „REPLICA“ — Expressmodus-Dienste sind REPLICA-Dienste
+ TaskDefinition: Expressmodus-Dienst erstellt — Die zu verwendende Aufgabendefinition (vom Expressmodus-Dienst bereitgestellt)

## Standardeinstellungen für die Netzwerkkonfiguration
<a name="express-service-network-defaults"></a>

Die folgenden Standardeinstellungen können im Expressmodus für den Amazon ECS-Service — Netzwerkkonfiguration konfiguriert werden:
+ NetworkConfiguration.Subnets: Wenn keine angegeben sind, verwendet der Expressmodus die standardmäßigen öffentlichen Subnetze in der Standard-VPC.

  Die Standard-VPC muss über mindestens zwei öffentliche Subnetze in mindestens zwei Verfügbarkeitszonen verfügen, wobei pro zugewiesenem CIDR-Block und Subnetz mindestens 8 frei IPs verfügbar sind.

  Wenn Sie benutzerdefinierte öffentliche Subnetze bereitstellen, stellt der Expressmodus ein ALB mit Internetzugriff bereit und aktiviert AssignPublicIP für Ihre Aufgaben. Wenn Sie private Subnetze (Subnetze ohne Internet-Gateway in der Routing-Tabelle) bereitstellen, stellt der Expressmodus ein internes ALB bereit.

  Wenn Sie Subnetze angeben, definiert der erste Expressmodus-Dienst für eine VPC die Subnetze, die entweder dem mit dem Internet verbundenen oder dem internen Load Balancer für diese VPC zugeordnet sind. Nachfolgende Expressmodus-Dienste, die in derselben VPC gestartet werden, müssen über Subnetze verfügen, die den vom Load Balancer unterstützten Verfügbarkeitszonen entsprechen. Aus diesem Grund empfehlen wir, Expressmodus-Dienste mit Subnetzen aus allen Verfügbarkeitszonen zu erstellen.
+ networkConfiguration. SecurityGroups: Wenn keine angegeben sind, erstellt der Expressmodus sowohl eine Service Security Group als auch eine Load Balancer Security Group

  Die Service Security Group ermöglicht ausgehenden Datenverkehr in das öffentliche Internet, kann jedoch je nach anderen Aspekten Ihres Netzwerks, wie z. B. Ihrer Subnetzkonfiguration, eingeschränkt sein.

  Die Load Balancer-Sicherheitsgruppe Die Load Balancer-Sicherheitsgruppe erlaubt eingehenden Datenverkehr für die HTTPS-Auflösung und ausgehenden Datenverkehr zu Ihrer Service Security Group auf dem von Ihnen angegebenen Container-Port (Standard 80). Und wird automatisch aktualisiert, sodass er dem Container-Port entspricht, der in Ihren Expressmodus-Aufrufen zum Erstellen oder Aktualisieren angegeben wurde.

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder sie ausführen`create-express-gateway-service --network-configuration '{"securityGroup": ["sg-xxxxxxx"]}'`. Wenn Sie eine Sicherheitsgruppe angeben, geben Sie einen zusätzlichen Eingangspfad zu Ihrem Dienst an.

Die folgenden Standardeinstellungen werden im Expressmodus festgelegt, können jedoch direkt in der Amazon ECS-Service — Netzwerkkonfiguration aktualisiert werden:
+ assignPublicIp: Basierend auf dem Subnetztyp — Für öffentliche Subnetze aktiviert, um sicherzustellen, dass Benutzer der Standard-VPC auf das öffentliche Internet zugreifen können, aktivieren wir standardmäßig für jede Aufgabe public IPs . Dies ist deaktiviert, wenn Sie ein privates Subnetz bereitstellen, und Sie sind dann für die Konfiguration eines NAT-Gateways verantwortlich, falls für Ihre Aufgaben Internetzugang erforderlich ist. 

## Standardwerte für die IAM-Rolle
<a name="express-service-iam-defaults"></a>

Die folgenden IAM-Rollen sind für einen Expressmodus-Dienst konfigurierbar, wobei gegebenenfalls automatisch dienstbezogene Rollen erstellt werden.
+ executionRoleArn: Rolle zur Aufgabenausführung (erforderlicher Parameter)

  Die erforderlichen Berechtigungen sind zwar in der verwalteten Richtlinie enthalten, es können jedoch zusätzliche Richtlinien und Berechtigungen angehängt werden. Weitere Informationen zu [Amazon](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonECSTaskExecutionRolePolicy.html) finden Sie ECSTask ExecutionRolePolicy im AWS Managed Policy Reference Guide
+ infrastructureRoleArn: Infrastrukturrolle für Express Gateway Services (erforderlicher Parameter)

  Die erforderlichen Berechtigungen sind zwar in der verwalteten Richtlinie enthalten, es können jedoch zusätzliche Richtlinien und Berechtigungen angehängt werden. Weitere Informationen zu den von [Amazon ECSInfrastructure RoleforExpressGatewayServices](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonECSInfrastructureRoleforExpressGatewayServices.html) verwalteten Richtlinien finden Sie im Referenzhandbuch für AWS verwaltete Richtlinien
+ taskRoleArn: Aufgabenrolle für Aufrufe aus dem Container-Anwendungscode (optional)

  Sie können diese Option anpassen, indem Sie die Option **Zusätzliche Konfigurationen** in der Konsole verwenden oder sie ausführen`create-express-gateway-service --task-role-arn`.

  Sie müssen die neue IAM-Rolle erstellen, bevor Sie den Expressmodus-Dienst erstellen oder aktualisieren.

Die folgenden IAM-Rollen werden vom Expressmodus automatisch konfiguriert.
+ ecsServiceRoleForECS: Ermöglicht Amazon ECS die Verwaltung Ihres Clusters
+ AWSServiceRoleForElasticLoadBalancing: Ruft in Ihrem Namen andere AWS Dienste für Sie auf — automatisch erstellt von Elastic Load Balancing 
+ AWSServiceRoleForApplicationAutoScaling\$1ECSService: Ruft in Ihrem Namen andere AWS Dienste auf — automatisch erstellt von Application Auto Scaling

## Standardwerte Application Auto Scaling
<a name="express-service-autoscaling-defaults"></a>

Die folgenden Einstellungen für Application Auto Scaling können im Expressmodus konfiguriert werden:
+ autoScalingTargetWert: 60 — Prozentualer Zielwert für die CPU-Auslastung für die Skalierung
+ autoScalingMetric: "CPUUtilization" — Metrik, die für Entscheidungen zur auto Skalierung verwendet wird
+ desiredMinTaskAnzahl: 1 — Mindestanzahl der zu verwaltenden Aufgaben
+ desiredMaxTaskAnzahl: 20 — Maximale Anzahl von Aufgaben, auf die skaliert werden kann (kann erhöht oder verringert werden)

Die folgenden Einstellungen können direkt in Application Auto Scaling konfiguriert werden:
+ PolicyType: "TargetTrackingScaling" — Verwendet die Skalierungsrichtlinie für die Zielverfolgung
+ disableScaleIn: false — Ermöglicht das Herunterskalieren bei sinkender Nachfrage

## Standardwerte für das Skalieren von Anwendungen
<a name="express-service-scaling-target-defaults"></a>

Application Auto Scaling Scaling-Ziele definieren die skalierbaren Ressourcen- und Kapazitätsgrenzen für automatische Skalierungsvorgänge. Folgendes kann im Expressmodus geändert werden:
+ MaxCapacity: Expressmodus-Service → MaxTasks — Maximale Anzahl von Aufgaben, auf die der Service skaliert werden kann (standardmäßig vom Kunden bereitgestellt CreateLoadBalancedService oder vom Kunden bereitgestellt)
+ MinCapacity: Expressmodus-Service → MinTasks — Minimale Anzahl von Aufgaben, auf die der Service herunterskaliert wird (standardmäßig von CreateLoadBalancedService oder vom Kunden bereitgestellt)
+ ScalableDimension: ecs:service: DesiredCount - Die zu skalierende Eigenschaft
+ Tags: Abgeleitet von den übergebenen Tags CreateLoadBalancedService — Ressourcen-Tags für diese Ressource

Die folgenden Standardwerte können im skalierbaren Ziel von Application Auto Scaling geändert werden:
+ DynamicScalingInSuspended: false — Zeigt an, ob die Skalierung unterbrochen ist
+ DynamicScalingOutSuspended: false — Zeigt an, ob das Herunterskalieren unterbrochen ist
+ ScheduledScalingSuspended: false — Zeigt an, ob die geplante Skalierung unterbrochen wurde

## Standardwerte für die Richtlinie zur Anwendungsskalierung
<a name="express-service-scaling-policy-defaults"></a>

Skalierungsrichtlinien implementieren Algorithmen zur Zielverfolgung, die die CPU-Auslastung überwachen und die Anzahl der Aufgaben anpassen, um eine optimale Leistung zu gewährleisten. Folgendes kann im Expressmodus geändert werden:
+ TargetValue: 60% — Der Zielwert für die Tracking-Richtlinie (Expressmodus-Dienst → scaling-target-value)
+ PredefinedMetricType: ECSService Durchschnitt CPUUtilization — Der Nametyp der Metrik, die verfolgt wird (Expressmodus-Dienst → Skalierungsmetrik)

  Der Expressmodus bietet Skalierungsmetriken für den Durchschnitt CPUUtilization, die durchschnittliche Speicherauslastung und die Anzahl der Anfragen pro Ziel. Die Anzahl der Anfragen pro Ziel stammt vom Application Load Balancer und kann für bis zu 65536 Anfragen pro Ziel pro Sekunde eingerichtet werden. Dies ist Ihr Amazon ECS-Service in der Application Load Balancer Balancer-Zielgruppe.

Die folgenden Standardwerte werden im Expressmodus festgelegt, können jedoch in der Application Auto Scaling Scaling-Richtlinie geändert werden:
+ PolicyName: < ServiceName ><“ TargetMetric „> — Name dieser Skalierungsrichtlinie (abgeleitet aus dem ECS-Dienstnamen und der Zielmetrik)
+ PolicyType: TargetTrackingScaling - Die Art der Skalierung, die durchgeführt wird (vordefinierter Standard)
+ ScalableDimension: „ecs:service:DesiredCount" — Die Eigenschaft, die skaliert werden soll (vordefinierter Standard)
+ DisableScaleIn: false — Gibt an, ob das Skalieren deaktiviert ist

## Standardeinstellungen für den Application Load Balancer
<a name="express-service-alb-defaults"></a>

Die folgenden Application Load Balancer Balancer-Standardeinstellungen können im Expressmodus konfiguriert werden:
+ Schema: hängt von Subnetzen ab — Erzeugt einen mit dem Internet verbundenen Load Balancer mit öffentlichen IP-Adressen, wenn öffentliche Subnetze bereitgestellt werden. Erstellt einen internen Load Balancer mit privaten IP-Adressen, wenn private Subnetze bereitgestellt werden.
+ ip-address-type: hängt von Subnetzen ab — Erzeugt IPv4 nur dann einen Application Load Balancer, wenn Adressen vorhanden sind. IPv4 Wenn Subnetze mit IPv6 aktivierter Option vorhanden sind, wird ein Dual-Stack-Application Application Load Balancer erstellt. Beachten Sie, dass, wenn Sie Subnetze IPv6 aktiviert haben, der erste Expressmodus-Dienst in einer VPC den internen oder mit dem Internet verbundenen Load Balancer für diese VPC definiert. Aus diesem Grund empfehlen wir, zuerst Ihre IPv6 Nur-Only-Subnetze oder in einer neuen VPC zu erstellen. 

Die folgenden Standardwerte sind im Expressmodus festgelegt und können im Application Load Balancer konfiguriert werden:
+ desync-mitigation-mode: Aus — Die Abwehr der HTTP-Desynchronisierung ist deaktiviert
+ access-logs.enabled: false — Die Zugriffsprotokollierung ist deaktiviert
+  https - Uses HTTPS protocol for secure comlistener-configurations.protocol: Kommunikation
+ listener-configurations.port: 443 — Hört auf dem Standard-HTTPS-Port
+ listener-configurations.rule-type: host-header — Leitet den Verkehr auf der Grundlage von Host-Header-Regeln weiter

## Standardeinstellungen für die Zielgruppe
<a name="express-service-targetgroup-defaults"></a>

Die folgenden Amazon EC2 EC2-Standardwerte für Zielgruppen können im Expressmodus konfiguriert werden:
+ health-check-path: (Standard „/“) Pfad zur Integritätsprüfung des Express-Modus-Service — URL-Pfad für Integritätsprüfungsanfragen
+ port: (Standard 80) — Port, über den Ziele Datenverkehr empfangen
+ health-check-port: (Standard 80) — Port für Integritätsprüfungsanfragen

Die folgenden Standardeinstellungen werden im Expressmodus festgelegt und können in Amazon EC2 EC2-Zielgruppen konfiguriert werden:
+ protocol: HTTP — Protokoll für die Weiterleitung von Datenverkehr zu Zielen
+ protocol-version: HTTP1 - HTTP-Protokollversion für die Kommunikation
+ vpc-id: Standard ist der Standard-VPC-Virtual Private Cloud-Identifier für die Zielgruppe, wird aber von den bereitgestellten Subnetzen abgeleitet
+ health-check-protocol: Entspricht Protocol — Protokoll für Integritätsprüfungsanfragen
+ health-check-enabled: Immer aktiviert — Gesundheitschecks werden automatisch aktiviert
+ health-check-interval-seconds: 30 — Zeit zwischen den Zustandsprüfungen einzelner Ziele
+ health-check-timeout-seconds: 5 — Dauer des Timeouts für Antworten auf Gesundheitschecks
+ healthy-threshold-count: 5 — Für den Gesundheitsstatus sind aufeinanderfolgende erfolgreiche Gesundheitschecks erforderlich
+ unhealthy-threshold-count: 2 — Für einen ungesunden Zustand sind aufeinanderfolgende fehlgeschlagene Gesundheitsprüfungen erforderlich
+ Zieltyp: ip — Ziele werden anhand der IP-Adresse registriert
+ ip-address-type: ipv4 — Verwendet IPv4 Adressen für die Zielregistrierung

## Gemeinsame Nutzung von Ressourcen und Kostenoptimierung
<a name="express-service-resource-sharing"></a>

Expressmodus-Dienste teilen Ressourcen automatisch, wenn dies möglich ist, um die Kosten zu optimieren:
+ **Load Balancer Sharing** — Bis zu 25 Express-Modus-Dienste in derselben VPC können sich einen Application Load Balancer teilen. Im Expressmodus werden je nach Anzahl der von Ihnen bereitgestellten Expressmodus-Dienste je nach Bedarf zusätzliche Application Load Balancer bereitgestellt. Und wenn Sie die Anzahl der Expressmodus-Dienste in Ihrer VPC reduzieren, werden im Expressmodus auch ungenutzte Application Load Balancer deprovisioniert. Diese gemeinsame Nutzung reduziert die effektiven Kosten pro Anwendung, wenn Sie mehr Expressmodus-Services bereitstellen.
+ **Cluster-Sharing** — Express-Modus-Services können in Amazon ECS-Clustern zusammengefasst werden. Express-Modus-Dienste können Amazon ECS-Cluster auch mit Amazon ECS-Services teilen, die nicht im Expressmodus verwaltet werden.



# Details eines Amazon ECS Express Mode-Service anzeigen
<a name="express-service-view-service"></a>

Sie können sich Details zu Ihrem Express-Modus-Service ansehen, um dessen Status, Konfiguration und Leistungskennzahlen zu überwachen. Die Seite mit den Servicedetails bietet umfassende Informationen über den aktuellen Status Ihres Dienstes, die laufenden Aufgaben, den Bereitstellungsverlauf und die Betriebskennzahlen. 

**So zeigen Sie einen Express-Modus-Service an (Amazon ECS-Konsole)**

1. Öffnen Sie die Konsole auf [https://console.aws.amazon.com/ecs/Version](https://console.aws.amazon.com/ecs/v2) 2.

1. Klicken Sie im Navigationsbereich auf **Cluster**.

1. Wählen Sie auf der Seite **Cluster** den Namen des Clusters aus, der Ihren Express-Modus-Dienst enthält.

1. Wählen Sie auf der Seite mit den Cluster-Details die Registerkarte **Dienste** aus.

1. Konfigurieren Sie einen Filter, um Ihre Expressmodus-Dienste anzuzeigen. Wählen Sie als **Ressourcenverwaltungstyp „Filter**“ die Option **ECS** aus.

   Bei einem Expressmodus-Dienst steht neben dem Namen ein **Express-Badge**.

1. Wählen Sie den Namen Ihres Express-Modus-Dienstes aus, um zur Seite mit den Servicedetails für Ihren Expressmodus-Dienst zu gelangen.

1. Überprüfen Sie die Serviceinformationen, die auf der Seite mit den Servicedetails angezeigt werden:

   1. **Überblick über den Express-Service** — Hier finden Sie grundlegende Serviceinformationen wie Anwendungs-URL, Dienststatus, ausstehende und laufende Aufgaben sowie aktive Bereitstellungen.

   1. **Beobachtbarkeit** — Zeigt CloudWatch Metriken für CPU-Auslastung (min., max., durchschnittlich), Speicherauslastung (min., max., durchschnittlich), Ziel-Reaktionszeit (p50, p90, p99) RequestCount, 4xx-Status und 5xx-Status an.

   1. **Protokolle — Sehen Sie sich die Protokolle** der Container in Ihren Aufgaben an.

   1. **Ressourcen** — Ihre AWS Ressourcen, die für Ihren Expressmodus-Service erstellt wurden. Die Zeitleistenansicht wird nach einer Erstellung oder Aktualisierung automatisch aktualisiert und zeigt Status und Ereignisse an. Die Tabellenansicht bietet eine durchsuchbare Tabelle mit dem Status und dem vollen Speicherplatz ARNs für jede Ressource.

   1. **Bereitstellungen** — Verfolgen Sie den Bereitstellungsverlauf und den aktuellen Bereitstellungsstatus, einschließlich der Service-Revision und der Aufgaben, die bei Updates wertvolle Informationen liefern. Das Ereignisfenster informiert Sie darüber, wann Ihr Expressmodus-Dienst einen stabilen Status erreicht hat.

   1. **Konfiguration** — Zeigt die Dienstkonfiguration an, einschließlich des Clusters, der Rollen, der Containerkonfiguration, der Rechenleistung, der auto Skalierung und der Netzwerkkonfiguration.

   1. **Tags** – Verwaltung Ihrer Tags.

# Aktualisierung eines Amazon ECS Express Mode-Service
<a name="express-service-update-full"></a>

Der Expressmodus-Service vereinfacht den Service-Aktualisierungsprozess, indem er konfigurierbare Optionen für Netzwerke, Lastenausgleich und Application Auto Scaling bereitstellt und Änderungen in diesen Diensten orchestriert.

Sie können Ihren Expressmodus-Dienst aktualisieren, um Container-Images zu ändern, die Ressourcenzuweisung anzupassen oder die Konfigurationseinstellungen zu ändern. Updates werden mithilfe von Canary-Implementierungen mit alarmbasierten Rollback-Alarmen bereitgestellt, um die Verfügbarkeit aufrechtzuerhalten.

## Verhalten bei der Bereitstellung
<a name="express-service-update-full-behavior"></a>

Ein Expressmodus-Dienst verwendet standardmäßig kanarische Bereitstellungen, um sichere Updates und schnelle Rollbacks zu gewährleisten:
+ Eine neue Umgebung wird erstellt und Aufgaben werden zusammen mit Ihren Änderungen bereitgestellt
+ 5% des Datenverkehrs werden in die neue Umgebung verlagert
+ Alarmbasierte Rollbacks werden ausgelöst, wenn die Summe der Fehlerquoten 4xx und 5xx bei 2 Datenpunkten innerhalb von 3 Minuten > 1 ist
+ Gesundheitschecks stellen sicher, dass die neuen Aufgaben fehlerfrei sind
+ Nach 3 Minuten Backzeit werden 100% des Datenverkehrs in eine neue Umgebung verlagert
+ Nach 3 Minuten Backzeit für die Überwachung werden alte Aufgaben schrittweise gestoppt und ersetzt

Weitere Informationen finden Sie unter [Amazon ECS Canary-Bereitstellungen](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/canary-deployment.html)

## Verfahren
<a name="express-service-update-full-procedure"></a>

1. Öffnen Sie die Konsole auf [https://console.aws.amazon.com/ecs/Version 2.](https://console.aws.amazon.com/ecs/v2)

1. Klicken Sie im Navigationsbereich auf **Cluster**.

1. Wählen Sie auf der Seite **Cluster** den Namen des Clusters aus, der Ihren Express-Modus-Dienst enthält.

1. Wählen Sie auf der Seite mit den Cluster-Details die Registerkarte **Dienste** aus.

1. Konfigurieren Sie einen Filter, um Ihre Expressmodus-Dienste anzuzeigen. Wählen Sie als **Ressourcenverwaltungstyp „Filter**“ die Option **ECS** aus.

   Bei einem Expressmodus-Dienst steht neben dem Namen ein **Express-Badge**.

1. Unter **Konfiguration**:

   1. Geben Sie das Bild an, das für Ihre Anwendung verwendet werden soll. Geben Sie **unter Bild-URI** den URI für Ihr Bild ein. Um Ihre Amazon ECR-Images zu durchsuchen, wählen Sie **Browse ECR images** und gehen Sie dann wie folgt vor:

      1. Wählen Sie für **Privates Repository** das private Amazon ECR-Repository aus.

      1. Wählen Sie für **Bild** Ihr Bild aus.

      1. Wählen Sie aus, wie das Bild identifiziert werden soll. **Wählen Sie für Bild auswählen von** eine der folgenden Optionen aus:
         + AWS empfiehlt, dass Sie **Image Digest** wählen.
         + Um das Tag zu verwenden, wählen Sie **Image-Tag** und dann das Tag aus.

   1. Um eine private Registrierung zu verwenden, wählen Sie **Private Registrierung** aus. Geben Sie dann für **Secrets Manager ARN oder Name** den Secrets Manager ARN ein, den Sie in den Voraussetzungen erstellt haben.

   1. Wählen Sie für die **Rolle zur Aufgabenausführung** die Rollen aus, oder erstellen Sie eine neue Rolle und aktualisieren Sie sie. Sie können die Aufgabenausführungsrolle aktualisieren, wenn Sie zusätzliche Berechtigungen hinzufügen müssen.

1. Passen Sie Ihren Service unter **Zusätzliche Konfigurationen** an.

   1. Unter **Container**:

      1. Aktualisieren Sie für den **Container-Port** den Port, auf dem Ihre Anwendung lauscht (Standard ist 80).

      1. Aktualisieren **Sie für den Pfad zur Integritätsprüfung** den Pfad für Integritätsprüfungen (z. B.`/health`).

   1. Fügen Sie unter **Umgebungsvariablen** Schlüssel-Wert-Paare für Umgebungsvariablen hinzu, die Ihre Anwendung benötigt:

      1. Geben Sie **unter Schlüssel** den Namen der Umgebungsvariablen ein.

      1. Wählen Sie als **Wertetyp** die Option **Umgebungsvariable** oder **Geheim** aus.

      1. Geben Sie für **Wert oder Wert von** den Wert oder die Referenz ein.

      1. Wählen **Sie Umgebungsvariable** hinzufügen, um nach Bedarf weitere Variablen hinzuzufügen.

   1. Geben Sie als **Befehl** optional einen benutzerdefinierten Befehl ein, um die Docker-CMD-Anweisung zu überschreiben.

   1. Fügen Sie für die **Aufgabenrolle** eine IAM-Rolle hinzu, die Ihrer Anwendung, die in Ihren Containern ausgeführt wird, Berechtigungen gewährt. Auf diese Weise kann Ihre Anwendung API-Aufrufe an AWS Dienste tätigen.

   1. Unter **Compute**:

      1. Aktualisieren Sie für **CPU** die vCPU-Zuweisung für Ihre Aufgaben (z. B. 1 vCPU).

      1. Aktualisieren Sie unter **Arbeitsspeicher** die Speicherzuweisung für Ihre Aufgaben (z. B. 2 GB).

   1. Unter **Auto Scaling**:

      1. Wählen Sie für die **ECS-Servicemetrik** die Metrik aus, nach der skaliert werden soll (z. B. **durchschnittliche Speicherauslastung des ECS-Service** oder **Anzahl der Anfragen pro Ziel**).

      1. Geben Sie als **Zielwert** das Ziel für die Skalierung ein (z. B. **60** oder **1000**).

      1. Aktualisieren Sie für **Minimale Anzahl von Aufgaben** und **Maximale Anzahl von Aufgaben** die Skalierungsgrenzen.

   1. Unter **Protokolle**:

      1. Aktualisieren Sie für ** CloudWatch Amazon-Protokollgruppen** den Namen der Protokollgruppe für Ihre Anwendungsprotokolle. Beachten Sie, dass dadurch keine vorhandenen Protokolle verschoben werden, sondern mit dem Schreiben von Protokollen aus der neuen Service-Revision begonnen wird.

      1. Geben Sie für **Amazon CloudWatch Log Stream Prefix** ein neues Präfix für Log-Streams ein.

1. Wählen Sie **Update**, um Ihren Expressmodus-Service zu aktualisieren.

# Amazon ECS Express-Modus-Services löschen
<a name="express-service-delete-task"></a>

Wenn Sie einen Expressmodus-Dienst löschen, entfernen Sie den Dienst und die zugehörigen Ressourcen, einschließlich des Clusters, des Load Balancers und anderer Infrastrukturkomponenten.

**Wichtig**  
Durch das Löschen eines Expressmodus-Dienstes werden alle laufenden Aufgaben beendet und Ihre Anwendung ist nicht mehr verfügbar. Diese Aktion kann nicht rückgängig gemacht werden.

Die folgenden Ressourcen können je nach Ihrer Auswahl gelöscht werden:
+ Der Amazon ECS-Cluster (wenn keine anderen Dienste ausgeführt werden)
+ Der Amazon ECS-Service, die Aufgabendefinition und alle laufenden Aufgaben
+ Sicherheitsgruppe des Dienstes
+ CloudWatch Protokollgruppe
+ Metrikalarm
+ ACM-Zertifikat
+ Der Application Load Balancer (falls keine anderen Dienste konfiguriert sind), die Zielgruppe, die Sicherheitsgruppe, der Listener und die Listener-Regel
+ Auto Scaling Scaling-Richtlinie, skalierbares Ziel

Beachten Sie Folgendes:
+ Stellen Sie vor dem Löschen sicher, dass Sie alle wichtigen Daten gesichert haben
+ Erwägen Sie, den Service vor dem Löschen auf Null Aufgaben zu skalieren, um den Datenverkehr ordnungsgemäß zu unterbrechen
+ Prüfen Sie die Abhängigkeiten, die vom Löschen betroffen sein könnten

## Unterschied zwischen dem Löschen eines Expressmodus-Dienstes und eines Dienstes
<a name="express-service-delete-vs-ecs-delete"></a>

Wenn Sie einen Service löschen, löscht Amazon ECS den Service, sofern keine laufenden Aufgaben vorhanden sind. Amazon ECS löscht keine Zielgruppen, die mit dem Service oder dem Standard-Cluster (falls dieser verwendet wurde) verknüpft sind. Wenn Sie einen Express-Modus-Service löschen, löscht Amazon ECS den Service sowie alle Ressourcen, die für den Express-Modus-Service spezifisch sind. Wenn beispielsweise der Express-Modus-Service den Load Balancer erstellt hat und der einzige Service ist, der den Load Balancer verwendet, löscht er den zugehörigen Load Balancer. Wenn der Load Balancer gemeinsam genutzt wird, wird er auch mit Ressourcen, die nicht im Expressmodus verwaltet werden, nicht gelöscht.

## Verfahren
<a name="express-service-delete-procedure"></a>

1. Öffnen Sie die Konsole auf [https://console.aws.amazon.com/ecs/Version 2.](https://console.aws.amazon.com/ecs/v2)

1. Wählen Sie auf der **Cluster**-Seite den Cluster für den Service aus.

1. Wählen Sie auf der **Cluster**-Seite den Cluster aus.

1. Wählen Sie die Registerkarte **Services**.

1. Wählen Sie die zu löschenden Dienste aus.

1. Wählen Sie **Löschen** aus.

1. Gehen **Sie im Bestätigungsdialogfeld für das Löschen** wie folgt vor:

   1. Geben Sie **delete** die Eingabetaste ein, um den Löschvorgang zu bestätigen.

1. Wählen Sie zur Bestätigung **Delete**.

1. Bleiben Sie auf der Seite, um den Löschvorgang zu verfolgen und eine Liste der Ressourcen einzusehen, die entfernt wurden, sowie der Ressourcen, die zurückgehalten wurden und möglicherweise manuell bereinigt werden müssen.

# Bewährte Methoden für Amazon ECS Express Mode-Services
<a name="express-service-best-practices"></a>

Erfahren Sie mehr über bewährte Methoden und Empfehlungen für die effektive Nutzung des Express Mode-Service in Produktionsumgebungen.

## Bewährte Methoden für die Gewährleistung der Sicherheit
<a name="express-service-best-practices-security"></a>

### Verwaltung von Secrets
<a name="express-service-secrets-management"></a>
+ **Secrets Manager für Secrets verwenden** — Speichern Sie sensible Daten in Secrets Manager (z. B. private Repository- oder Datenbankanmeldeinformationen).

  Weitere Informationen zu den Best Practices von Secrets Manager finden Sie unter [Best Practices für Secrets](secretsmanager/latest/userguide/best-practices.html) *Manager im Secrets Manager-Benutzerhandbuch*
+ **Verschlüsselung im Ruhezustand aktivieren** — Stellen Sie sicher, dass Geheimnisse verschlüsselt werden, wenn sie in AWS Diensten gespeichert werden.

  Mit einem Dienst wie Secrets Manager können Sie entweder mit einem AWS verwalteten oder vom Kunden bereitgestellten Schlüssel verschlüsseln.
+ **Implementieren Sie die geheime Rotation** — Verwenden Sie die automatische Rotation für Datenbankkennwörter und API-Schlüssel.

  Mit einem Service wie Secrets Manager können Sie die geheime Rotation für Dienste wie Amazon Aurora und Amazon RDS verwalten.

Beispiel für die Verwendung von Geheimnissen im Expressmodus-Service:

```
aws ecs update-express-gateway-service \
    --primary-container \
        ‘{“environment”=[{“name”=“DB_PASSWORD”,”value”=“arn:aws:secretsmanager:us-west-2:123456789012:secret:prod/db/password”}, \
        {“name”=“API_KEY”,”value”=“arn:aws:ssm:us-west-2:123456789012:parameter/prod/api-key”}]}’ \
```

### Netzwerksicherheit
<a name="express-service-network-security"></a>
+ **Private Subnetze für vertrauliche Anwendungen verwenden** — Stellen Sie Anwendungen, die keinen direkten Internetzugang benötigen, in privaten Subnetzen bereit.

  Weitere Informationen zu empfohlenen Architekturen finden Sie unter [Amazon ECS-Anwendung mit dem Internet Connect](AmazonECS/latest/developerguide/networking-outbound.html).
+ **Konfigurieren Sie Sicherheitsgruppen so, dass sie minimal freizügig** sind. Beschränken Sie den ein- und ausgehenden Datenverkehr auf die erforderlichen Ports und Quellen.

  Um den ausgehenden Datenverkehr der Express Mode Service Security Group einzuschränken, können Sie ihn direkt in der Amazon EC2 Security Groups Console bearbeiten, indem Sie die ausgehenden Regeln ändern oder die folgenden Befehle verwenden: 

  ```
                      
  aws ec2 authorize-security-group-egress
      --group-id sg-xxxxxxxx \
      --protocol tcp \ 
      --port 443 \ 
      --cidr 0.0.0.0/0
  
  aws ec2 revoke-security-group-egress
      --group-id sg-xxxxxxxx \
      --protocol tcp \
      --port 443 \ 
      --cidr 0.0.0.0/0
  ```
+ **Amazon VPC Flow Logs aktivieren** — Überwachen Sie den Netzwerkverkehr zur Sicherheitsanalyse und Fehlerbehebung.

  Sie können dies in jedem Subnetz, das von Ihren Expressmodus-Anwendungen verwendet wird, in der VPC-Subnetzkonsole aktivieren oder ` aws ec2 create-flow-logs --resource-ids subnet-xxx`
+ ** AWS WAF Für Webanwendungen verwenden** — Schützen Sie sich vor gängigen Web-Exploits und Angriffen.

  Sie können dies aktivieren, indem Sie eine Web-ACL erstellen und diese dann dem Application Load Balancer zuordnen, der von Ihrem Express Mode Service verwendet wird. Erstellen Sie in der Konsole eine Web-ACL im WAF & Shield Service und ordnen Sie sie Ihrem Application Load Balancer zu. Oder verwenden `aws wafv2 create-web-acl` Sie und. `aws wafv2 associate-web-acl --resource-arn <alb>`

## Leistungs- und Rechenoptimierung
<a name="express-service-performance-best-practices"></a>

### Dimensionierung der Ressourcen
<a name="express-service-resource-sizing"></a>
+ **Richtige Größe von CPU und Arbeitsspeicher** — Überwachen Sie die Anwendungsleistung und passen Sie die CPU- und Speicherzuweisungen an die tatsächlichen Nutzungsmuster an.

  AWS Compute Optimizer generiert Empfehlungen für Amazon ECS-Aufgaben- und Containergrößen. Weitere Informationen finden Sie unter [Was ist AWS Compute Optimizer?](https://docs.aws.amazon.com/compute-optimizer/latest/ug/what-is-compute-optimizer.html) im *AWS Compute Optimizer -Benutzerhandbuch*.
+ **Leistungstest Ihrer Anwendung** — Führen Sie Auslastungstests durch, um sicherzustellen, dass Ihre Anwendung skalierbar und mit den angegebenen Skalierungsschwellenwerten und Ressourcenzuweisungen funktioniert.

### Konfiguration für automatische Skalierung
<a name="express-service-auto-scaling"></a>
+ **Legen Sie geeignete Skalierungsschwellenwerte fest — Konfigurieren Sie CPU-** oder Speicher-Schwellenwerte, die eine Skalierung auslösen, bevor die Leistung beeinträchtigt wird.

  Sie können den Zielwert der Service-Metrik in Ihrer Express-Modus-Servicekonsole ändern. 

  Erwägen Sie das Hinzufügen einer Richtlinie zur vorausschauenden Skalierung, insbesondere wenn Ihr Datenverkehr einem zeitbasierten Muster folgt. Weitere Informationen finden Sie unter [Predictive Auto Scaling](AWSEC2ContainerServiceDocs/latest/shared/predictive-auto-scaling.html).
+ **Verwenden Sie mehrere Skalierungsmetriken** — Ziehen Sie in Erwägung, sowohl CPU- als auch Arbeitsspeicher und anforderungsbasierte Skalierung zu verwenden, um eine reaktionsschnellere Skalierung zu erzielen.

  Sie können einem Service mehrere Richtlinien hinzufügen. Der Expressmodus fügt standardmäßig eine hinzu, Sie können Ihrem Dienst jedoch zusätzliche Richtlinien direkt hinzufügen.
+ **Konfigurieren Sie Mindest- und Höchstgrenzen für Aufgaben** — Legen Sie angemessene Grenzen fest, um die Kosten zu kontrollieren und die Verfügbarkeit sicherzustellen.

  Für Produktions-Workloads empfehlen wir, nach Abschluss der ersten Tests die Ausführung in drei Verfügbarkeitszonen durchzuführen, um die bewährten Methoden für die Verfügbarkeit zu befolgen. Sie können die **Mindestanzahl an Aufgaben in der** Expressmodus-Konsole oder mithilfe `update-express-gateway-service --scaling-target '{“minTaskCount”=3}'` von aktualisieren.

### Health checks (Zustandsprüfungen)
<a name="express-service-health-checks"></a>
+ **Implementieren Sie aussagekräftige Integritätsprüfungen** — Erstellen Sie Endpunkte für Integritätsprüfungen, mit denen kritische Anwendungsabhängigkeiten überprüft werden.

  Sie können den **Health Check-Pfad** in der Express Mode Console aktualisieren. Oder indem Sie`update-express-gateway-service --health-check-path "/health"`.

  Weitere Informationen zur Erstellung von Gesundheitschecks für Ihre Anwendung finden Sie unter [Implementierung von Gesundheitschecks](https://d1.awsstatic.com/builderslibrary/pdfs/implementing-health-checks.pdf)
+ **Halten Sie die Zustandsprüfungen einfach** — Vermeiden Sie teure Operationen an den Endpunkten für Zustandsprüfungen.

  Beispiele hierfür können externe API-Aufrufe, CPU- oder speicherintensive Operationen oder lang andauernde Operationen mit der Möglichkeit eines Timeouts sein.
+ **Verwenden Sie angemessene Timeouts** — Konfigurieren Sie Timeouts für Integritätsprüfungen, die normale Reaktionszeiten ermöglichen und gleichzeitig Fehler schnell erkennen.

  Timeouts für Integritätsprüfungen für den Expressmodus können für die Zielgruppe des Application Load Balancer konfiguriert werden. Navigieren Sie in der Amazon EC2 EC2-Konsole zum Abschnitt **Zielgruppen** und wählen Sie Ihre Expressmodus-Zielgruppe aus. Wählen Sie die Registerkarte **Health Checks** und klicken Sie auf **Bearbeiten**. Unter **Erweiterte Einstellungen für die Gesundheitsprüfung** können Sie das Timeout anpassen. Oder verwenden `aws elbv2 modify-target-group --target-group-arn <targetgroup> --health-check-timeout` Sie.
+ Geben Sie die **richtigen HTTP-Statuscodes zurück** — Verwenden Sie 200 für fehlerfreien Status und 4xx/5xx für fehlerhafte Zustände.

## Bewährte betriebliche Verfahren
<a name="express-service-operational-best-practices"></a>

### Überwachung und Protokollierung
<a name="express-service-monitoring"></a>
+ **Aktivieren Sie Enhanced Container Insights** — Verwenden CloudWatch Sie Enhanced Container Insights für eine umfassende Überwachung Ihrer Express-Modus-Serviceanwendungen.

  Weitere Informationen finden Sie unter [Container Insights auf Amazon ECS einrichten](AmazonCloudWatch/latest/monitoring/deploy-container-insights-ECS-cluster.html).
+ **Benutzerdefinierte Metriken einrichten** — Veröffentlichen Sie anwendungsspezifische Metriken für die CloudWatch Überwachung der Geschäftslogik.

  Weitere Informationen finden Sie unter [Öffentliche benutzerdefinierte Metriken](AmazonCloudWatch/latest/monitoring/publishingMetrics.html) im *CloudWatch Benutzerhandbuch*.
+ **Protokollaufbewahrung konfigurieren** — Legen Sie angemessene Aufbewahrungsfristen für Protokolle fest, um Kosten und Compliance-Anforderungen in Einklang zu bringen.

  CloudWatch Im Expressmodus erstellte Protokollgruppen sind so konfiguriert, dass sie nie ablaufen. Sie bleiben erhalten, wenn der Expressmodus-Dienst gelöscht wird. Sie können diese Einstellung in der CloudWatch Protokollgruppe anpassen.
+ **Dashboards und Benachrichtigungen erstellen** — CloudWatch Richten Sie Dashboards und Alarme für eine proaktive Überwachung ein.

### Bereitstellungsstrategien
<a name="express-service-deployment"></a>
+ **Implementieren Sie Backzeiten** — Im Expressmodus wird eine „Canary Bake Time“ implementiert, um sicherzustellen, dass Bereitstellungen genügend Zeit haben, sich zu stabilisieren, und gleichzeitig den Explosionsradius problematischer Bereitstellungen zu reduzieren. Wenn Ihre Anwendung mehr Zeit zur Stabilisierung benötigt, kann dies in der Amazon ECS-Servicedefinition Ihres Expressmodus-Service konfiguriert werden. Weitere Informationen finden Sie unter [Erstellen einer Amazon ECS-Canary-Bereitstellung](AmazonECS/latest/developerguide/deploy-canary-service.html).
+ **Implementieren Sie Rollback-Verfahren** — Planen Sie, schnell zu früheren Versionen zurückzukehren, falls Probleme auftreten.

  Aussagekräftige Integritätsprüfungen und auf Alarmen basierende Rollbacks können beide beim Rollback hilfreich sein. Die kanarische Implementierungsstrategie von Express Mode in Kombination mit alarmbasierten Rollbacks für 4xx- und 5xx-Verkehr ermöglicht schnelle Rollbacks bei fehlerhaftem Anwendungscode oder fehlerhafter Konfiguration.

# Fehlerbehebung bei Amazon ECS Express-Modus-Services
<a name="express-service-troubleshooting"></a>

Dieser Abschnitt hilft Ihnen dabei, häufig auftretende Probleme bei der Bereitstellung und Verwaltung von Expressmodus-Diensten zu identifizieren und zu lösen.

## Bereitstellungsprobleme
<a name="express-service-deployment-issues"></a>

### Der Dienst ist im Status AKTIV oder WIRD AUSGELAUFEN
<a name="express-service-service-stuck-provisioning"></a>

**Symptome:** DescribeServiceRevisions Zeigt an, dass Ressourcen immer noch bereitgestellt oder deprovisioniert werden. DescribeServices zeigt, dass die Bereitstellung nicht stabilisiert ist

**Mögliche Ursachen und Lösungen:**
+ **Unzureichende IAM-Berechtigungen** — Stellen Sie sicher, dass die Aufgabenausführungsrolle und die Infrastrukturrolle über die erforderlichen Berechtigungen verfügen, wie in den jeweiligen verwalteten Richtlinien angegeben.

  ```
  # Check if the role has the required managed policy
  aws iam list-attached-role-policies --role-name ecsTaskExecutionRole
  ```
+ **Fehler beim Abrufen von Bildern** — Stellen Sie sicher, dass das Container-Image vorhanden ist und darauf zugegriffen werden kann.

  ```
  # Test image pull manually
  docker pull 123456789012.dkr.ecr.us-west-2.amazonaws.com/my-app:latest
  ```
+ **Probleme mit der Netzwerkkonnektivität** — Überprüfen Sie, ob Subnetze Internetzugang oder Amazon VPC-Endpunkte für Dienste haben. AWS 
+ **Ressourcenlimits** — Vergewissern Sie sich, dass Ihr Konto über ausreichend Fargate-Kapazität verfügt und die Servicekontingente nicht erreicht wurden.

**Schritte zur Diagnose:**

1. Verwenden Sie DescribeExpressGatewayService , um Ihre aktuelle Service-Revision abzurufen, gefolgt von, DescribeServiceRevisions ServiceRevision um den Status der Bereitstellung oder Deprovisionierung abzurufen

1. Detaillierte Fehlermeldungen finden Sie in den Service-Ereignissen in der Amazon ECS-Konsole.

1. Überprüfen Sie, ob der Container-Port richtig eingestellt wurde

1. Überprüfen Sie die AWS Servicekontingente für Amazon ECS und Fargate.

### Fehler beim Starten der Aufgabe
<a name="express-service-task-startup-failures"></a>

**Symptome:** Aufgaben können nicht gestartet werden oder werden sofort nach dem Start beendet.

**Häufige Ursachen:**
+ **Anwendungsfehler** — Die Container-Anwendung wird aufgrund von Konfigurations- oder Laufzeitfehlern beendet.
+ **Fehler bei der Integritätsprüfung** — Die Anwendung reagiert nicht auf Integritätsprüfungen am erwarteten Port oder Pfad.
+ **Ressourcenbeschränkungen** — Unzureichende CPU- oder Speicherzuweisung für die Anwendung.
+ **Fehlende Umgebungsvariablen oder Geheimnisse** — Die erforderliche Konfiguration ist für die Anwendung nicht verfügbar.

**Schritte zur Lösung:**

1. Überprüfen Sie die CloudWatch Anwendungsprotokolle in Logs. Den Namen der Protokollgruppe erhalten Sie von DescribeServiceRevisions:

   ```
   aws logs describe-log-streams --log-group-name /ecs/express-service-my-app
   aws logs get-log-events --log-group-name /ecs/express-service-my-app --log-stream-name stream-name
   ```

1. Stellen Sie sicher, dass der Pfad zur Integritätsprüfung den Status HTTP 200 zurückgibt.

1. Testen Sie das Container-Image lokal, um sicherzustellen, dass es korrekt gestartet wird.

1. Überprüfen Sie die CPU- und Speicherzuweisungen und passen Sie sie bei Bedarf an.

## Probleme mit der Verbindung
<a name="express-service-connectivity-issues"></a>

### Die Anwendung ist über den Load Balancer nicht erreichbar
<a name="express-service-application-unreachable"></a>

**Symptome:** Die Anwendungs-URL gibt Timeouts oder Verbindungsfehler zurück.

**Schritte zur Fehlerbehebung:**

1. Stellen Sie sicher, dass Ihre Ressourcen die Bereitstellung abgeschlossen haben

1. Stellen Sie sicher, dass die Aufgaben ausgeführt werden und fehlerfrei sind:

   ```
   aws ecs describe-services --cluster my-cluster --services my-express-service
   ```

1. Überprüfen Sie den Zustand der Application Load Balancer Balancer-Zielgruppen:

   ```
   aws elbv2 describe-target-health --target-group-arn arn:aws:elasticloadbalancing:region:account:targetgroup/name/id
   ```

1. Stellen Sie sicher, dass die Anwendung den richtigen Port im Container abhört.

## Leistungsprobleme
<a name="express-service-performance-issues"></a>

### Langsame Antwortzeiten
<a name="express-service-slow-response-times"></a>

**Symptome:** Anwendungen reagieren langsamer als erwartet.

**Diagnostischer Ansatz:**

1. Überwachen Sie die CPU- und Speicherauslastung:

   ```
   # Check CloudWatch metrics for the service
   aws cloudwatch get-metric-statistics \
       --namespace AWS/ECS \
       --metric-name CPUUtilization \
       --dimensions Name=ServiceName,Value=my-express-service Name=ClusterName,Value=my-cluster \
       --start-time 2024-01-01T00:00:00Z \
       --end-time 2024-01-01T01:00:00Z \
       --period 300 \
       --statistics Average
   ```

1. Überprüfen Sie die Anwendungsprotokolle auf Fehler oder Leistungswarnungen.

1. Prüfen Sie, ob Auto Scaling angemessen auf die Belastung reagiert.

1. Analysieren Sie die Load Balancer-Metriken für die Verteilung von Anfragen.

**Optimierungsstrategien:**
+ Erhöhen Sie die CPU- oder Speicherzuweisung, wenn die Ressourcen begrenzt sind.
+ Passen Sie die Schwellenwerte für die auto Skalierung so an, dass die Skalierung früher erfolgt.
+ Optimieren Sie den Anwendungscode und die Datenbankabfragen.

### Auto Scaling funktioniert nicht wie erwartet
<a name="express-service-scaling-issues"></a>

**Symptome:** Der Dienst wird bei hoher Last nicht hochskaliert oder bei niedriger Last nicht herunterskaliert.

**Schritte zur Fehlerbehebung:**

1. Überprüfen Sie die Auto Scaling-Richtlinien und deren Konfiguration:

   ```
   aws application-autoscaling describe-scaling-policies \
       --service-namespace ecs \
       --resource-id service/my-cluster/my-express-service
   ```

1. Überprüfen Sie die CloudWatch Metriken, um sicherzustellen, dass die Skalierungsauslöser erfüllt werden.

1. Stellen Sie sicher, dass der Service über die Berechtigung zur Skalierung verfügt (überprüfen Sie die IAM-Rollen).

1. Suchen Sie nach Skalierungsaktivitäten und deren Ergebnissen.

## Tools zum Überwachen und Debuggen
<a name="express-service-monitoring-debugging"></a>

### Verwenden von CloudWatch Container Insights
<a name="express-service-cloudwatch-insights"></a>

Aktivieren Sie Container Insights für eine umfassende Überwachung:

```
aws ecs put-account-setting --name containerInsights --value enabled
```

Container Insights bietet:
+ CPU-, Arbeitsspeicher-, Festplatten- und Netzwerkmetriken
+ Dashboards zur Leistungsüberwachung
+ Korrelation und Analyse von Protokollen
+ Anomalie-Erkennung

# Aktualisierung von Ressourcen außerhalb des Expressmodus
<a name="express-service-advanced-customization"></a>

Der Expressmodus vereinfacht die Bereitstellung, da AWS Ressourcen automatisch in Ihrem Namen bereitgestellt und verwaltet werden. Es ist jedoch wichtig, das Verantwortungsmodell zu verstehen. Im Expressmodus werden zwar Ressourcen wie Amazon ECS-Services, Load Balancer und Auto Scaling-Richtlinien erstellt und konfiguriert, aber alle Ressourcen verbleiben in Ihrem AWS Konto und sind für die direkte Verwaltung vollständig zugänglich. Sie können diese Ressourcen außerhalb des Expressmodus mithilfe der AWS Konsole, AWS CLI APIs, oder ändern. Dies kann sich jedoch auf die Fähigkeit des Expressmodus auswirken, Ihren Service zu verwalten. In diesem Abschnitt wird erklärt, welche Ressourcen der Expressmodus verwaltet, wie Sie Änderungen außerhalb des Expressmodus sicher vornehmen können und was passiert, wenn Sie dies tun.

## Das Modell der gemeinsamen Verantwortung verstehen
<a name="express-service-shared-responsibility"></a>

Die Zuständigkeitsgrenze im Expressmodus wird durch die API-Nutzung definiert. Der Expressmodus APIs verwaltet Ressourcen in Ihrem Namen mit koordinierten Updates für mehrere AWS Dienste. Mit dem AWS APIs Standardservice haben Sie die direkte Kontrolle über einzelne Ressourcen. Auf diese Weise können Sie über den Parametersatz hinausgehen, den der Expressmodus für die Konfiguration zur Verfügung stellt, und Sie haben die Kontrolle über jeden Parameter jeder Ressource. Beide Gruppen APIs arbeiten auf derselben zugrunde liegenden Infrastruktur in Ihrem Konto, und beide führen die von Ihnen angeforderten Operationen aus. AWS trägt die Verantwortung für die Durchführung des von Ihnen angeforderten Vorgangs. Der Expressmodus überprüft nicht, ob Ressourcenänderungen mithilfe von Direct APIs zu Konflikten mit der Expressmodus-Konfiguration führen, und verhindert auch nicht Änderungen, die die Funktionalität des Dienstes beeinträchtigen könnten. Dies bedeutet auch, dass Sie Änderungen vornehmen können, und diese Änderungen bleiben bestehen. Der Expressmodus überschreibt keine Änderungen, es sei denn, sie werden im Rahmen eines Expressmodus-Updates angefordert. Sie sind dafür verantwortlich, zu verstehen, wie Änderungen, die Direct verwenden, mit der Konfiguration des Expressmodus APIs interagieren, und alle daraus resultierenden Konflikte oder Serviceprobleme zu lösen.

Weitere Informationen zu den Standardeinstellungen, die der Express-Modus festlegt, und zu den Ressourcen, die er orchestriert, finden Sie unter [Von Amazon ECS Express Mode Services erstellte Ressourcen](AmazonECS/latest/developerguide/express-service-work.html).

## Muss ich etwas tun, bevor ich die Amazon ECS-Funktionen in meinem Expressmodus-Service nutzen kann?
<a name="express-service-migration"></a>

Nein, für den Expressmodus gibt es weder einen Graduierungspfad noch einen Glasbruch. Der gesamte Funktionsumfang von Amazon ECS ist immer für Ihren Express-Modus-Service verfügbar. Wenn Sie sicherstellen möchten, dass Ihr Service nicht weiter im Expressmodus aktualisiert wird, stehen Ihnen mehrere Optionen zur Verfügung. Wenn Sie das Managed Tag auf Ihren Ressourcen entfernen, kann Amazon ECS es nicht mehr als Express-Modus-Service identifizieren und verwenden. Alternativ können Sie IAM auch verwenden, um Benutzerberechtigungen auf den Expressmodus APIs zu beschränken.

## Beispiel für Updates außerhalb des Expressmodus
<a name="express-service-customization-examples"></a>

### Hinzufügen eines Beiwagens zu einem Expressmodus-Dienst
<a name="express-service-add-sidecar"></a>

Sie können Ihrem Service einen beliebigen Sidecar-Container hinzufügen. Dieses Beispiel zeigt, wie Sie einen Fluent Bit-Logging-Sidecar hinzufügen.

1. [Öffnen Sie die Konsole auf Version 2. https://console.aws.amazon.com/ecs/](https://console.aws.amazon.com/ecs/v2)

1. Klicken Sie im Navigationsbereich auf **Cluster**.

1. Wählen Sie den Cluster aus, in dem sich Ihr Expressmodus-Dienst befindet, und wählen Sie ihn im Bereich **Dienste** aus.

1. Gehen Sie zur Registerkarte **Ressourcen** und wählen Sie die Aufgabendefinition aus.

1. Wählen Sie die Registerkarte **JSON** und dann den Abwärtspfeil in der oberen Schaltfläche mit der Bezeichnung **Neue Revision erstellen** aus. Hier finden Sie eine Aktion namens **Neue Revision mit JSON erstellen**.

1. Fügen Sie den Sidecar-Container vor oder nach Ihrer primären Container-Definition hinzu. Weitere Informationen finden Sie unter [Beispiel für eine Amazon ECS-Aufgabendefinition: Protokolle weiterleiten an FireLens](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/firelens-taskdef.html).

1. Wenn Sie einen Logging-Sidecar haben, wie in diesem Beispiel, sollten Sie den `logDriver` im Hauptcontainer ändern:

   ```
   "logConfiguration": {
       "logDriver": "awsfirelens"
   }
   ```

1. Gehen wir von den Standardeinstellungen für einen Expressmodus-Dienst aus, setzen Sie den primären Container memoryReservation auf 1998 und den Fluent Bit-Container memoryReservation auf 50. Dadurch wird sichergestellt, dass die gesamte Speicherreservierung für die beiden Container nicht die Menge überschreitet, die Sie für Ihre Fargate-Task ausgeführt haben (2048 für einen standardmäßigen Expressmodus-Dienst). 

1. Erstellen Sie Ihre neue Revision.

1. Klicken Sie auf das Drop-down-Menü mit der Aufschrift **Deploy** und wählen Sie **Update Service** aus.

1. Wählen Sie den **Cluster** und den **Dienst** aus, den Sie aktualisieren möchten, und wählen Sie dann **Neue Bereitstellung erzwingen** aus. Die Revision der Aufgabendefinition, die Sie gerade erstellt haben, sollte automatisch ausgewählt werden. Wählen Sie **Aktualisieren**.

1. Beobachten Sie, wie Ihr Einsatz stattfindet. Aufgaben in diesem Service haben jetzt zwei Container. Zusätzliche Aktualisierungen erfolgen über die Expressmodus-Konsole oder APIs überschreiben die Änderungen an der Aufgabendefinition nicht, es sei denn, sie stehen in direktem Konflikt. In diesem Fall beispielsweise, wenn Sie dem Expressmodus eine neue Protokollgruppe und einen neuen Namen für den Protokollstream geben würden, würde der LogDriver wieder aktualisiert. `awslogs` 

### Hinzufügen einer benutzerdefinierten Domain zu Ihrem Service
<a name="express-service-add-custom-domain"></a>

**Voraussetzungen:** In diesem Handbuch wird davon ausgegangen, dass es sich bei Ihrer Domain um eine gehostete Zone handelt, die von Route 53 mit einem ACM-Zertifikat verwaltet wird. Wenn Ihre Domain woanders gehostet wird, benötigen Sie einen CNAME, der auf den DNS-Eintrag des Application Load Balancer verweist.

1. [Öffnen Sie die Konsole auf Version 2. https://console.aws.amazon.com/ecs/](https://console.aws.amazon.com/ecs/v2)

1. Klicken Sie im Navigationsbereich auf **Cluster**.

1. Wählen Sie den Cluster aus, in dem sich Ihr Expressmodus-Dienst befindet, und wählen Sie ihn im Bereich **Dienste** aus.

1. Gehen Sie zur Registerkarte **Ressourcen** und wählen Sie die Listener-Regel aus.

1. Wählen Sie **Aktion** und **Regel bearbeiten** aus.

1. Kopieren Sie den aktuellen Host-Header-Wert (Ihre Anwendungs-URL) und **entfernen Sie** dann die Regel, da es von jedem Typ nur eine geben kann.

1. Fügen Sie eine Bedingung vom Typ **Host-Header** hinzu und fügen Sie Ihre Anwendungs-URL wieder als Host-Header-Bedingungswert ein.

1. Klicken Sie auf **ODER-Bedingungswert hinzufügen**.

1. Geben Sie hier Ihre benutzerdefinierte Domain ein.

1. Klicken Sie auf **Weiter** und **speichern Sie die Änderungen**.

1. Wählen Sie nun die Registerkarte **Zertifikate** des Application Load Balancer Balancer-Listeners aus.

1. Klicken Sie auf Zertifikat **hinzufügen**. Hier können Sie das Zertifikat in den Listener importieren.

1. Klicken Sie in Ihrer von Route 53 gehosteten Zone auf **Datensatz erstellen**, um einen Routing-Datensatz für Ihren Service zu erstellen.

1. Wählen Sie einen einfachen Routing-Datensatz aus.

1. Fügen Sie einen Datensatznamen hinzu.

1. Wählen Sie einen Datensatztyp aus.

1. Leiten Sie den Datenverkehr an einen **Alias für die Anwendung und den Classic Load Balancer weiter**.

1. Wählen Sie Ihre Region aus.

1. Wählen Sie den Load Balancer aus, den Ihr Express-Modus-Dienst verwendet.

Nach einigen Minuten für die Weitergabe beginnt Ihr Service, Traffic auf der benutzerdefinierten Domain zu empfangen. Wenn Sie Ihrem Application Load Balancer viele Zertifikate hinzufügen oder viele Expressmodus-Dienste von Ihrem Application Load Balancer aus bedienen, sollten Sie erwägen, das Dienstlimit für Zertifikate auf dem Application Load Balancer anzuheben.