Parameter der Amazon ECS-Servicedefinition - 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.

Parameter der Amazon ECS-Servicedefinition

Eine Servicedefinition legt fest, wie der Amazon-ECS-Service ausgeführt werden soll. Die folgenden Parameter können in einer Servicedefinition angegeben werden.

Starttyp

launchType

Typ: Zeichenfolge

Zulässige Werte: EC2 | FARGATE | EXTERNAL

Erforderlich: Nein

Der Starttyp, der für die Ausführung Ihres Service verwendet wird. Ist kein Starttyp angegeben, wird standardmäßig capacityProviderStrategy verwendet. Weitere Informationen finden Sie unter Amazon-ECS-Starttypen.

Wenn eine launchType angegeben ist, muss der capacityProviderStrategy-Parameter weggelassen werden.

Kapazitätsanbieterstrategie

capacityProviderStrategy

Typ: Array von -Objekten

Erforderlich: Nein

Die Kapazitätsanbieterstrategie, die für den Service verwendet werden soll.

Eine Kapazitätsanbieterstrategie besteht aus einem oder mehreren Kapazitätsanbietern sowie dem ihnen zuzuweisenden base- und weight-Wert. Ein Kapazitätsanbieter muss dem Cluster zugeordnet sein, um in einer Kapazitätsanbieterstrategie verwendet werden zu können. Die PutClusterCapacityProviders API wird verwendet, um einen Kapazitätsanbieter mit einem Cluster zu verknüpfen. Es können nur Kapazitätsanbieter mit dem Status ACTIVE oder UPDATING verwendet werden.

Wenn eine capacityProviderStrategy angegeben ist, muss der launchType-Parameter weggelassen werden. Wenn keine capacityProviderStrategy oder kein launchType angegeben ist, wird die defaultCapacityProviderStrategy für den Cluster verwendet.

Wenn Sie einen Kapazitätsanbieter angeben wollen, der eine Auto-Scaling-Gruppe verwendet, muss der Kapazitätsanbieter bereits erstellt sein. Neue Kapazitätsanbieter können mit dem CreateCapacityProvider API-Vorgang erstellt werden.

Um einen AWS Fargate-Kapazitätsanbieter zu verwenden, geben Sie entweder den FARGATE oder den FARGATE_SPOT Kapazitätsanbieter an. Die AWS Fargate-Kapazitätsanbieter sind für alle Konten verfügbar und müssen nur mit einem Cluster verknüpft werden, um verwendet zu werden.

Die PutClusterCapacityProviders API-Operation wird verwendet, um die Liste der verfügbaren Kapazitätsanbieter für einen Cluster zu aktualisieren, nachdem der Cluster erstellt wurde.

capacityProvider

Typ: Zeichenfolge

Erforderlich: Ja

Der Kurzname oder vollständige Amazon-Ressourcenname (ARN) des Kapazitätsanbieters.

weight

Typ: Ganzzahl

Gültiger Bereich: Ganzzahlen zwischen 0 und 1.000.

Erforderlich: Nein

Der Gewichtungswert gibt den relativen Prozentsatz der Gesamtzahl der gestarteten Aufgaben an, die den angegebenen Kapazitätsanbieter verwenden.

Nehmen Sie beispielsweise an, Sie haben eine Strategie, die zwei Kapazitätsanbieter enthält und beide eine Gewichtung von einem haben. Wenn die Basis zufrieden ist, werden die Aufgaben gleichmäßig auf die beiden Kapazitätsanbieter aufgeteilt. Unter Verwendung derselben Logik nehmen Sie an, dass Sie für capacityProviderA ein Gewicht von 1 und für capacityProviderB ein Gewicht von 4 angeben. Dann wird für jede Aufgabe, die mit capacityProviderA ausgeführt wird, vier Aufgaben mit capacityProviderB ausgeführt.

base

Typ: Ganzzahl

Gültiger Bereich: Ganzzahlen zwischen 0 und 100.000.

Erforderlich: Nein

Der Basiswert gibt an, wie viele Aufgaben mindestens mit dem angegebenen Kapazitätsanbieter ausgeführt werden sollen. In einer Kapazitätsanbieterstrategie kann nur für einen Kapazitätsanbieter ein Basiswert festgelegt werden.

Aufgabendefinition

taskDefinition

Typ: Zeichenfolge

Erforderlich: Nein

family und revision (family:revision) oder der vollständige Amazon-Ressourcenname (ARN) der Aufgabendefinition, die in Ihrem Service ausgeführt werden soll. Wenn keine revision angegeben ist, wird die neueste ACTIVE-Revision der angegebenen Familie verwendet.

Eine Aufgabendefinition muss angegeben werden, wenn der Rolling-Update (ECS)-Bereitstellungs-Controller verwendet wird.

Plattform-Betriebssystem

platformFamily

Typ: Zeichenfolge

Required: Conditional

Standard: Linux

Dieser Parameter ist für Amazon-ECS-Services erforderlich, die auf Fargate gehostet werden.

Dieser Parameter wird für Amazon ECS-Services, die auf Amazon EC2 gehostet werden, ignoriert.

Das Betriebssystem auf den Containern, auf denen der Service ausgeführt wird. Die gültigen Werte sind LINUX, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2022_FULL und WINDOWS_SERVER_2022_CORE.

Der platformFamily-Wert für jede Aufgabe, die Sie für den Service angeben, muss mit dem platformFamily-Wert des Services übereinstimmen. Zum Beispiel: Wenn Sie platformFamily auf WINDOWS_SERVER_2019_FULL festlegen, muss der platformFamily-Wert für alle Aufgaben WINDOWS_SERVER_2019_FULL sein.

Plattformversion

platformVersion

Typ: Zeichenfolge

Erforderlich: Nein

Die Plattformversion, auf der Ihre Aufgaben im Service ausgeführt werden. Eine Plattformversion ist nur für Aufgaben mit dem Starttyp Fargate vorgesehen. Ist kein solcher angegeben, wird standardmäßig die neueste Version (LATEST) verwendet.

AWS Fargate-Plattformversionen werden verwendet, um auf eine bestimmte Laufzeitumgebung für die Fargate-Task-Infrastruktur zu verweisen. Bei der Angabe der LATEST-Plattformversion bei Ausführung einer Aufgabe oder beim Erstellen eines Service erhalten Sie die aktuellste Plattformversion, die für Ihre Aufgaben zur Verfügung steht. Wenn Sie Ihren Service skalieren, erhalten diese Aufgaben die Plattformversion, die in der aktuellen Bereitstellung des Service angegeben wurde. Weitere Informationen finden Sie unter Fargate Linux-Plattformversionen für Amazon ECS.

Anmerkung

Plattformversionen werden nicht für Aufgaben angegeben, die den Starttyp EC2 verwenden.

Cluster

cluster

Typ: Zeichenfolge

Erforderlich: Nein

Die Kurzbezeichnung oder der vollständige Amazon-Ressourcenname (ARN) des Clusters, auf dem Sie Ihren Service ausführen. Wenn Sie keinen Cluster angeben, wird der default-Cluster verwendet.

Service-Name

serviceName

Typ: Zeichenfolge

Erforderlich: Ja

Der Name Ihres Service. Bis zu 255 Buchstaben (Groß- und Kleinbuchstaben), Ziffern, Bindestriche und Unterstriche sind zulässig. Servicenamen in einem Cluster müssen eindeutig sein. Sie können jedoch ähnlich benannte Services in mehreren Clustern innerhalb einer Region oder in mehreren Regionen haben.

Einplanungsstrategie

schedulingStrategy

Typ: Zeichenfolge

Zulässige Werte: REPLICA | DAEMON

Erforderlich: Nein

Die Einplanungsstrategie, die verwendet werden soll. Wenn keine Einplanungsstrategie angegeben wird, wird die REPLICA-Strategie verwendet. Weitere Informationen finden Sie unter Amazon-ECS-Dienstleistungen.

Es gibt zwei Strategien für Service-Scheduler:

  • REPLICA: Die Replica-Einplanungsstrategie platziert und die gewünschte Anzahl von Aufgaben in Ihrem Cluster und behält sie bei. Standardmäßig verteilt der Service-Scheduler Aufgaben über Availability Zones. Mit Aufgabenplatzierungsstrategien und -bedingungen können Sie festlegen, wie Aufgaben platziert und beendet werden. Weitere Informationen finden Sie unter Replikat-Strategie.

  • DAEMON: Die Daemon-Einplanungsstrategie stellt genau eine Aufgabe auf jeder aktiven Container-Instance bereit, die alle von Ihnen in Ihrem Cluster angegebenen Platzierungsbedingungen für die Aufgaben erfüllt. Bei Verwendung dieser Strategie ist es nicht erforderlich, eine gewünschte Anzahl von Aufgaben oder eine Aufgabenplatzierungsstrategie anzugeben oder Auto-Scaling-Richtlinien zu verwenden. Weitere Informationen finden Sie unter Daemon-Strategie.

    Anmerkung

    Fargate-Aufgaben unterstützen die DAEMON-Einplanungsstrategie nicht.

Gewünschte Anzahl

desiredCount

Typ: Ganzzahl

Erforderlich: Nein

Die Anzahl der Instanziierungen der angegebenen Aufgabendefinition, die in Ihrem Service platziert und ausgeführt werden sollen.

Dieser Parameter ist erforderlich, wenn die REPLICA-Einplanungsstrategie verwendet wird. Wenn der Service die DAEMON-Einplanungsstrategie verwendet, ist dieser Parameter optional.

Bereitstellungskonfiguration

deploymentConfiguration

Typ: Objekt

Erforderlich: Nein

Optionale Bereitstellungsparameter zur Steuerung, wie viele Aufgaben während der Bereitstellung ausgeführt werden, und zur Steuerung der Reihenfolge beim Starten oder Stoppen von Aufgaben.

maximumPercent

Typ: Ganzzahl

Erforderlich: Nein

Wenn ein Service den Bereitstellungstyp der fortlaufenden Aktualisierung (ECS) verwendet, stellt der maximumPercent-Parameter eine Obergrenze für die Anzahl der Aufgaben Ihres Services dar, die während einer Bereitstellung im RUNNING-, STOPPING- oder PENDING-Status zulässig sind. Es wird als Prozentsatz des desiredCount ausgedrückt, der auf den nächsten ganzen Wert abgerundet wird. Mithilfe dieses Parameters können Sie die Größe der Verteilungsstapel definieren. Wenn Ihr Service beispielsweise den Service-Scheduler REPLICA verwendet und einen desiredCount-Wert von vier Aufgaben und einen maximumPercent-Wert von 200 % hat, könnte der Scheduler vier neue Aufgaben starten, bevor er die vier älteren Aufgaben stoppt. Voraussetzung dafür ist, dass die dafür erforderlichen Cluster-Ressourcen zur Verfügung stehen. Der maximumPercent-Standardwert für einen Service mit dem REPLICA-Service-Scheduler beträgt 200 %.

Wenn Ihr Service den Service-Scheduler-Typ DAEMON verwendet, sollte maximumPercent bei 100 % verbleiben. Dies ist der Standardwert.

Die maximale Anzahl von Aufgaben während einer Bereitstellung ist die desiredCount multipliziert mit dem maximumPercent/100, abgerundet auf die nächste ganze Zahl.

Bei einem Service mit entweder dem Bereitstellungstyp „Blau/Grün“ (CODE_DEPLOY) oder EXTERNAL und bei Aufgaben mit dem Starttyp EC2 ist der Wert für den maximalen Prozentsatz auf den Standardwert eingestellt und wird zum Definieren der Obergrenze für die Anzahl der Aufgaben im Service verwendet, die im Zustand RUNNING verbleiben, während sich die Container-Instances im Zustand DRAINING befinden. Wenn die Aufgaben im Service den Starttyp Fargate verwenden, wird der maximale Prozentwert nicht verwendet, obwohl er bei der Beschreibung Ihres Services zurückgegeben wird.

minimumHealthyPercent

Typ: Ganzzahl

Erforderlich: Nein

Wenn ein Service den Bereitstellungstyp der fortlaufenden Aktualisierung (ECS) verwendet, stellt der minimumHealthyPercent eine Untergrenze für die Anzahl der Aufgaben Ihres Service dar, die während einer Bereitstellung im RUNNING-Status bleiben müssen. Dies wird als Prozentsatz des desiredCount ausgedrückt, der auf den nächsten ganzen Wert abgerundet wird. Sie können diesen Parameter verwenden, um die Bereitstellung ohne zusätzliche Cluster-Kapazität durchzuführen. Wenn Ihr Service beispielsweise eine desiredCount von vier Aufgaben und einen minimumHealthyPercent von 50 % hat, stoppt der Service-Scheduler zwei vorhandene Aufgaben, um Cluster-Kapazität freizugeben, bevor er zwei neue Aufgaben startet.

Bei Services, die keinen Load Balancer verwenden, ist Folgendes zu beachten:

  • Ein Service gilt als fehlerfrei, wenn alle entscheidenden Container innerhalb der Aufgaben im Service ihre Zustandsprüfungen bestehen.

  • Wenn für eine Aufgabe keine wesentlichen Container mit einer Zustandsprüfung definiert sind, wartet der Service-Scheduler 40 Sekunden, nachdem eine Aufgabe den RUNNING-Status erreicht hat, bevor die Aufgabe auf den minimalen fehlerfreien Gesamtprozentsatz angerechnet wird.

  • Wenn für eine Aufgabe ein oder mehrere wesentliche Container mit einer Zustandsprüfung definiert sind, wartet der Service-Scheduler, bis die Aufgabe einen fehlerfreien Status erreicht, bevor er sie auf den minimalen fehlerfreien Gesamtprozentsatz anrechnet. Eine Aufgabe gilt als fehlerfrei, wenn alle entscheidenden Container innerhalb der Aufgabe ihre Zustandsprüfungen bestanden haben. Wie lange der Service-Scheduler warten kann, wird durch die Einstellungen für die Zustandsprüfung der Container bestimmt. Weitere Informationen finden Sie unter Zustandsprüfung.

Bei Services, die einen Load Balancer verwenden, ist Folgendes zu beachten:

  • Wenn für eine Aufgabe keine wesentlichen Container mit einer Zustandsprüfung definiert sind, wartet der Service-Scheduler, bis die Zustandsprüfung der Load Balancer-Zielgruppe einen fehlerfreien Status zurückgibt, bevor er die Aufgabe auf den Mindestprozentsatz für den fehlerfreien Zustand anrechnet.

  • Wenn für eine Aufgabe ein wesentlicher Container mit einer Zustandsprüfung definiert ist, wartet der Service-Scheduler darauf, dass sowohl die Aufgabe einen fehlerfreien Status erreicht als auch die Zustandsprüfung der Load-Balancer-Zielgruppe einen fehlerfreien Status zurückgibt, bevor er die Aufgabe auf den Mindestprozentsatz an fehlerfreien Aufgaben anrechnet.

Der Standardwert für einen Replica-Service für minimumHealthyPercent ist 100 %. Der minimumHealthyPercent Standardwert für einen Service, der den DAEMON Serviceplan verwendet, ist 0% für die AWS CLI, die AWS SDKs und die APIs und 50% für. AWS Management Console

Die Mindestanzahl fehlerfreier Aufgaben während einer Bereitstellung ist die desiredCount multipliziert mit dem minimumHealthyPercent/100, aufgerundet auf die nächste ganze Zahl.

Bei einem Service, der entweder Bereitstellungstyp „Blau/Grün“ (CODE_DEPLOY) oder EXTERNAL verwendet und Aufgaben mit dem Starttyp EC2 ausführt, ist der Wert für den mindestens fehlerfreier Prozentsatz auf den Standardwert eingestellt und wird zum Definieren der Untergrenze für die Anzahl der Aufgaben im Service verwendet, die im Zustand RUNNING verbleiben, während sich die Container-Instances im Zustand DRAINING befinden. Wenn die Aufgaben im Service den Starttyp Fargate ausführen und der Service entweder Bereitstellungstyp „Blau/Grün“ (CODE_DEPLOY) oder EXTERNAL verwendet, wird der mindestens fehlerfreie Prozentwert nicht verwendet, obwohl er bei der Beschreibung Ihres Service zurückgegeben wird.

Bereitstellungs-Controller

deploymentController

Typ: Objekt

Erforderlich: Nein

Der für den Service zu verwendende Bereitstellungs-Controller. Wenn kein Bereitstellungs-Controller angegeben wird, wird der ECS-Controller verwendet. Weitere Informationen finden Sie unter Amazon-ECS-Dienstleistungen.

type

Typ: Zeichenfolge

Zulässige Werte: ECS | CODE_DEPLOY | EXTERNAL

Erforderlich: Ja

Der zu verwendende Controller-Typ der Bereitstellung. Es sind drei Bereitstellungs-Controller-Typen verfügbar:

ECS

Bei dem Bereitstellungstyp der fortlaufenden Aktualisierung (ECS) wird die aktuell ausgeführte Version des Containers durch die neueste Version ersetzt. Die Anzahl von Containern, die von Amazon ECS während einer fortlaufenden Aktualisierung zum Service hinzugefügt oder daraus entfernt werden, wird durch Anpassen der minimal und maximal zulässigen Anzahl fehlerfreier Aufgaben während einer Service-Bereitstellung wie unter deploymentConfiguration angegeben gesteuert.

CODE_DEPLOY

Der Bereitstellungstyp blau/grün (CODE_DEPLOY) verwendet das Bereitstellungsmodell blau/grün (powered by) CodeDeploy, mit dem Sie eine neue Bereitstellung eines Dienstes überprüfen können, bevor Sie Produktionsdatenverkehr an diesen senden.

EXTERNAL

Verwenden Sie den externen Bereitstellungstyp, wenn Sie einen beliebigen Drittanbieter-Bereitstellungs-Controller für die vollständige Kontrolle über den Bereitstellungsprozess für einen Amazon-ECS-Service verwenden möchten.

Platzierung von Aufgaben

placementConstraints

Typ: Array von -Objekten

Erforderlich: Nein

Ein Array von Platzierungseinschränkungsobjekten, die für Aufgaben in Ihrem Service verwendet werden sollen. Sie können maximal zehn Einschränkungen pro Aufgabe festlegen. Das Limit enthält Einschränkungen in der Aufgabendefinition und solche, die während der Laufzeit festgelegt werden. Wenn Sie den Starttyp Fargate verwenden, werden keine Einschränkungen für die Aufgabenplatzierung unterstützt.

type

Typ: Zeichenfolge

Erforderlich: Nein

Der Typ der Einschränkung. Um sicherzustellen, dass die einzelnen Aufgaben in einer bestimmten Gruppe auf einer anderen Container-Instance ausgeführt werden, verwenden Sie distinctInstance. Verwenden Sie memberOf, um die Auswahl auf eine Gruppe gültiger Kandidaten zu beschränken. Der Wert distinctInstance wird in Aufgabendefinitionen nicht unterstützt.

expression

Typ: Zeichenfolge

Erforderlich: Nein

Ein Ausdruck in Cluster-Abfragesprache, der auf die Einschränkung anzuwenden ist. Sie können keinen Ausdruck angeben, wenn der Einschränkungstyp distinctInstance lautet. Weitere Informationen finden Sie unter Erstellen Sie Ausdrücke, um Container-Instances für Amazon ECS-Aufgaben zu definieren.

placementStrategy

Typ: Array von -Objekten

Erforderlich: Nein

Die Platzierungsstrategieobjekte, die für Aufgaben in Ihrem Service verwendet werden sollen. Sie können maximal vier Strategieregeln pro Service festlegen.

type

Typ: Zeichenfolge

Zulässige Werte: random | spread | binpack

Erforderlich: Nein

Der Typ der Platzierungsstrategie. Die random-Platzierungsstrategie platziert zufällig Aufgaben in verfügbaren Kandidaten. Die spread-Platzierungsstrategie verteilt die Platzierungen anhand der field-Parameter gleichmäßig auf die verfügbaren Kandidaten. Die binpack-Strategie platziert Aufgaben in verfügbaren Kandidaten, die mindestens über die im field-Parameter festgelegte Ressourcenmenge verfügen. Wenn Sie beispielsweise den Arbeitsspeicher verringern, wird eine Aufgabe auf der Instance mit dem geringsten verbleibenden Arbeitsspeicher platziert, der aber noch ausreicht, um die Aufgabe auszuführen.

field

Typ: Zeichenfolge

Erforderlich: Nein

Das Feld zur Anwendung der Platzierungsstrategie. Gültige Werte für die spread-Platzierungsstrategie sind instanceId (oder host mit denselben Auswirkungen) oder jedes weitere Plattform- oder benutzerdefiniertes Attribut, das auf ein Container-Instance angewendet wird, z. B. attribute:ecs.availability-zone. Für die binpack-Placement-Strategie gültige Werte sind cpu und memory. Für die random-Placement-Strategie wird dieses Feld nicht verwendet.

Tags

tags

Typ: Array von -Objekten

Erforderlich: Nein

Die Metadaten, die Sie auf den Service anwenden, um die Kategorisierung und Organisation zu erleichtern. Jeder Tag (Markierung) besteht aus einem Schlüssel und einem optionalen Wert, beides können Sie bestimmen. Wenn ein Service gelöscht wird, werden auch die Tags gelöscht. Es können maximal 50 Tags auf den Service angewendet werden. Weitere Informationen finden Sie unter Verschlagwortung von Amazon ECS-Ressourcen.

key

Typ: Zeichenfolge

Längenbeschränkungen: Minimale Länge beträgt 1 Zeichen. Maximale Länge beträgt 128 Zeichen.

Erforderlich: Nein

Ein Teil eines Schlüssel-Wert-Paares, aus dem ein Tag besteht. Ein Schlüssel ist eine allgemeine Bezeichnung, die wie eine Kategorie für spezifischere Tag-Werte fungiert.

value

Typ: Zeichenfolge

Längenbeschränkungen: Minimale Länge von 0. Maximale Länge beträgt 256 Zeichen.

Erforderlich: Nein

Der optionale Teil eines Schlüssel-Wert-Paares, aus dem ein Tag besteht. Ein Wert fungiert als Deskriptor in einer Tag-Kategorie (Schlüssel).

enableECSManagedTags

Typ: Boolesch

Zulässige Werte: true | false

Erforderlich: Nein

Gibt an, ob von Amazon ECS verwaltete Tags für Aufgaben im Service verwendet werden sollen. Der Standardwert ist false, wenn kein Wert angegeben wird. Weitere Informationen finden Sie unter Verwenden Sie Tags für die Abrechnung.

propagateTags

Typ: Zeichenfolge

Zulässige Werte: TASK_DEFINITION | SERVICE

Erforderlich: Nein

Gibt an, ob die Tags von der Aufgabendefinition oder dem Service in die Aufgaben in dem Service kopiert werden sollen. Wenn kein Wert angegeben wird, werden die Tags nicht kopiert. Tags können nur während der Serviceerstellung in die Aufgaben in dem Service kopiert werden. Wenn Sie Tags nach der Service- oder Aufgabenerstellung einer Aufgabe hinzufügen möchten, verwenden Sie die API-Aktion TagResource.

Netzwerkkonfiguration

networkConfiguration

Typ: Objekt

Erforderlich: Nein

Die Netzwerkkonfiguration für den Service. Dieser Parameter ist für Aufgabendefinitionen erforderlich, die den Netzwerkmodus awsvpc verwenden, um ihre eigene Elastic-Network-Schnittstelle zu empfangen. Für andere Netzwerkmodus wird er nicht unterstützt. Wenn Sie den Fargate-Starttyp verwenden, ist der Netzwerkmodus awsvpc erforderlich. Weitere Informationen über Netzwerke für den Amazon EC2 EC2-Starttyp finden Sie unterNetzwerkoptionen für Amazon ECS-Aufgaben für den EC2-Starttyp. Weitere Informationen zu Netzwerken für den Fargate-Starttyp finden Sie unter Fargate Task Networking.

awsvpcConfiguration

Typ: Objekt

Erforderlich: Nein

Ein Objekt, das die Subnetze und Sicherheitsgruppen für eine Aufgabe oder einen Service darstellt.

subnets

Typ: Zeichenfolgen-Array

Erforderlich: Ja

Die Subnetze, die der Aufgabe oder dem Service zugeordnet sind. Es gibt ein Limit von 16 Subnetzen, die gemäß awsvpcConfiguration festgelegt werden können.

securityGroups

Typ: Zeichenfolgen-Array

Erforderlich: Nein

Die Sicherheitsgruppen, die der Aufgabe oder dem Service zugeordnet sind. Wenn Sie keine Sicherheitsgruppe angeben, wird die Standardsicherheitsgruppe für die VPC verwendet. Es gibt ein Limit von fünf Sicherheitsgruppen, die basierend auf awsvpcConfiguration festgelegt werden können.

assignPublicIP

Typ: Zeichenfolge

Zulässige Werte: ENABLED | DISABLED

Erforderlich: Nein

Gibt an, ob die Elastic-Network-Schnittstelle eine öffentliche IP-Adresse erhält. Wenn kein Wert angegeben wird, wird der Standardwert DISABLED verwendet.

healthCheckGracePeriodSeconds

Typ: Ganzzahl

Erforderlich: Nein

Die Zeitdauer in Sekunden, die der Amazon-ECS-Service-Scheduler fehlerhafte Elastic Load Balancing-Zustandsprüfungen des Ziels, Container-Zustandsprüfungen und Route 53-Zustandsprüfungen ignorieren soll, nachdem eine Aufgabe in den Status RUNNING wechselt. Dies gilt nur, wenn Ihr Service für die Verwendung eines Load Balancers konfiguriert ist. Wenn für Ihren Service ein Load Balancer definiert ist und Sie keinen Wert für die Übergangsfrist der Zustandsprüfung angeben, wird der Standardwert von 0 verwendet.

Wenn es eine Weile dauert, bis die Aufgaben Ihres Service starten und auf die Zustandsprüfungen reagieren, können Sie für die Zustandsprüfungen eine Übergangsfrist von bis zu 2,147,483,647 Sekunden angeben. Während dieses Zeitraums ignoriert der ECS-Service-Scheduler den Status der Zustandsprüfungen. Durch diese Übergangsfrist wird verhindert, dass der ECS-Service-Scheduler Aufgaben als fehlerhaft markiert und stoppt, bevor sie gestartet werden können.

Wenn Sie kein Elastic Load Balancing verwenden, empfehlen wir Ihnen, die startPeriod in den Zustandsprüfungs-Parametern der Aufgabendefinition zu verwenden. Weitere Informationen finden Sie unter Ermitteln des Status von Amazon ECS-Aufgaben mithilfe von Container-Zustandsprüfungen.

loadBalancers

Typ: Array von -Objekten

Erforderlich: Nein

Ein Load Balancer-Objekt, das den Load Balancer angibt, der mit Ihrem Service verwendet werden soll. Für Services, die einen Application Load Balancer oder einen Network Load Balancer verwenden, gibt es ein Limit von fünf Zielgruppen, die Sie an einen Service anfügen können.

Nachdem Sie einen Dienst erstellt haben, kann die Load Balancer-Konfiguration von AWS Management Console nicht mehr geändert werden. Sie können den AWS Copilot AWS CLI oder das SDK verwenden AWS CloudFormation, um die Load Balancer-Konfiguration nur für den ECS Rolling Deployment Controller zu ändern, nicht für AWS CodeDeploy blau/grün oder extern. Wenn Sie eine Konfiguration für den Load Balancer hinzufügen, aktualisieren oder entfernen, startet Amazon ECS eine neue Bereitstellung mit der aktualisierten Konfiguration Elastic Load Balancing. Dies führt dazu, dass sich Aufgaben bei Load Balancern registrieren und von diesen abmelden. Wir empfehlen, dass Sie dies in einer Testumgebung überprüfen, bevor Sie die Konfiguration Elastic Load Balancing Balancing aktualisieren. Informationen zum Ändern der Konfiguration finden Sie UpdateServicein der Amazon Elastic Container Service API-Referenz.

Für Application Load Balancers und Network Load Balancers muss dieses Objekt den Zielgruppen-ARN des Load Balancers, den Namen des Containers (wie in der Containerdefinition angegeben) sowie den Container-Port enthalten, auf den vom Load Balancer aus zugegriffen werden soll. Wenn eine Aufgabe von diesem Service auf eine Container-Instance gesetzt wird, wird die Kombination aus Container-Instance und Port als Ziel in der hier angegebenen Zielgruppe registriert.

targetGroupArn

Typ: Zeichenfolge

Erforderlich: Nein

Der vollständige Amazon-Ressourcenname (ARN) der Elastic-Load-Balancing-Zielgruppe die einem Service angefügt sind.

Ein Zielgruppen-ARN wird nur bei Verwendung eines Application Load Balancers oder eines Network Load Balancers angegeben.

loadBalancerName

Typ: Zeichenfolge

Erforderlich: Nein

Der Name des Load Balancer, der dem Service zugeordnet werden soll.

Wenn Sie einen Application Load Balancer oder einen Network Load Balancer verwenden, lassen Sie den Load-Balancer-Name-Parameter weg.

containerName

Typ: Zeichenfolge

Erforderlich: Nein

Der Name des Containers (wie in der Containerdefinition angegeben), der mit dem Load Balancer verknüpft werden soll.

containerPort

Typ: Ganzzahl

Erforderlich: Nein

Der Port auf dem Container, der mit dem Load Balancer verknüpft werden soll. Dieser Port muss einem containerPort in der Aufgabendefinition entsprechen, die von den Aufgaben im Service verwendet wird. Für Aufgaben, die den EC2-Starttyp verwenden, muss die Container Instance eingehenden Datenverkehr auf dem hostPort der Port-Zuweisung zulassen.

role

Typ: Zeichenfolge

Erforderlich: Nein

Der Kurzname oder vollständige ARM der IAM-Rolle, die es Amazon ECS ermöglicht, Aufrufe in Ihrem Namen an Ihren Load Balancer vorzunehmen. Dieser Parameter ist nur zulässig, wenn Sie einen Load Balancer mit einer einzelnen Zielgruppe für Ihren Service verwenden und Ihre Aufgabendefinition nicht den Netzwerkmodus awsvpc verwendet. Wenn Sie den role-Parameter festlegen, müssen Sie auch ein Load Balancer-Objekt mit dem loadBalancers-Parameter angeben.

Wenn Ihre festgelegte Rolle einen anderen Pfad als / aufweist, müssen Sie entweder den vollständigen Rollen-ARN angeben (empfohlen) oder ein Präfix mit dem Pfad vor dem Rollennamen verwenden. Wenn beispielsweise ein Rolle mit dem Namen bar den Pfad /foo/ aufweist, würden Sie /foo/bar als Rollennamen angeben. Weitere Informationen finden Sie unter Anzeigenamen und Pfade im IAM-Benutzerhandbuch.

Wichtig

Wenn Ihr Konto bereits über die servicegebundene Rolle für den Amazon ECS Service verfügt, wird diese Rolle standardmäßig für Ihren Service verwendet, es sei denn, Sie geben hier eine Rolle an. Die servicegebundene Rolle ist erforderlich, wenn Ihre Aufgabendefinition den Netzwerkmodus awsvpc verwendet. In diesem Fall sollten Sie hier keine Rolle angeben. Weitere Informationen finden Sie unter Verwendung von serviceverknüpften Rollen für Amazon ECS.

serviceConnectConfiguration

Typ: Objekt

Erforderlich: Nein

Die Konfiguration für diesen Service, um Services zu erkennen und eine Verbindung zu ihnen herzustellen sowie von anderen Services innerhalb eines Namespace erkannt und verbunden zu werden.

Weitere Informationen finden Sie unter Verwenden Sie Service Connect, um Amazon ECS-Services mit Kurznamen zu verbinden.

enabled

Typ: Boolesch

Erforderlich: Ja

Gibt an, ob Service Connect mit diesem Service verwendet werden soll.

namespace

Typ: Zeichenfolge

Erforderlich: Nein

Der Kurzname oder der vollständige Amazon Resource Name (ARN) des AWS Cloud Map Namespaces zur Verwendung mit Service Connect. Der Namespace muss sich in derselben AWS-Region befinden wie der Amazon-ECS-Service und der Cluster. Der Typ des Namespace hat keine Auswirkungen auf Service Connect. Weitere Informationen zu finden Sie AWS Cloud Map unter Working with Services im AWS Cloud Map Developer Guide.

services

Typ: Array von -Objekten

Erforderlich: Nein

Ein Array von Service-Connect-Serviceobjekten. Dies sind Namen und Aliase (auch als Endpunkte bezeichnet), die von anderen Amazon-ECS-Services verwendet werden, um eine Verbindung zu diesem Service herzustellen.

Dieses Feld ist für einen „Client“-Amazon-ECS-Service, der nur Mitglied eines Namespace ist, nicht erforderlich, um eine Verbindung zu anderen Services innerhalb des Namespace herzustellen. Ein Beispiel ist eine Frontend-Anwendung, die eingehende Anfragen entweder von einem Load Balancer, der dem Service angefügt ist, oder auf andere Weise akzeptiert.

Ein Objekt wählt einen Port aus der Aufgabendefinition aus, weist dem AWS Cloud Map Dienst einen Namen und eine Reihe von Aliasen (auch als Endpunkte bezeichnet) und Ports zu, über die Client-Anwendungen auf diesen Dienst verweisen können.

portName

Typ: Zeichenfolge

Erforderlich: Ja

Der portName muss mit dem name einer der portMappings aus allen Containern in der Aufgabendefinition dieses Amazon-ECS-Service übereinstimmen.

discoveryName

Typ: Zeichenfolge

Erforderlich: Nein

Das discoveryName ist der Name des neuen AWS Cloud Map Service, den Amazon ECS für diesen Amazon ECS-Service erstellt. Dieser muss innerhalb des AWS Cloud Map -Namespace eindeutig sein.

Wenn dieses Feld nicht angegeben ist, wird portName verwendet.

clientAliases

Typ: Array von -Objekten

Erforderlich: Nein

Die Liste der Client-Aliase für diesen Service-Connect-Service. Sie verwenden diese, um Namen zuzuweisen, die von Client-Anwendungen verwendet werden können. Die maximale Anzahl von Client-Aliasen, die Sie in dieser Liste haben können, ist 1.

Jeder Alias („Endpunkt“) ist ein DNS-Name und eine Portnummer, die andere Amazon-ECS-Services („Clients“) verwenden können, um eine Verbindung zu diesem Service herzustellen.

Jede Kombination aus Name und Port muss innerhalb des Namespace eindeutig sein.

Diese Namen werden innerhalb jeder Aufgabe des Client-Services konfiguriert, nicht in AWS Cloud Map. DNS-Anfragen zum Auflösen dieser Namen verlassen die Aufgabe nicht und werden nicht auf das Kontingent von DNS-Anfragen pro Sekunde pro Schnittstelle für elastische Netzwerke angerechnet.

port

Typ: Ganzzahl

Erforderlich: Ja

Die Überwachungsportnummer für den Service-Connect-Proxy. Dieser Port ist in allen Aufgaben innerhalb desselben Namespace verfügbar.

Um zu vermeiden, dass Ihre Anwendungen in Amazon-ECS-Client-Services geändert werden, stellen Sie diesen auf denselben Port ein, den die Client-Anwendung standardmäßig verwendet.

dnsName

Typ: Zeichenfolge

Erforderlich: Nein

Der dnsName ist der Name, den Sie in den Anwendungen von Client-Aufgaben verwenden, um eine Verbindung zu diesem Service herzustellen. Der Name muss eine gültige DNS-Kennzeichnung sein.

Wenn dieses Feld nicht angegeben ist, ist der Standardwert das discoveryName.namespace. Wenn der discoveryName nicht angegeben ist, wird der portName aus der Aufgabendefinition verwendet.

Um zu vermeiden, dass Ihre Anwendungen in Amazon-ECS-Client-Services geändert werden, stellen Sie diesen auf denselben Namen ein, den die Client-Anwendung standardmäßig verwendet. Einige gängige Namen sind beispielsweise database, db oder der Name einer Datenbank in Kleinbuchstaben, wie z. B. mysql oder redis.

ingressPortOverride

Typ: Ganzzahl

Erforderlich: Nein

(Optional) Die Portnummer, die der Service-Connect-Proxy überwachen soll.

Verwenden Sie den Wert dieses Feldes, um den Proxy für den Datenverkehr an der Portnummer zu umgehen, die in der Aufgabendefinition dieser Anwendung unter dem Namen portMapping angegeben ist. Verwenden Sie diesen dann in Ihren Amazon-VPC-Sicherheitsgruppen, um den Datenverkehr in den Proxy für diesen Amazon-ECS-Service zuzulassen.

Im awsvpc-Modus ist der Standardwert die Container-Portnummer, die in der Aufgabendefinition dieser Anwendung im benannten portMapping angegeben ist. Im bridge-Modus ist der Standardwert der dynamische flüchtige Port des Service-Connect-Proxys.

logConfiguration

Typ: LogConfigurationObjekt

Erforderlich: Nein

Dies definiert, wo die Service-Connect-Proxyprotokolle veröffentlicht werden. Verwenden Sie die Protokolle zum Debuggen bei unerwarteten Ereignissen. Diese Konfiguration legt den logConfiguration-Parameter im Service-Connect-Proxy-Container in jeder Aufgabe in diesem Amazon-ECS-Service fest. Der Proxy-Container ist nicht in der Aufgabendefinition angegeben.

Wir empfehlen, dieselbe Protokollkonfiguration wie die Anwendungscontainer der Aufgabendefinition für diesen Amazon-ECS-Service zu verwenden. Für FireLens ist dies die Protokollkonfiguration des Anwendungscontainers. Es ist nicht der FireLens Log-Router-Container, der das fluentd Container-Image fluent-bit oder verwendet.

serviceRegistries

Typ: Array von -Objekten

Erforderlich: Nein

Die Details der Serviceerkennungskonfiguration für Ihren Service. Weitere Informationen finden Sie unter Verwenden Sie Service Discovery, um Amazon ECS-Services mit DNS-Namen zu verbinden.

registryArn

Typ: Zeichenfolge

Erforderlich: Nein

Der Amazon-Ressourcenname (ARN) der Serviceregistrierung. Die derzeit unterstützte Dienstregistrierung ist AWS Cloud Map. Weitere Informationen finden Sie unter Arbeiten mit Services im AWS Cloud Map -Entwicklerhandbuch.

port

Typ: Ganzzahl

Erforderlich: Nein

Der Port-Wert, der verwendet wird, wenn Ihr Service zur Service Discovery einen SRV-Datensatz angegeben hat. Dieses Feld ist erforderlich, wenn der awsvpc-Netzwerkmodus und SRV-Datensätze verwendet werden.

containerName

Typ: Zeichenfolge

Erforderlich: Nein

Der Containernamen-Wert, der für Ihren Service zur Service Discovery verwendet werden soll. Dieser Wert wird in der Aufgabendefinition festgelegt. Wenn die Aufgabendefinition, die Ihre Serviceaufgabe angibt, den Netzwerkmodus bridge oder host verwendet, müssen Sie eine Kombination aus containerName und containerPort aus der Aufgabendefinition angeben. Wenn die Aufgabendefinition, die Ihre Serviceaufgabe angibt, den Netzwerkmodus awsvpc verwendet und ein SRV-DNS-Datensatz verwendet wird, müssen Sie entweder eine Kombination aus containerName und containerPort angeben, oder einen port-Wert, aber nicht beides.

containerPort

Typ: Ganzzahl

Erforderlich: Nein

Der Port-Wert, der für Ihren Service zur Service Discovery verwendet werden soll. Dieser Wert wird in der Aufgabendefinition festgelegt. Wenn die Aufgabendefinition, die Ihre Serviceaufgabe angibt, den Netzwerkmodus bridge oder host verwendet, müssen Sie eine Kombination aus containerName und containerPort aus der Aufgabendefinition angeben. Wenn die Aufgabendefinition, die Ihre Serviceaufgabe angibt, den Netzwerkmodus awsvpc verwendet und ein SRV-DNS-Datensatz verwendet wird, müssen Sie entweder eine Kombination aus containerName und containerPort angeben, oder einen port-Wert, aber nicht beides.

Client-Token

clientToken

Typ: Zeichenfolge

Erforderlich: Nein

Der eindeutige Bezeichner, bei dem die Groß- und Kleinschreibung beachtet werden muss, um die Idempotenz der Anfrage sicherzustellen. Er kann bis zu 32 ASCII-Zeichen lang sein.

Volumenkonfigurationen

volumeConfigurations

Typ: Objekt

Erforderlich: Nein

Die Konfiguration, die verwendet wird, um Volumes für Aufgaben zu erstellen, die vom Dienst verwaltet werden. Für jede Aufgabe im Service wird ein Volume erstellt. Nur Volumes, die configuredAtLaunch in der Aufgabendefinition als gekennzeichnet sind, können mithilfe dieses Objekts konfiguriert werden. Dieses Objekt ist erforderlich, um Amazon EBS-Datenvolumen an Aufgaben anzuhängen, die von einem Service verwaltet werden. Weitere Informationen finden Sie unter Amazon EBS-Volumes.

name

Typ: Zeichenfolge

Erforderlich: Ja

Der Name eines Volumes, das bei der Erstellung oder Aktualisierung eines Service konfiguriert wurde. Bis zu 255 Buchstaben (Groß- und Kleinbuchstaben), Zahlen, Unterstriche (_) und Bindestriche () sind zulässig. - Dieser Wert muss mit dem Volumennamen übereinstimmen, der in der Aufgabendefinition angegeben ist.

managedEBSVolume

Typ: Objekt

Erforderlich: Nein

Die Volume-Konfiguration für Amazon EBS-Volumes, die Aufgaben zugewiesen werden, die von einem Service verwaltet werden, wenn ein Service erstellt oder aktualisiert wird.

encrypted

Typ: Boolesch

Erforderlich: Nein

Gültige Werte: true|false

Gibt an, ob das Amazon EBS-Volume, das an Aufgaben angehängt ist, die von einem Service verwaltet werden, verschlüsselt wird. Wenn Sie die Amazon EBS-Verschlüsselung standardmäßig für Ihr Konto aktiviert haben, wird diese Einstellung überschrieben und das Volume wird verschlüsselt. Weitere Informationen zur standardmäßigen EBS-Verschlüsselung finden Sie unter Standardverschlüsselung im Amazon EC2 EC2-Benutzerhandbuch.

kmsKeyId

Typ: Zeichenfolge

Erforderlich: Nein

Die Kennung des AWS Key Management Service (AWS KMS) -Schlüssels, der für die Amazon EBS-Verschlüsselung verwendet werden soll. Wenn dieser Parameter nicht angegeben ist, wird Ihr AWS KMS key für Amazon EBS verwendet. Wenn KmsKeyId angegeben ist, muss der verschlüsselte Status true sein.

Sie können den KMS-Schlüssel mit einer der folgenden Methoden angeben:

  • Schlüssel-ID — Zum Beispiel1234abcd-12ab-34cd-56ef-1234567890ab.

  • Schlüsselalias — Zum Beispielalias/ExampleAlias.

  • Schlüssel-ARN — Zum Beispielarn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Alias ARN — Zum Beispielarn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Wichtig

AWS authentifiziert den KMS-Schlüssel asynchron. Wenn Sie also eine ID, einen Alias oder einen ARN angeben, die nicht gültig sind, scheint die Aktion erfolgreich zu sein, schlägt aber letztendlich fehl. Weitere Informationen finden Sie unter Problembehandlung bei Amazon EBS-Volumenanhängen.

volumeType

Typ: Zeichenfolge

Erforderlich: Nein

Gültige Werte: gp2 | gp3 | io1 | io2 | sc1 | st1 standard

Der EBS-Volume-Typ. Weitere Informationen zu Volumetypen finden Sie unter Amazon EBS-Volumetypen im Amazon EC2 EC2-Benutzerhandbuch. Der Standard-Volume-Typ ist gp3.

Anmerkung

Der standard Volumetyp wird nicht für Amazon EBS-Volumes unterstützt, die für das Anhängen an Fargate-Aufgaben konfiguriert sind.

sizeInGiB

Typ: Ganzzahl

Erforderlich: Nein

Gültiger Bereich: Ganzzahlen zwischen 1 und 16.384

Die Größe des EBS-Volumes in Gibibyte (GiB). Wenn Sie keine Snapshot-ID angeben, um ein Volume für das Anhängen zu konfigurieren, müssen Sie einen Größenwert angeben. Wenn Sie ein Volume für das Anhängen mithilfe eines Snapshots konfigurieren, ist der Standardwert die Snapshot-Größe. Sie können dann eine Größe angeben, die größer oder gleich der Snapshot-Größe ist.

Für gp3 Datenträgertypen gp2 und -datenträgertypen liegt der gültige Bereich zwischen 1 und 16.384.

Für Datenträgertypen io1 und io2 -volumetypen liegt der gültige Bereich zwischen 4 und 16.384.

Für Datenträgertypen st1 und sc1 -volumetypen liegt der gültige Bereich zwischen 125 und 16.384.

Für den standard Datenträgertyp liegt der gültige Bereich zwischen 1 und 1.024.

snapshotId

Typ: Zeichenfolge

Erforderlich: Nein

Die ID des Snapshots eines vorhandenen EBS-Volumes, der verwendet wird, um ein neues Volume zu erstellen, das an die ECS-Aufgabe angehängt ist.

iops

Typ: Ganzzahl

Erforderlich: Nein

Die Anzahl der E/A-Vorgänge pro Sekunde (IOPS). Im Fall von gp3-, io1- und io2-Volumes stellt dieser Wert die Anzahl der IOPS dar, die für das Volume bereitgestellt werden. Bei gp2 Volumes steht dieser Wert für die Ausgangsleistung des Volumes und für die Geschwindigkeit, mit der das Volume I/O-Credits für das Bursting sammelt. Dieser Parameter ist für io1- und io2-Volumes erforderlich. Dieser Parameter wird fürgp2,st1, sc1 oder standard Volumes nicht unterstützt.

Für gp3 Volumen liegt der gültige Wertebereich zwischen 3.000 und 16.000.

Für io1 Volumen liegt der gültige Wertebereich zwischen 100 und 64.000.

Für io2 Volumen liegt der gültige Wertebereich zwischen 100 und 64.000.

throughput

Typ: Ganzzahl

Erforderlich: Nein

Der bereitzustellende Durchsatz für Volumes, die mit Aufgaben verknüpft sind, die von einem Dienst verwaltet werden.

Wichtig

Dieser Parameter wird nur für gp3 Volumes unterstützt.

roleArn

Typ: Zeichenfolge

Erforderlich: Ja

Der Amazon Resource ARN (ARN) der Infrastrukturrolle AWS Identity and Access Management (IAM), die Amazon ECS-Berechtigungen zur Verwaltung von Amazon EBS-Ressourcen für Ihre Aufgaben bereitstellt. Weitere Informationen finden Sie unter IAM-Rolle für die Amazon ECS-Infrastruktur.

tagSpecifications

Typ: Objekt

Erforderlich: Nein

Die Spezifikation für Tags, die auf serviceverwaltete Amazon EBS-Volumes angewendet werden sollen.

resourceType

Typ: Zeichenfolge

Erforderlich: Ja

Zulässige Werte: volume

Der Typ der Ressource, die bei der Erstellung markiert werden soll.

tags

Typ: Array von -Objekten

Erforderlich: Nein

Die Metadaten, die Sie auf Bände anwenden, um sie zu kategorisieren und zu organisieren. Jedes Tag besteht aus einem Schlüssel und einem optionalen Wert, die Sie beide definieren. AmazonECSCreatedund AmazonECSManaged sind reservierte Tags, die von Amazon ECS in Ihrem Namen hinzugefügt wurden, sodass Sie maximal 48 eigene Tags angeben können. Wenn ein Volume gelöscht wird, werden auch die Tags gelöscht. Weitere Informationen finden Sie unter Verschlagwortung von Amazon ECS-Ressourcen.

key

Typ: Zeichenfolge

Längenbeschränkungen: Minimale Länge beträgt 1 Zeichen. Maximale Länge beträgt 128 Zeichen.

Erforderlich: Nein

Ein Teil eines Schlüssel-Wert-Paares, aus dem ein Tag besteht. Ein Schlüssel ist eine allgemeine Bezeichnung, die wie eine Kategorie für spezifischere Tag-Werte fungiert.

value

Typ: Zeichenfolge

Längenbeschränkungen: Minimale Länge von 0. Maximale Länge beträgt 256 Zeichen.

Erforderlich: Nein

Der optionale Teil eines Schlüssel-Wert-Paares, aus dem ein Tag besteht. Ein Wert fungiert als Deskriptor in einer Tag-Kategorie (Schlüssel).

propagateTags

Typ: Zeichenfolge

Zulässige Werte: TASK_DEFINITION | SERVICE | NONE

Erforderlich: Nein

Gibt an, ob die Tags aus der Aufgabendefinition oder dem Dienst auf ein Volume kopiert werden sollen. Wenn NONE angegeben oder kein Wert angegeben ist, werden die Tags nicht kopiert.

fileSystemType

Typ: Zeichenfolge

Erforderlich: Nein

Zulässige Werte: xfs|ext3|ext4

Der Typ des Dateisystems auf einem Volume. Der Dateisystemtyp des Volumes bestimmt, wie Daten auf dem Volume gespeichert und abgerufen werden. Für Volumes, die aus einem Snapshot erstellt wurden, müssen Sie denselben Dateisystemtyp angeben, den das Volume bei der Erstellung des Snapshots verwendet hat. Wenn der Dateisystemtyp nicht übereinstimmt, kann die Aufgabe nicht gestartet werden. Die Standardeinstellung für Volumes, die an Linux-Aufgaben angehängt sind, ist. XFS

Servicedefinitionsvorlage

Im Folgenden ist die JSON-Darstellung einer Amazon-ECS-Servicedefinition dargestellt.

Amazon EC2 EC2-Starttyp

{ "cluster": "", "serviceName": "", "taskDefinition": "", "loadBalancers": [ { "targetGroupArn": "", "loadBalancerName": "", "containerName": "", "containerPort": 0 } ], "serviceRegistries": [ { "registryArn": "", "port": 0, "containerName": "", "containerPort": 0 } ], "desiredCount": 0, "clientToken": "", "launchType": "EC2", "capacityProviderStrategy": [ { "capacityProvider": "", "weight": 0, "base": 0 } ], "platformVersion": "", "role": "", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 0, "minimumHealthyPercent": 0, "alarms": { "alarmNames": [ "" ], "enable": true, "rollback": true } }, "placementConstraints": [ { "type": "distinctInstance", "expression": "" } ], "placementStrategy": [ { "type": "binpack", "field": "" } ], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "" ], "securityGroups": [ "" ], "assignPublicIp": "DISABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "EXTERNAL" }, "tags": [ { "key": "", "value": "" } ], "enableECSManagedTags": true, "propagateTags": "TASK_DEFINITION", "enableExecuteCommand": true, "serviceConnectConfiguration": { "enabled": true, "namespace": "", "services": [ { "portName": "", "discoveryName": "", "clientAliases": [ { "port": 0, "dnsName": "" } ], "ingressPortOverride": 0 } ], "logConfiguration": { "logDriver": "journald", "options": { "KeyName": "" }, "secretOptions": [ { "name": "", "valueFrom": "" } ] } }, "volumeConfigurations": [ { "name": "", "managedEBSVolume": { "encrypted": true, "kmsKeyId": "", "volumeType": "", "sizeInGiB": 0, "snapshotId": "", "iops": 0, "throughput": 0, "tagSpecifications": [ { "resourceType": "volume", "tags": [ { "key": "", "value": "" } ], "propagateTags": "NONE" } ], "roleArn": "", "filesystemType": "" } } ] }

Fargate Starttyp

{ "cluster": "", "serviceName": "", "taskDefinition": "", "loadBalancers": [ { "targetGroupArn": "", "loadBalancerName": "", "containerName": "", "containerPort": 0 } ], "serviceRegistries": [ { "registryArn": "", "port": 0, "containerName": "", "containerPort": 0 } ], "desiredCount": 0, "clientToken": "", "launchType": "FARGATE", "capacityProviderStrategy": [ { "capacityProvider": "", "weight": 0, "base": 0 } ], "platformVersion": "", "platformFamily": "", "role": "", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 0, "minimumHealthyPercent": 0, "alarms": { "alarmNames": [ "" ], "enable": true, "rollback": true } }, "placementStrategy": [ { "type": "binpack", "field": "" } ], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "" ], "securityGroups": [ "" ], "assignPublicIp": "DISABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "EXTERNAL" }, "tags": [ { "key": "", "value": "" } ], "enableECSManagedTags": true, "propagateTags": "TASK_DEFINITION", "enableExecuteCommand": true, "serviceConnectConfiguration": { "enabled": true, "namespace": "", "services": [ { "portName": "", "discoveryName": "", "clientAliases": [ { "port": 0, "dnsName": "" } ], "ingressPortOverride": 0 } ], "logConfiguration": { "logDriver": "journald", "options": { "KeyName": "" }, "secretOptions": [ { "name": "", "valueFrom": "" } ] } }, "volumeConfigurations": [ { "name": "", "managedEBSVolume": { "encrypted": true, "kmsKeyId": "", "volumeType": "", "sizeInGiB": 0, "snapshotId": "", "iops": 0, "throughput": 0, "tagSpecifications": [ { "resourceType": "volume", "tags": [ { "key": "", "value": "" } ], "propagateTags": "NONE" } ], "roleArn": "", "filesystemType": "" } } ] }

Sie können diese Servicedefinitionsvorlage mit dem folgenden AWS CLI -Befehl erstellen.

aws ecs create-service --generate-cli-skeleton