Amazon Elastic Container Service auf AWS Outposts - 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 Elastic Container Service auf AWS Outposts

AWS Outposts ermöglicht native AWS Dienste, Infrastrukturen und Betriebsmodelle in lokalen Einrichtungen. In AWS Outposts Umgebungen können Sie dieselben AWS APIs Tools und dieselbe Infrastruktur verwenden wie in der AWS Cloud.

Amazon ECS on AWS Outposts ist ideal für Workloads mit niedriger Latenz, die in unmittelbarer Nähe zu lokalen Daten und Anwendungen ausgeführt werden müssen.

Weitere Informationen zu AWS Outposts finden Sie im AWS Outposts Benutzerhandbuch.

Überlegungen

Im Folgenden finden Sie Überlegungen zur Verwendung von Amazon ECS auf AWS Outposts:

  • Amazon Elastic Container Registry und Network Load Balancer werden in der AWS Region ausgeführt, nicht auf AWS Outposts. AWS Identity and Access Management Dies erhöht die Latenzen zwischen diesen Diensten und den Containern.

  • AWS Fargate ist nicht verfügbar am. AWS Outposts

Im Folgenden finden Sie Überlegungen zur Netzwerkkonnektivität für AWS Outposts:

  • Wenn die Netzwerkkonnektivität zwischen Ihrer AWS Region AWS Outposts und der Region unterbrochen wird, laufen Ihre Cluster weiter. Sie können jedoch keine neuen Cluster erstellen oder neue Aktionen für vorhandene Cluster ausführen, bis die Verbindung wiederhergestellt wurde. Bei Instance-Fehlern wird die Instance nicht automatisch ersetzt. Der CloudWatch Logs-Agent kann keine Protokolle und Ereignisdaten aktualisieren.

  • Wir empfehlen Ihnen, eine zuverlässige, hochverfügbare Konnektivität mit geringer Latenz zwischen Ihrer Region AWS Outposts und AWS der Region bereitzustellen.

Voraussetzungen

Die folgenden Voraussetzungen gelten für die Verwendung von Amazon ECS auf AWS Outposts:

  • Sie müssen ein Outpost in Ihrem On-Premises-Rechenzentrum installiert und konfiguriert haben.

  • Sie müssen über eine zuverlässige Netzwerkverbindung zwischen Ihrem Outpost und der entsprechenden AWS -Region verfügen.

Überblick über die Clustererstellung auf AWS Outposts

Im Folgenden finden Sie eine Übersicht über die Konfiguration:

  1. Erstellen Sie eine Rolle und eine Richtlinie mit aktivierten Rechten AWS Outposts.

  2. Erstellen Sie ein IAM-Instance-Profil mit Rechten im AWS Outposts.

  3. Erstellen Sie eine VPC oder verwenden Sie eine vorhandene, die sich in derselben Region wie Ihre AWS Outposts befindet.

  4. Erstellen Sie ein Subnetz oder verwenden Sie ein vorhandenes, das mit dem verknüpft ist. AWS Outposts

    Dies ist das Subnetz, in dem die Container-Instances ausgeführt werden.

  5. Erstellen Sie eine Sicherheitsgruppe für die Container-Instances in Ihrem Cluster.

  6. Erstellen Sie einen Amazon-ECS-Cluster.

  7. Definieren Sie die Umgebungsvariablen für den Amazon ECS-Container-Agenten, um die Instance im Cluster zu starten.

  8. Führen Sie einen Container aus.

Ausführliche Informationen zur Integration von Amazon ECS finden Sie unter Amazon ECS auf zwei AWS Outposts Racks erweitern. AWS Outposts

Im folgenden Beispiel wird ein Amazon ECS-Cluster in einem AWS Outposts erstellt.

  1. Erstellen Sie eine Rolle und eine Richtlinie mit aktivierten Rechten AWS Outposts.

    Die role-policy.json-Datei ist das Richtliniendokument, das die Auswirkungen und Aktionen für Ressourcen enthält. Informationen zum Dateiformat finden Sie PutRolePolicyin der IAM-API-Referenz

    aws iam create-role –-role-name ecsRole \ --assume-role-policy-document file://ecs-policy.json aws iam put-role-policy --role-name ecsRole --policy-name ecsRolePolicy \ --policy-document file://role-policy.json
  2. Erstellen Sie ein IAM-Instance-Profil mit Rechten im AWS Outposts.

    aws iam create-instance-profile --instance-profile-name outpost aws iam add-role-to-instance-profile --instance-profile-name outpost \ --role-name ecsRole
  3. Erstellen Sie eine VPC.

    aws ec2 create-vpc --cidr-block 10.0.0.0/16
  4. Erstellen Sie ein Subnetz, das Ihrem zugeordnet ist. AWS Outposts

    aws ec2 create-subnet \ --cidr-block 10.0.3.0/24 \ --vpc-id vpc-xxxxxxxx \ --outpost-arn arn:aws:outposts:us-west-2:123456789012:outpost/op-xxxxxxxxxxxxxxxx \ --availability-zone-id usw2-az1
  5. Erstellen Sie eine Sicherheitsgruppe für die Container-Instances und geben Sie den richtigen CIDR-Bereich für den AWS Outposts an. (Dieser Schritt ist anders für AWS Outposts.)

    aws ec2 create-security-group --group-name MyOutpostSG aws ec2 authorize-security-group-ingress --group-name MyOutpostSG --protocol tcp \ --port 22 --cidr 10.0.3.0/24 aws ec2 authorize-security-group-ingress --group-name MyOutpostSG --protocol tcp \ --port 80 --cidr 10.0.3.0/24
  6. Erstellen Sie den Cluster.

  7. Definieren Sie die Umgebungsvariablen des Amazon-ECS-Container-Agenten, um die Instance in dem im vorherigen Schritt erstellten Cluster zu launchen und definieren Sie alle Tags, die Sie hinzufügen möchten, um den Cluster zu identifizieren (z. B. Outpost, um anzugeben, dass der Cluster für einen Outpost bestimmt ist).

    #! /bin/bash cat << ‘EOF’ >> /etc/ecs/ecs.config ECS_CLUSTER=MyCluster ECS_IMAGE_PULL_BEHAVIOR=prefer-cached ECS_CONTAINER_INSTANCE_TAGS={“environment”: ”Outpost”} EOF
    Anmerkung

    Um Verzögerungen zu vermeiden, die durch das Abrufen von Container-Images aus Amazon ECR in die Region verursacht werden, verwenden Sie Image-Caches. Konfigurieren Sie dazu bei jeder Ausführung einer Aufgabe den Amazon ECS-Agenten so, dass er standardmäßig das zwischengespeicherte Image für die Instance selbst verwendet, indem Sie ECS_IMAGE_PULL_BEHAVIOR auf prefer-cached einstellen.

  8. Erstellen Sie die Container-Instance, wobei Sie die VPC und das Subnetz für den AWS Outposts angeben, auf dem diese Instance ausgeführt werden soll, sowie einen Instance-Typ, der im AWS Outposts verfügbar ist. (Dieser Schritt ist anders für AWS Outposts.)

    Die userdata.txt-Datei enthält die Benutzerdaten, die die Instance für allgemeine automatisierte Konfigurationsaufgaben und sogar zur Ausführung von Skripts nach dem Start der Instance verwenden können. Informationen zur Datei für API-Aufrufe finden Sie unter Befehle auf Ihrer Linux-Instance beim Start ausführen im EC2 Amazon-Benutzerhandbuch.

    aws ec2 run-instances --count 1 --image-id ami-xxxxxxxx --instance-type c5.large \ --key-name aws-outpost-key –-subnet-id subnet-xxxxxxxxxxxxxxxxx \ --iam-instance-profile Name outpost --security-group-id sg-xxxxxx \ --associate-public-ip-address --user-data file://userdata.txt
    Anmerkung

    Dieser Befehl wird auch verwendet, wenn dem Cluster zusätzliche Instances hinzugefügt werden. Alle Container, die im Cluster bereitgestellt werden, werden in diesem bestimmten AWS Outposts platziert.