Arbeiten mit 64-Bit-ARM-Workloads auf Amazon ECS - Amazon ECS

Arbeiten mit 64-Bit-ARM-Workloads auf Amazon ECS

Amazon ECS unterstützt die Verwendung von 64-Bit-ARM-Anwendungen. Sie können Ihre Anwendungen auf der Plattform ausführen, die von AWS-Graviton2-Prozessoren unterstützt werden. Sie ist für eine Vielzahl von Workloads geeignet. Dazu gehören Workloads wie Anwendungsserver, Microservices, Hochleistungs-Computing, CPU-basierte Machine-Learning-Inferenz, Videocodierung, elektronische Designautomatisierung, Spiele, Open-Source-Datenbanken und In-Memory-Caches.

Überlegungen

Beachten Sie die Folgendes, bevor Sie damit beginnen, Aufgabendefinitionen bereitzustellen, die die 64-Bit-ARM-Architektur verwenden:

  • Die Anwendungen können die Launchtypen Fargate oder EC2 verwenden.

  • Die Anwendungen können nur das Linux-Betriebssystem verwenden.

  • Für den Fargate-Typ müssen die Anwendungen die Fargate-Plattformversion 1.4.0 oder höher verwenden.

  • Die Anwendungen können Fluent Bit oder CloudWatch zur Überwachung verwenden.

  • Für den Fargate-Starttyp unterstützen die folgenden AWS-Regionen keine 64-Bit-ARM-Workloads:

    • In USA Ost (Nord-Virginia), die Availability Zone use1-az3

    • China (Peking)

    • China (Ningxia)

    • Afrika (Kapstadt)

    • Middle East (Bahrain)

    • AWS GovCloud (USA-Ost)

    • AWS GovCloud (USA-West)

    • In Asien-Pazifik (Osaka) speziell nur die Availability Zones apne3-az2 und apne3-az3

  • Für den Amazon-EC2-Starttyp, beachten Sie Folgendes, um zu überprüfen, ob die Region, in der Sie sich befinden, den gewünschten Instance-Typ unterstützt:

    Sie können auch den Amazon-EC2-Befehl describe-instance-type-offerings mit einem Filter verwenden, um das Instance-Angebot für Ihre Region anzuzeigen.

    aws ec2 describe-instance-type-offerings --filters Name=instance-type,Values=instance-type --region region

    Im folgenden Beispiel wird die Verfügbarkeit des M6-Instance-Typs in der Region USA Ost (Nord-Virginia) (us-east-1) überprüft.

    aws ec2 describe-instance-type-offerings --filters Name=instance-type,Values=M6 --region us-east-1

    Weitere Informationen finden Sie unter describe-instance-type-offerings in der Amazon-EC2-Befehlszeilenreferenz.

Angeben der ARM-Architektur in Ihrer Aufgabendefinition

Um die ARM-Architektur zu verwenden, geben Sie ARM64 für den Aufgabendefinitions-Parameter cpuArchitecture an.

Im folgenden Beispiel wird die ARM-Architektur in einer Aufgabendefinition angegeben. Sie ist im JSON-Format.

{ "runtimePlatform": { "operatingSystemFamily": "LINUX", "cpuArchitecture": "ARM64" }, ... }

Im folgenden Beispiel zeigt eine Aufgabendefinition für die ARM-Architektur „Hallo Welt“ an.

{ "family": "arm64-testapp", "networkMode": "awsvpc", "containerDefinitions": [ { "name": "arm-container", "image": "arm64v8/busybox", "cpu": 100, "memory": 100, "essential": true, "command": [ "echo hello world" ], "entryPoint": [ "sh", "-c" ] } ], "requiresCompatibilities": [ "FARGATE" ], "cpu": "256", "memory": "512", "runtimePlatform": { "operatingSystemFamily": "LINUX", "cpuArchitecture": "ARM64" }, "executionRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole" }

Schnittstellen zur Konfiguration von ARM

Sie können die ARM-CPU-Architektur für Amazon-ECS-Aufgabendefinitionen mit einer der folgenden Schnittstellen konfigurieren:

  • Neue Amazon-ECS-Konsole

  • AWS Command Line Interface (AWS CLI)

  • AWS-SDKs

  • AWS Copilot