Markieren Ihrer Amazon ECS-Ressourcen - Amazon Elastic Container Service

Markieren Ihrer Amazon ECS-Ressourcen

Um sich die Verwaltung Ihrer Amazon ECS-Ressourcen zu erleichtern, können Sie optional jeder Ressource mithilfe von Tags Ihre eigenen Metadaten zuweisen. Dieses Thema enthält eine Übersicht zu Tags in Amazon ECS und wie Sie sie erstellen können.

Um diese Funktion nutzen zu können, müssen Sie sich für die neuen Formate Amazon Ressourcenname (ARN) und Ressourcen-Identifier (ID) anmelden (Opt-in). Weitere Informationen finden Sie unter Amazon Ressourcennamen (ARNs) und IDs.

Wichtig

Fügen Sie keine personenbezogenen Daten (Personally Identifiable Information, PII) oder andere vertrauliche Informationen in Tags hinzu. Tags sind für viele AWS-Dienste zugänglich, einschließlich der Abrechnung. Tags sind nicht für private oder vertrauliche Daten gedacht.

Grundlagen zu Tags (Markierungen)

Ein Tag (Markierung) ist eine Markierung, die Sie einer AWS-Ressource zuordnen. Jeder Tag (Markierung) besteht aus einem Schlüssel und einem optionalen Wert, beides können Sie bestimmen.

Mit Tags (Markierungen) können Sie Ihre AWS-Ressourcen auf unterschiedliche Weise kategorisieren (z. B. nach Zweck, Eigentümer oder Umgebung). Dies ist nützlich, wenn Sie viele Ressourcen desselben Typs haben. Sie können eine bestimmte Ressource anhand der ihr zugewiesenen Tags schnell identifizieren. Sie können zum Beispiel eine Reihe von Tags (Markierungen) für die Amazon ECS-Container-Instances in Ihrem Konto definieren, um die Eigentümer der einzelnen Instances und die Stack-Ebene nachzuverfolgen.

Wir empfehlen die Verwendung von Tag (Markierung)-Schlüsseln, die die Anforderungen der jeweiligen Ressourcentypen erfüllen. Eine Anzahl einheitlicher Tag (Markierung)-Schlüssel vereinfacht das Verwalten der Ressourcen. Sie können die Ressourcen auf Grundlage der hinzugefügten Tags (Markierungen) filtern und danach suchen.

Tags (Markierungen) haben keine semantische Bedeutung für Amazon ECS und werden ausschließlich als Zeichenfolgen interpretiert. Außerdem werden Tags (Markierungen) nicht automatisch Ihren Ressourcen zugewiesen. Sie können Tag (Markierung)-Schlüssel und -Werte bearbeiten und Tags (Markierungen) jederzeit von einer Ressource entfernen. Sie können den Wert eines Tags (Markierung) zwar auf eine leere Zeichenfolge, jedoch nicht Null festlegen. Wenn Sie ein Tag (Markierung) mit demselben Schlüssel wie ein vorhandener Tag (Markierung) für die Ressource hinzufügen, wird der neue Wert den alten überschreiben. Wenn Sie eine Ressource löschen, werden alle Tags (Markierungen) der Ressource ebenfalls gelöscht.

Sie können mit AWS Management Console, AWS CLI und Amazon ECS-API mit Tags arbeiten.

Wenn Sie AWS Identity and Access Management (IAM) verwenden, können Sie steuern, welche Benutzer in Ihrem AWS-Konto Tags (Markierungen) verwalten dürfen.

Markierung Ihrer Ressourcen

Sie können neue oder bestehende Amazon ECS-Aufgaben, Services, Aufgabendefinitionen und Cluster markieren.

Wichtig

Fügen Sie keine personenbezogenen Daten (Personally Identifiable Information, PII) oder andere vertrauliche Informationen in Tags hinzu. Tags sind für viele AWS-Dienste zugänglich, einschließlich der Abrechnung. Tags sind nicht für private oder vertrauliche Daten gedacht.

Wenn Sie die Amazon ECS-Konsole verwenden, können Sie Tags auf neue oder auf bestehende Ressourcen, indem Sie die Registerkarte Tags auf der entsprechenden Ressourcenseite verwenden. Wenn Sie die von Amazon ECS verwaltete Tag-Option (Propagieren von Tags von), werden Tags aus der Aufgabendefinition oder dem Dienst in eine Aufgabe kopiert. Dies kann sowohl beim Ausführen einer Aufgabe als auch beim Erstellen eines Service erfolgen.

Wenn Sie die Amazon ECS-API, AWS CLI oder ein AWS-SDK verwenden, können Sie Tags mithilfe des Parameters tags auf der entsprechenden der API-Aktion anwenden. Sie können aber auch die TagResource-API-Aktion, um Tags auf vorhandene Ressourcen anzuwenden. Weitere Informationen finden Sie unter TagResource. Der Parameter propagateTags kann verwendet werden, um die Tags entweder von einer Aufgabendefinition oder einem Service zu der Aufgabe zu kopieren. Dies kann sowohl beim Ausführen einer Aufgabe als auch beim Erstellen eines Service erfolgen. Weitere Informationen finden Sie unter RunTask und CreateService.

Zudem können Sie mit einigen Aktionen zur Ressourcenerstellung Tags (Markierungen) beim Erstellen einer Ressource angeben. Wenn Tags nicht angewendet werden können, während Ressourcen erstellt werden, setzen wir den Prozess der Erstellung von Ressourcen zurück. Auf diese Weise werden Ressourcen entweder mit Tags (Markierungen) oder überhaupt nicht erstellt und keine Ressourcen verbleiben ohne Tags (Markierungen). Indem Sie Ressourcen zum Erstellungszeitpunkt markieren, müssen Sie anschließend keine benutzerdefinierten Markierungs-Skripts ausführen.

In der folgenden Tabelle werden die markierbaren Amazon ECS-Ressourcen und die bei Erstellung markierbaren Ressourcen beschrieben.

Markierungsunterstützung für Amazon ECS-Ressourcen

Ressource

Unterstützt Tags (Markierungen)

Unterstützt Tag-Propagierung

Unterstützt das Markieren bei Erstellung (Amazon ECS-API, AWS CLI, AWS-SDK)

Amazon ECS-Aufgaben

Ja

Ja, von der Aufgabendefinition.

Ja

Amazon-ECS-Services

Ja

Ja, von der Aufgabendefinition oder dem Service zu den Aufgaben im Service.

Ja

Amazon ECS-Aufgabensätze

Ja

Nein

Ja

Amazon ECS-Aufgabendefinitionen

Ja

Nein

Ja

Amazon ECS-Cluster

Ja

Nein

Ja

Amazon ECS-Container-Instances

Ja

Ja, von der Amazon-EC2-Instance. Weitere Informationen finden Sie unter Hinzufügen von Tags zu einer Amazon EC2 Container-Instance.

Ja

Externe Amazon ECS-Instances

Ja

Nein

Nein, Sie können Tags hinzufügen, nachdem die externe Instance in einem Cluster registriert wurde, indem Sie AWS Management Console nutzen oder mithilfe der Amazon ECS-API, AWS CLI oder AWS-SDK. Weitere Informationen finden Sie unter Hinzufügen und Löschen von Tags für einzelne Ressourcen.

Tag (Markierung)-Einschränkungen

Die folgenden grundlegenden Einschränkungen gelten für Tags (Markierungen)

  • Maximale Anzahl von Tags (Markierungen) pro Ressource: 50

  • Jeder Tag (Markierung) muss für jede Ressource eindeutig sein. Jeder Tag (Markierung) kann nur einen Wert haben.

  • Maximale Schlüssellänge: 128 Unicode-Zeichen in UTF-8

  • Maximale Wertlänge: 256 Unicode-Zeichen in UTF-8

  • Wenn Ihr Markierungsschema für mehrere Services und Ressourcen verwendet wird, denken Sie daran, dass andere Services möglicherweise Einschränkungen für zulässige Zeichen haben. Allgemein erlaubte Zeichen sind: Buchstaben, Zahlen und Leerzeichen, die in UTF-8 darstellbar sind, und die folgenden Sonderzeichen: + - = . _ : / @.

  • Bei Tag (Markierung)-Schlüsseln und -Werten muss die Groß-/Kleinschreibung beachtet werden.

  • Verwenden Sie weder aws: noch AWS: oder anderen Kombinationen aus Groß- und Kleinbuchstaben als Präfix für Schlüssel oder Werte. Sie sind für die Verwendung nur von AWS reserviert. Sie können keine Tag-Schlüssel oder -Werte mit diesem Präfix bearbeiten oder löschen. Tags mit diesem Präfix werden nicht als Ihre Tags pro Ressourcenlimit angerechnet.

Markieren von Ressourcen für die Fakturierung

Wenn Sie in Amazon ECS-verwaltete Tags verwenden, markiert Amazon ECS automatisch alle neu gestarteten Aufgaben mit dem Clusternamen. Bei Aufgaben, die zu einem Service gehören, werden sie auch mit dem Servicenamen markiert. Diese verwalteten Tags sind hilfreich, wenn Sie die Kostenzuordnung überprüfen, nachdem Sie sie in Ihrem Kosten- und Nutzungsbericht aktiviert haben. Weitere Informationen finden Sie unter Amazon ECS-Nutzungsberichte.

Um die Kosten kombinierter Ressourcen anzuzeigen, können Sie Ihre Fakturierungsinformationen nach Ressourcen mit gleichen Tag (Markierung)-Schlüsselwerten strukturieren. Beispielsweise können Sie mehrere Ressourcen mit einem bestimmten Anwendungsnamen markieren und dann Ihre Fakturierungsinformationen so organisieren, dass Sie die Gesamtkosten dieser Anwendung über mehrere Services hinweg sehen können. Weitere Informationen zum Einrichten eines Kostenzuordnungsberichts mit Markierungen finden Sie unter Monatlicher Kostenzuordnungsbericht im Benutzerhandbuch für AWS Billing and Cost Management.

Wichtig

Um diese Funktion nutzen zu können, müssen Sie sich für die neuen Formate Amazon Ressourcenname (ARN) und Ressourcen-Identifier (ID) anmelden (Opt-in). Weitere Informationen finden Sie unter Amazon Ressourcennamen (ARNs) und IDs.

Anmerkung

Wenn Sie die Berichterstellung aktiviert haben, werden die Daten für den aktuellen Monat nach 24 Stunden bereitgestellt.

Arbeiten mit Tags in der Konsole

Mit der Amazon ECS-Konsole können Sie die Tags verwalten, die neuen oder bestehenden Aufgaben, Services, Aufgabendefinitionen, Clustern oder Container-Instances zugeordnet sind.

Wenn Sie eine ressourcenspezifische Seite in der Amazon ECS-Konsole auswählen, wird eine Liste der Ressourcen angezeigt. Wenn Sie beispielsweise Clusters (Cluster) im Navigationsbereich auswählen, zeigt die Konsole eine Liste der Amazon ECS-Cluster an. Wenn Sie eine Ressource aus einer dieser Listen auswählen (z. B. einen bestimmten Cluster) die Tags unterstützt, können Sie deren Tags auf der Registerkarte Tags anzeigen und verwalten.

Wichtig

Fügen Sie keine personenbezogenen Daten (Personally Identifiable Information, PII) oder andere vertrauliche Informationen in Tags hinzu. Tags sind für viele AWS-Dienste zugänglich, einschließlich der Abrechnung. Tags sind nicht für private oder vertrauliche Daten gedacht.

Hinzufügen von Tags zu einer einzelnen Ressource während des Starts

Bei den folgenden Ressourcen können Sie beim Erstellen der Ressource Tags angeben.

Aufgabe

Konsole

Führen Sie eine oder mehrere Aufgaben aus.

Ausführen einer eigenständigen Aufgabe

Einen Service erstellen.

Erstellen eines Amazon-ECS-Services

Einen Aufgabensatz erstellen.

Externe Bereitstellung

Eine Aufgabendefinition registrieren.

Erstellen einer Aufgabendefinition

Einen Cluster erstellen.

Erstellen eines Clusters

Eine oder mehrere Container-Instances ausführen.

Starten einer Amazon ECS Linux-Container-Instance

Hinzufügen und Löschen von Tags für einzelne Ressourcen

Mit Amazon ECS können Sie Tags, die Ihren Clustern, Services, Aufgaben und Aufgabendefinitionen zugeordnet sind, direkt von der Seite der Ressource aus hinzufügen oder löschen. Informationen zum Markieren Ihrer Container-Instances finden Sie unter Hinzufügen von Tags zu einer Amazon EC2 Container-Instance.

Hinzufügen eines Tags (Markierung) zu einer einzelnen Ressource

  1. Öffnen Sie die Amazon ECS-Konsole unter https://console.aws.amazon.com/ecs/.

  2. Wählen Sie die zu verwendende Region in der Navigationsleiste aus.

  3. Wählen Sie im Navigationsbereich einen Ressourcentyp aus (z. B. Clusters (Cluster)).

  4. Wählen Sie die Ressource aus der Ressourcenliste aus und wählen Sie dann Tags, Edit (Bearbeiten).

  5. Geben Sie im Dialogfeld Edit Tags (Tags bearbeiten) den Schlüssel und Wert für jedes Tag an und klicken Sie auf Save (Speichern).

Löschen von Tags (Markierungen) von einer einzelnen Ressource

  1. Öffnen Sie die Amazon ECS-Konsole unter https://console.aws.amazon.com/ecs/.

  2. Wählen Sie die zu verwendende Region in der Navigationsleiste aus.

  3. Wählen Sie im Navigationsbereich einen Ressourcentyp aus (z. B. Clusters (Cluster)).

  4. Wählen Sie die Ressource aus der Ressourcenliste aus und wählen Sie dann Tags, Edit (Bearbeiten).

  5. Wählen Sie auf der Seite Edit Tags (Tags bearbeiten) das Symbol für Delete (Löschen) für jedes Tag, das Sie löschen möchten, und wählen Sie Save (Speichern).

Hinzufügen von Tags zu einer Amazon EC2 Container-Instance

Sie können mit einer der folgenden Methoden Tags zu Ihren Container-Instances zuweisen:

  • Methode 1: Beim Erstellen der Container-Instance geben Sie mit der Amazon EC2-API, -CLI oder -Konsole die Tags an, indem Sie Benutzerdaten mit dem Konfigurationsparameter ECS_CONTAINER_INSTANCE_TAGS an die Instance übergeben. Dadurch werden Tags erstellt, die nur der Container-Instance in Amazon ECS zugeordnet sind. Sie können nicht mithilfe der Amazon EC2-API angeboten werden. Weitere Informationen finden Sie unter Bootstrapping von Container-Instances mit Amazon EC2-Benutzerdaten.

    Wichtig

    Wenn Sie Ihre Container-Instances mit einer Amazon EC2 Auto Scaling-Gruppe starten, sollten Sie den Agent-Konfigurationsparameter ECS_CONTAINER_INSTANCE_TAGS verwenden, um Tags hinzuzufügen. Dies liegt an der Art und Weise, in der Amazon-EC2-Instances Tags hinzugefügt werden, die mit Auto-Scaling-Gruppen gestartet werden.

    Nachfolgend ist ein Beispiel für ein Benutzerdatenskript angeführt, das Tags mit Ihrer Container-Instance verknüpft:

    #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=MyCluster ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"} EOF
  • Methode 2: Geben Sie beim Erstellen Ihrer Container-Instance mit der Amazon EC2-API, -CLI oder -Konsole Tags mit dem Parameter TagSpecification.N an und übergeben Sie dann die Benutzerdaten mit dem Konfigurationsparameter ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM für den Container-Agenten an die Instance. Dadurch werden sie von Amazon EC2 an Amazon ECS weitergegeben.

    Nachfolgend finden Sie ein Beispiel für ein Benutzerdaten-Skript, das die mit einer Amazon-EC2-Instance verknüpften Tags propagiert und die Instance mit einem Cluster namens MyCluster registriert:

    #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=MyCluster ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM=ec2_instance EOF

    Um den Zugriff zu gewähren, damit Container-Instance-Tags von Amazon EC2 zu Amazon ECS propagieren werden können, fügen Sie manuell der IAM-Rolle der Amazon ECS-Container-Instance die folgenden Berechtigungen als Inline-Richtlinie hinzu. Weitere Informationen finden Sie unter Hinzufügen und Entfernen von IAM-Richtlinien.

    • ec2:DescribeTags

    Das folgende ist ein Beispiel einer Inline-Richtlinie mit der diese Berechtigungen hinzugefügt werden.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeTags" ], "Resource": "*" } ] }

Hinzufügen von Tags zu einer externen Container-Instance

Sie können mit einer der folgenden Methoden Tags zu Ihren externen Container-Instances zuweisen:

  • Methode 1: Bevor Sie das Installationsskript ausführen, um Ihre externe Instance bei Ihrem Cluster zu registrieren, erstellen oder bearbeiten Sie die Konfigurationsdatei für den Amazon ECS-Container Agent unter /etc/ecs/ecs.config und fügen Sie den ECS_CONTAINER_INSTANCE_TAGS-Konfigurationsparameter hinzu. Dadurch werden Tags erstellt, die der externen Instance zugeordnet sind.

    Das folgende ist ein Beispiel für die Syntax, die verwendet werden sollte.

    ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"}
  • Methode 2: Nachdem Ihre externe Instance in Ihrem Cluster registriert wurde, können Sie mit AWS Management Console Tags hinzufügen. Weitere Informationen finden Sie unter Hinzufügen und Löschen von Tags für einzelne Ressourcen.

Arbeiten mit Tags mittels CLI oder API

Mit den folgenden Befehlen können Sie Tags für Ihre Ressourcen hinzufügen, aktualisieren, auflisten und löschen. In der zugehörigen Dokumentation finden sich Beispiele.

Wichtig

Fügen Sie keine personenbezogenen Daten (Personally Identifiable Information, PII) oder andere vertrauliche Informationen in Tags hinzu. Tags sind für viele AWS-Dienste zugänglich, einschließlich der Abrechnung. Tags sind nicht für private oder vertrauliche Daten gedacht.

Markierungsunterstützung für Amazon ECS-Ressourcen

Aufgabe

AWS CLI

API-Aktion

Fügen Sie einen oder mehrere Tags hinzu oder überschreiben Sie sie.

tag-resource

TagResource

Löschen Sie ein oder mehrere Tags.

untag-resource

UntagResource

Die folgenden Beispiele zeigen, wie man Tags an Ressourcen mithilfe der hinzufügt oder entfernt AWS CLI.

Beispiel 1: Markieren eines bestehenden Clusters

Der folgende Befehl markiert einen vorhandenen Cluster.

aws ecs tag-resource --resource-arn resource_ARN --tags key=stack,value=dev

Beispiel 2: Entfernen von Tags von einem bestehenden Cluster

Der folgende Befehl löscht ein Tag von einem bestehenden Cluster.

aws ecs untag-resource --resource-arn resource_ARN --tag-keys tag_key

Beispiel 3: Tags für eine Ressource auflisten

Der folgende Befehl listet die Tags auf, die einer vorhandenen Ressource zugeordnet sind.

aws ecs list-tags-for-resource --resource-arn resource_ARN

Mit einigen Aktionen zur Ressourcenerstellung können Sie Tags beim Erstellen der Ressource angeben. Die folgenden Aktionen unterstützen das Markieren bei der Erstellung.

Aufgabe

AWS CLI

AWS Tools for Windows PowerShell

API-Aktion

Führen Sie eine oder mehrere Aufgaben aus.

run-task

Start-ECSTask

RunTask

Einen Service erstellen.

create-service

New-ECSService

CreateService

Einen Aufgabensatz erstellen.

create-task-set

New-ECSTaskSet

CreateTaskSet

Eine Aufgabendefinition registrieren.

register-task-definition

Register-ECSTaskDefinition

RegisterTaskDefinition

Einen Cluster erstellen.

create-cluster

New-ECSCluster

CreateCluster

Eine oder mehrere Container-Instances ausführen.

run-instances

New-EC2Instance

RunInstances

In den folgenden Beispielen wird gezeigt, wie Sie Tags (Markierungen) beim Erstellen von Ressourcen anwenden.

Beispiel 1: Erstellen eines Clusters und Anfügen eines Tags

Der folgende Befehl erstellt einen Cluster namens devcluster und fügt ein Tag mit dem Schlüssel team und dem Wert devs hinzu.

aws ecs create-cluster --cluster-name devcluster --tags key=team,value=devs

Beispiel 2: Erstellen eines Services und Anfügen eines Tags

Der folgende Befehl erstellt einen Service namens application und fügt ein Tag mit dem Schlüssel stack und dem Wert dev hinzu.

aws ecs create-service --service-name application --task-definition task-def-app --tags key=stack,value=dev

Beispiel 3: Erstellen eines Service mit Tags und Übertragen der Tags

Der Parameter --propagateTags kann verwendet werden, um die Tags entweder von einer Aufgabendefinition oder einem Service zu anderen Aufgaben in einem Service zu kopieren. Der folgende Befehl erstellt einen Service mit Tags und leitet ihn an die Aufgaben in diesem Service weiter.

aws ecs create-service --service-name application --task-definition task-def-app --tags key=stack,value=dev --propagateTags Service