Markieren von Amazon RDS-Ressourcen - Amazon Relational Database 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.

Markieren von Amazon RDS-Ressourcen

Ein Amazon RDS-Tag ist ein Name-Wert-Paar, das Sie definieren und einer Amazon RDS-Ressource wie einer DB-Instance oder einem DB-Snapshot zuordnen. Der Name wird als der Schlüssel bezeichnet. Optional können Sie einen Wert für den Schlüssel angeben.

Sie können die AWS Management Console AWS CLI, oder die Amazon RDS-API verwenden, um Tags zu Amazon RDS-Ressourcen hinzuzufügen, aufzulisten und zu löschen. Wenn Sie die CLI oder API verwenden, müssen Sie den Amazon-Ressourcennamen (ARN) für die RDS-Ressource angeben, mit der Sie arbeiten möchten. Weitere Informationen zum Konstruieren eines ARN finden Sie unter Erstellen eines ARN für Amazon RDS.

Warum Amazon RDS-Ressourcen-Tags verwenden?

Sie können Tags verwenden, um Folgendes zu tun:

  • Kategorisieren Sie Ihre RDS-Ressourcen nach Anwendung, Projekt, Abteilung, Umgebung usw. Sie könnten beispielsweise einen Tag-Schlüssel verwenden, um eine Kategorie zu definieren, wobei der Tag-Wert ein Element in dieser Kategorie ist. Sie könnten das Tag erstellenenvironment=prod. Oder Sie können einen Tag-Schlüssel project und einen Tag-Wert von definierenSalix, was darauf hinweist, dass dem Salix-Projekt eine Amazon RDS-Ressource zugewiesen ist.

  • Automatisieren Sie Aufgaben im Ressourcenmanagement. Sie könnten beispielsweise ein Wartungsfenster für markierte Instanzen erstellenenvironment=prod, das sich von dem Fenster für markierte Instanzen unterscheidetenvironment=test. Sie könnten auch automatische DB-Snapshots für markierte environment=prod Instances konfigurieren.

  • Steuern Sie den Zugriff auf RDS-Ressourcen innerhalb einer IAM-Richtlinie. Hierzu können Sie den globalen Bedingungsschlüssel aws:ResourceTag/tag-key verwenden. Eine Richtlinie könnte es beispielsweise nur Benutzern in der DBAdmin Gruppe ermöglichen, DB-Instances zu ändern, die mit environment=prod gekennzeichnet sind. Informationen zur Verwaltung des Zugriffs auf markierte Ressourcen mit IAM-Richtlinien finden Sie unter Identity and Access Management für Amazon RDS Steuern des Zugriffs auf AWS Ressourcen im AWS Identity and Access Management-Benutzerhandbuch.

  • Überwachen Sie Ressourcen anhand eines Tags. Sie können beispielsweise ein CloudWatch Amazon-Dashboard für DB-Instances erstellen, die mit gekennzeichnet sindenvironment=prod.

  • Verfolgen Sie die Kosten, indem Sie die Ausgaben für Ressourcen mit ähnlichen Tags gruppieren. Wenn Sie beispielsweise RDS-Ressourcen, die mit dem Salix-Projekt verknüpft sindproject=Salix, mit taggen, können Sie Kostenberichte für dieses Projekt erstellen und Ausgaben diesem Projekt zuordnen. Weitere Informationen finden Sie unter So funktioniert die AWS Abrechnung mit Tags in Amazon RDS.

So funktionieren Amazon RDS-Ressourcen-Tags

AWS wendet Ihren Tags keine semantische Bedeutung an. Tags werden streng als Zeichenfolgen interpretiert.

Tag-Sets in Amazon RDS

Jede Amazon RDS-Ressource hat einen Container, der als Tag-Set bezeichnet wird. Der Container enthält alle Tags, die der Ressource zugewiesen sind. Eine Ressource hat genau einen Tagsatz.

Ein Tag-Set enthält 0—50 Tags. Wenn Sie einer RDS-Ressource ein Tag mit demselben Schlüssel hinzufügen wie ein bereits vorhandenes Tag der Ressource, überschreibt der neue Wert den alten.

Tag-Struktur in Amazon RDS

Die Struktur eines RDS-Tags sieht wie folgt aus:

Tag-Schlüssel

Der Schlüssel ist der erforderliche Name des Tags. Der Zeichenkettenwert muss 1—128 Unicode-Zeichen lang sein und darf nicht mit einem aws: oder als Präfix versehen werden. rds: Die Zeichenfolge kann nur den Satz von Unicode-Buchstaben, Ziffern, Leerzeichen,,_,., : / =+, - und enthalten. @ Der Java-Regex ist. "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" Bei Tag-Schlüsseln wird die Groß- und Kleinschreibung beachtet. Somit sind die Schlüssel project und B Project unterschiedlich.

Ein Schlüssel ist für einen Tagsatz eindeutig. Sie können beispielsweise kein Schlüsselpaar in einem Tag-Set haben, bei dem der Schlüssel zwar derselbe, aber unterschiedliche Werte hat, wie project=Trinity z. B. und. project=Xanadu

Tag-Wert

Der Wert ist ein optionaler Zeichenkettenwert des Tags. Der Zeichenkettenwert muss 1—256 Unicode-Zeichen lang sein. Die Zeichenfolge kann nur den Satz von Unicode-Buchstaben, Ziffern, Leerzeichen,_,.,:, / = +-, und enthalten. @ Der Java-Regex ist. "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" Bei Tag-Werten muss die Groß- und Kleinschreibung beachtet werden. Somit sind die Werte prod und 2 Prod unterschiedlich.

Werte müssen in einem Tag-Set nicht eindeutig sein und können Null sein. Es ist z. B. ein Schlüssel-Wert-Paar in einem Tag-Satz project=Trinity und cost-center=Trinity möglich.

Amazon RDS-Ressourcen, die für das Tagging in Frage kommen

Sie können die folgenden Amazon RDS-Ressourcen kennzeichnen:

  • DB-Instances

  • DB-Cluster

  • DB-Cluster-Endpunkte

  • Read Replicas

  • DB-Snapshots

  • DB-Cluster-Snapshots

  • Reservierte DB-Instances

  • Ereignisabonnements

  • DB-Optionsgruppen

  • DB-Parametergruppen

  • DB-Cluster-Parametergruppen

  • DB-Subnetzgruppen

  • RDS Proxys

  • RDS Proxy-Endpunkte

    Anmerkung

    Derzeit können Sie RDS Proxys und RDS-Proxy-Endpunkte nicht per AWS Management Console markieren.

  • Blau/Grün-Bereitstellungen

  • Null-ETL-Integrationen (Vorschau)

So funktioniert die AWS Abrechnung mit Tags in Amazon RDS

Verwenden Sie Tags, um Ihre AWS Rechnung so zu organisieren, dass sie Ihrer eigenen Kostenstruktur entspricht. Melden Sie sich dazu an, um Ihre AWS-Konto Rechnung mit den Tag-Schlüsselwerten zu erhalten. Um dann die Kosten kombinierter Ressourcen anzuzeigen, organisieren Sie Ihre Fakturierungsinformationen nach Ressourcen mit gleichen Tag-Schlüsselwerten. 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 finden Sie unter Verwendung von Kostenzuordnungs-Tags im AWS Billing -Benutzerhandbuch.

So funktionieren Kostenzuweisungs-Tags mit

Sie können einem ein Tag hinzufügen. Diese Gruppierung erscheint jedoch nicht in Ihrer Rechnung. Damit Kostenzuweisungs-Tags auf angewendet werden können, müssen die folgenden Bedingungen erfüllt sein:

  • Die Tags müssen an die übergeordnete DB-Instance angehängt werden.

  • Die übergeordnete DB-Instance muss genauso vorhanden sein AWS-Konto wie der .

  • Die übergeordnete DB-Instance muss genauso vorhanden sein AWS-Region wie der .

gelten als verwaist, wenn sie nicht in derselben Region wie die übergeordnete DB-Instance existieren. Die Kosten für verwaiste Snapshots werden in einer einzigen Zeile ohne Tags zusammengefasst. Kontoübergreifende gelten nicht als verwaist, wenn die folgenden Bedingungen erfüllt sind:

  • Sie befinden sich in derselben Region wie die übergeordnete DB-Instance.

  • Die übergeordnete DB-Instance gehört dem Quellkonto.

    Anmerkung

    Wenn die übergeordnete DB-Instance einem anderen Konto gehört, gelten die Kostenzuweisungs-Tags nicht für kontenübergreifende Snapshots im Zielkonto.

Bewährte Methoden für das Taggen von Amazon RDS-Ressourcen

Wir empfehlen Ihnen, sich bei der Verwendung von Tags an die folgenden bewährten Methoden zu halten:

  • Dokumentieren Sie Konventionen für die Verwendung von Tags, die von allen Teams in Ihrer Organisation befolgt werden. Stellen Sie insbesondere sicher, dass die Namen sowohl beschreibend als auch konsistent sind. Standardisieren Sie beispielsweise das Format, environment:prod anstatt einige Ressourcen mit zu kennzeichnen. env:production

    Wichtig

    Speichern Sie keine personenbezogenen Daten (PII) oder andere vertrauliche Informationen in Tags.

  • Automatisieren Sie das Tagging, um Konsistenz zu gewährleisten. Sie können beispielsweise die folgenden Techniken verwenden:

    • Fügen Sie Tags in eine AWS CloudFormation Vorlage ein. Wenn Sie Ressourcen mit der Vorlage erstellen, werden die Ressourcen automatisch markiert.

    • Definieren und wenden Sie Tags mithilfe von AWS Lambda Funktionen an.

    • Erstellen Sie ein SSM-Dokument, das Schritte zum Hinzufügen von Tags zu Ihren RDS-Ressourcen enthält.

  • Verwenden Sie Tags nur bei Bedarf. Sie können bis zu 50 Tags für eine einzelne RDS-Ressource hinzufügen. Eine bewährte Methode besteht jedoch darin, eine unnötige Zunahme und Komplexität von Tags zu vermeiden.

  • Überprüfen Sie die Tags regelmäßig auf Relevanz und Richtigkeit. Entfernen oder ändern Sie veraltete Tags nach Bedarf.

  • Erwägen Sie das Erstellen von Tags mit dem AWS Tag-Editor in der AWS Management Console. Sie können den Tag-Editor verwenden, um mehreren unterstützten AWS Ressourcen, einschließlich RDS-Ressourcen, gleichzeitig Tags hinzuzufügen. Weitere Informationen finden Sie unter Tag Editor im Benutzerhandbuch von AWS Resource Groups.

Verwaltung von Tags in Amazon RDS

Sie haben die folgenden Möglichkeiten:

  • Erstellen Sie Tags, wenn Sie eine Ressource erstellen, z. B. wenn Sie den AWS CLI Befehl ausführencreate-db-instance.

  • Fügen Sie mithilfe des Befehls Tags zu einer vorhandenen Ressource hinzuadd-tags-to-resource.

  • Listet mithilfe des Befehls Tags auf, die mit einer bestimmten Ressource verknüpft sindlist-tags-for-resource.

  • Aktualisieren Sie die Tags mithilfe des Befehlsadd-tags-to-resource.

  • Entfernen Sie mithilfe des Befehls Tags aus einer Ressourceremove-tags-from-resource.

Die folgenden Verfahren zeigen, wie Sie typische Tagging-Operationen für Ressourcen durchführen können, die sich auf DB-Instances beziehen. Beachten Sie, dass Tags für Autorisierungszwecke zwischengespeichert werden. Aus diesem Grund können beim Hinzufügen oder Aktualisieren von Tags zu Amazon RDS-Ressourcen mehrere Minuten vergehen, bis die Änderungen verfügbar sind.

Amazon RDS-Ressourcen werden auf die gleiche Weise wie andere Ressourcen getaggt. Die folgenden Schritte zeigen, wie Sie eine Amazon RDS-DB-Instance taggen.

So fügen Sie ein Tag zu einer DB-Instance hinzu
  1. Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

    Anmerkung

    Geben Sie unter Filter databases (Datenbanken filtern) eine Textzeichenfolge ein, um die Liste der DB-Instances im Bereich Databases (Datenbanken) zu filtern. Es werden nur DB-Instances angezeigt, welche die Zeichenfolge enthalten.

  3. Wählen Sie den Namen der DB-Instance aus, die Sie mit einem Tag versehen möchten, um deren Details anzuzeigen.

  4. Scrollen Sie im Detailbereich nach unten zum Bereich Tags.

  5. Wählen Sie Add aus. Das Fenster Add tags (Tags hinzufügen) wird angezeigt.

    Fenster "Tags hinzufügen"
  6. Geben Sie einen Wert für Tag key (Tag-Schlüssel) und Wert ein.

  7. Wenn Sie ein weiteres Tag hinzufügen möchten, wählen Sie Add another Tag (Weiteres Tag hinzufügen) aus und geben Sie unter Tag key (Tag-Schlüssel) und Wert einen Wert ein.

    Wiederholen Sie diesen Schritt, bis Sie alle Tags hinzugefügt haben.

  8. Wählen Sie Add aus.

So löschen Sie ein Tag aus einer DB-Instance
  1. Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

    Anmerkung

    Geben Sie im Feld Databases (Datenbanken) eine Textzeichenfolge ein, um die Liste der DB-Instances im Bereich Databases (Datenbanken) zu filtern. Es werden nur DB-Instances angezeigt, welche die Zeichenfolge enthalten.

  3. Wählen Sie den Namen der entsprechenden DB-Instance aus, um deren Details anzuzeigen.

  4. Scrollen Sie im Detailbereich nach unten zum Bereich Tags.

  5. Wählen Sie das Tag aus, das Sie löschen möchten.

    Tag-Bereich
  6. Wählen Sie Löschen und dann im Fenster Löschen von Tags erneut Löschen aus.

Mithilfe der können Sie Tags für eine DB-Instance hinzufügen, auflisten oder entferne AWS CLI.

  • Verwenden Sie den AWS CLI Befehl, um einer Amazon RDS-Ressource ein oder mehrere Tags hinzuzufügen add-tags-to-resource.

  • Verwenden Sie den AWS CLI Befehl, um die Tags auf einer Amazon RDS-Ressource aufzulisten list-tags-for-resource.

  • Verwenden Sie den AWS CLI Befehl, um ein oder mehrere Tags aus einer Amazon RDS-Ressource zu entfernen remove-tags-from-resource.

Weitere Informationen zum Erstellen des erforderlichen ARN finden Sie unter Erstellen eines ARN für Amazon RDS.

Mithilfe der Amazon RDS-API können Sie Tags für eine DB-Instance hinzufügen, auflisten oder entfernen.

  • Verwenden Sie die API-Operation AddTagsToResource, um ein Tag zu einer Amazon RDS-Ressource hinzuzufügen.

  • Verwenden Sie die API-Operation , um die Tags für eine Amazon RDS-Ressource aufzulisten ListTagsForResource.

  • Verwenden Sie die API-Operation RemoveTagsFromResource, um Tags aus einer Amazon RDS-Ressource zu entfernen.

Weitere Informationen zum Erstellen des erforderlichen ARN finden Sie unter Erstellen eines ARN für Amazon RDS.

Wenn Sie in der Amazon RDS-API mit XML arbeiten, nutzen Sie das folgende Schema:

<Tagging> <TagSet> <Tag> <Key>Project</Key> <Value>Trinity</Value> </Tag> <Tag> <Key>User</Key> <Value>Jones</Value> </Tag> </TagSet> </Tagging>

Die folgende Tabelle enthält eine Liste der zulässigen XML-Tags und deren Eigenschaften. Bei den Werten für Key und wird zwischen Groß- und Kleinschreibung Value unterschieden. Zum Beispiel PROJECT=Trinity sind project=Trinity und unterschiedliche Tags.

Markieren von Elementen Beschreibung
TagSet Ein Tag-Satz ist ein Container für alle Tags, die einer Amazon Amazon RDS-Ressource zugewiesen sind. Es ist nur ein Tag-Satz pro Ressource zulässig. Sie arbeiten mit einem TagSet nur über die Amazon RDS-API.
Tag Ein Tag ist ein benutzerdefiniertes Schlüssel-Wert-Paar. Ein Tag-Satz kann 1 bis 50 Tags enthalten.
Schlüssel

Ein Schlüssel ist der erforderliche Name des Tags. Einschränkungen finden Sie unterTag-Struktur in Amazon RDS.

Der Zeichenfolgenwert kann aus 1 bis 128 Unicode-Zeichen bestehen. Ihm darf kein "aws:" oder "rds:" als Präfix vorangestellt werden. Die Zeichenfolge darf nur Unicode-Zeichen, Ziffern, Leerzeichen sowie "_", ".", "/", "=", "+", "-" enthalten (Java-Regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)").

Schlüssel müssen in einem Tag-Satz eindeutig sein. Sie können z. B. in einem Tag-Satz kein Schlüsselpaar mit gleichem Schlüssel, aber unterschiedlichen Werten verwenden, wie "Projekt/Trinity" und "Projekt/Xanadu".

Value

Ein Wert ist der optionale Wert des Tags. Informationen zu Einschränkungen finden Sie unterTag-Struktur in Amazon RDS.

Der Zeichenfolgenwert kann aus 1 bis 256 Unicode-Zeichen bestehen. Ihm darf kein "aws:" oder "rds:" als Präfix vorangestellt werden. Die Zeichenfolge darf nur Unicode-Zeichen, Ziffern, Leerzeichen sowie "_", ".", "/", "=", "+", "-" enthalten (Java-Regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)").

Die Werte innerhalb eines Tag-Satzes müssen nicht eindeutig und können null sein. Sie können beispielsweise über ein Schlüssel-Wert-Paar in einem Tag-Satz "Projekt/Trinity" und "Kostenstelle/Trinity" verfügen.

Tags in DB-Snapshots kopieren

Wenn Sie eine DB-Instance erstellen oder wiederherstellen, können Sie festlegen, dass die Tags aus der DB-Instance in Snapshots der DB-Instance kopiert werden. Das Kopieren von Tags stellt sicher, dass die Metadaten für die DB-Snapshots mit denen der Quell-DB-Instance übereinstimmen. Es wird außerdem sichergestellt, dass alle Zugriffsrichtlinien für die DB-Snapshots auch mit denen der Quell-DB-Instance übereinstimmen.

Sie können für die folgenden Aktionen festlegen, dass Tags in DB-Snapshots kopiert werden:

  • Erstellen einer DB-Instance

  • Wiederherstellen einer DB-Instance

  • Erstellen eines Lesereplikats

  • Kopieren eines DB-Snapshots

In den meisten Fällen werden Tags nicht standardmäßig kopiert. Wenn Sie jedoch eine DB-Instance aus einem DB-Snapshot wiederherstellen, prüft RDS, ob Sie neue Tags angeben. Wenn ja, werden die neuen Tags zur wiederhergestellten DB-Instance hinzugefügt. Wenn es keine neuen Tags gibt, fügt RDS der wiederhergestellten DB-Instance die Tags aus der Quell-DB-Instance zum Zeitpunkt der Snapshot-Erstellung hinzu.

Um zu verhindern, dass Tags von Quell-DB-Instances zu wiederhergestellten DB-Instances hinzugefügt werden, empfehlen wir Ihnen, beim Wiederherstellen einer DB-Instance neue Tags anzugeben.

Anmerkung

In einigen Fällen können Sie einen Wert für den --tags Parameter des Befehls AWS CLI create-db-snapshot angeben. Oder Sie geben mindestens ein Tag für die API-Operation CreateDBSnapshot an. In diesen Fällen kopiert RDS keine Tags von der Quell-DB-Instance in den neuen DB-Snapshot. Diese Funktionalität gilt sogar, wenn in der Quell-DB-Instance die Option --copy-tags-to-snapshot (CopyTagsToSnapshot) aktiviert ist.

Wenn Sie diesen Ansatz verwenden, können Sie eine Kopie einer DB-Instance aus einem DB-Snapshot erstellen. Dieser Ansatz vermeidet das Hinzufügen von Tags, die nicht für die neue DB-Instance gelten. Sie erstellen Ihren DB-Snapshot mithilfe des AWS CLI create-db-snapshot Befehls (oder der CreateDBSnapshot RDS-API-Operation). Nachdem Sie Ihren DB-Snapshot erstellt haben, können Sie Tags hinzufügen. Dieser Vorgang wird später in diesem Thema beschrieben.

Tutorial: Geben Sie mithilfe von Tags an, welche DB-Instances gestoppt werden sollen

In diesem Tutorial wird davon ausgegangen, dass Sie mehrere DB-Instances in einer Entwicklungs- oder Testumgebung haben. Sie müssen diese DB-Instances mehrere Tage lang aufbewahren. Einige DB-Instances führen Tests über Nacht durch, während andere über Nacht gestoppt und am nächsten Tag wieder gestartet werden können.

Das folgende Tutorial zeigt, wie man DB-Instances, die für einen Stopp über Nacht geeignet sind, ein Tag zuweist. Das Tutorial zeigt, wie ein Skript erkennen kann, welche DB-Instances das Tag haben, und dann die markierten DB-Instances stoppen kann. In diesem Beispiel spielt der Wertanteil des Schlüssel-Wert-Paares keine Rolle. Das Vorhandensein des stoppable-Tags bedeutet, dass die DB-Instance diese benutzerdefinierte Eigenschaft besitzt.

Im folgenden Tutorial funktionieren die Befehle und APIs für das Tagging mit ARNs, sodass RDS nahtlos über AWS Regionen, AWS Konten und verschiedene Ressourcentypen hinweg arbeiten kann, die möglicherweise identische Kurznamen haben. Sie können in CLI-Befehlen, die mit DB-Instances arbeiten, den ARN anstelle der DB-Instance-ID angeben.

Angabe, welche DB-Instances angehalten werden sollen
  1. Bestimmen Sie den ARN einer DB-Instance, die Sie als anhaltbar kennzeichnen wollen.

    Ersetzen Sie im folgenden Beispiel den Namen Ihrer eigenen DB-Instances durch dev-test-db-instance. Ersetzen Sie in nachfolgenden Befehlen mit ARN-Parametern den ARN Ihrer eigenen DB-Instance. Der ARN enthält Ihre eigene AWS Konto-ID und den Namen der AWS Region, in der sich Ihre DB-Instance befindet.

    $ aws rds describe-db-instances --db-instance-identifier dev-test-db-instance \ --query "*[].{DBInstance:DBInstanceArn}" --output text arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance
  2. Fügen Sie das Tag stoppable zu dieser DB-Instance hinzu.

    Der Name für dieses Tag wird von Ihnen ausgewählt. Da das Tag in diesem Beispiel als Attribut behandelt wird, das entweder vorhanden ist oder nicht, wird der Value=-Teil des --tags-Parameters weggelassen. Dieser Ansatz bedeutet, dass Sie vermeiden können, eine Namenskonvention zu entwickeln, die alle relevanten Informationen in Namen codiert. In einer solchen Konvention können Sie Informationen im DB-Instance-Namen oder Namen anderer Ressourcen codieren.

    $ aws rds add-tags-to-resource \ --resource-name arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance \ --tags Key=stoppable
  3. Bestätigen Sie, dass das Tag in der DB-Instance vorhanden ist.

    Mit den folgenden Befehlen werden die Tag-Informationen für die DB-Instance im JSON-Format und in einfachem tabulatorgetrenntem Text abgerufen.

    $ aws rds list-tags-for-resource \ --resource-name arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance { "TagList": [ { "Key": "stoppable", "Value": "" } ] } aws rds list-tags-for-resource \ --resource-name arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance --output text TAGLIST stoppable
  4. Stoppen Sie alle DB-Instances, die als gekennzeichnet sind. stoppable

    Im folgenden Beispiel wird eine Textdatei erstellt, die alle Ihre DB-Instances auflistet. Der Shell-Befehl durchläuft die Liste und prüft, ob jede DB-Instance mit dem entsprechenden Attribut gekennzeichnet ist, und führt den Befehl aws rds stop-db-instance für jede DB-Instance aus.

    $ aws rds describe-db-instances --query "*[].[DBInstanceArn]" --output text >/tmp/db_instance_arns.lst $ for arn in $(cat /tmp/db_instance_arns.lst) do match="$(aws rds list-tags-for-resource --resource-name $arn --output text | grep stoppable)" if [[ ! -z "$match" ]] then echo "DB instance $arn is tagged as stoppable. Stopping it now." # Note that you need to get the DB instance identifier from the ARN. dbid=$(echo $arn | sed -e 's/.*://') aws rds stop-db-instance --db-instance-identifier $dbid fi done DB instance arn:arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance is tagged as stoppable. Stopping it now. { "DBInstance": { "DBInstanceIdentifier": "dev-test-db-instance", "DBInstanceClass": "db.t3.medium", ...

Sie können am Ende eines jeden Tages ein Skript wie das vorherige ausführen, um sicherzustellen, dass nicht benötigte DB-Instances gestoppt werden. Sie können einen Job auch mit einem Dienstprogramm wie cron planen, um jede Nacht eine solche Überprüfung durchzuführen. Sie könnten so beispielsweise vorgehen, wenn einige DB-Instances versehentlich weiter ausgeführt wurden. Hier könnten Sie eine Feinabstimmung des Befehls vornehmen, mit dem die Liste der zu prüfenden DB-Instances vorbereitet wird.

Der folgende Befehl erzeugt eine Liste Ihrer DB-Instances mit dem Status available. Das Skript kann DB-Instances ignorieren, die bereits angehalten wurden, da sie unterschiedliche Statuswerte wie stopped oder stopping haben.

$ aws rds describe-db-instances \ --query '*[].{DBInstanceArn:DBInstanceArn,DBInstanceStatus:DBInstanceStatus}|[?DBInstanceStatus == `available`]|[].{DBInstanceArn:DBInstanceArn}' \ --output text arn:aws:rds:us-east-1:123456789102:db:db-instance-2447 arn:aws:rds:us-east-1:123456789102:db:db-instance-3395 arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance arn:aws:rds:us-east-1:123456789102:db:pg2-db-instance
Tipp

Sie können die Tags zuweisen und DB-Instances mit Hilfe dieser Tags finden, um die Kosten auf andere Weise zu senken. Nehmen wir zum Beispiel dieses Szenario mit DB-Instances, die für Entwicklungs- und Testzwecke verwendet werden. In diesem Fall können Sie einige DB-Instances festlegen, die am Ende eines jeden Tages gelöscht werden sollen. Oder Sie können sie so festlegen, dass ihre DB-Instances in Zeiten erwarteter geringer Auslastung in kleine DB-Instance-Klassen geändert werden.