Balisage de ressources Amazon RDS - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Balisage de ressources Amazon RDS

Vous pouvez utiliser des balises Amazon RDS pour ajouter des métadonnées à vos ressources Amazon RDS. Vous pouvez utiliser les balises pour ajouter vos propres notations sur les instances de base de données, les instantanés, les clusters Aurora, etc. Cela peut vous aider à documenter vos ressources Amazon RDS. Vous pouvez également utiliser les balises avec des procédures de maintenance automatisées.

Vous pouvez notamment utiliser ces balises avec les politiques IAM. Vous pouvez les utiliser pour gérer l'accès aux ressources RDS et contrôler les actions qui peuvent être appliquées aux ressources RDS. Vous pouvez également utiliser ces balises pour suivre les coûts en regroupant les dépenses pour des ressources balisées de la même façon.

Vous pouvez baliser les ressources Amazon RDS suivantes :

  • Instances DB

  • Clusters DB

  • Points de terminaison du cluster de bases de

  • Réplicas en lecture

  • Instantanés de base de données

  • Instantanés de cluster DB

  • Instances DB réservées

  • Abonnements aux événements

  • Groupes d'options DB

  • Groupes de paramètres DB

  • Groupes de paramètres de cluster DB

  • Groupes de sous-réseaux DB

  • Proxys RDS

  • Points de terminaison RDS Proxy

  • Déploiements bleu/vert

  • Intégrations zéro ETL (version préliminaire)

Note

Actuellement, vous ne pouvez pas baliser les proxys RDS et les points de terminaison des proxys RDS à l'aide du. AWS Management Console

Présentation des balises des ressources Amazon RDS

Une balise Amazon RDS est une paire nom-valeur que vous définissez et associez avec une ressource Amazon RDS. Le nom s'appelle la clé. Fournir une valeur pour la clé est facultatif. Vous pouvez utiliser des balises pour assigner des informations arbitraires à une ressource Amazon RDS. Vous pouvez utiliser une clé de balise, par exemple, pour définir une catégorie, et la valeur de balise peut être un élément de cette catégorie. Par exemple, vous pouvez définir une clé de balise « projet » et une valeur de balise « Salix ». Dans ce cas, cela indique que la ressource Amazon RDS est affectée au projet Salix. Vous pouvez également utiliser des balises pour désigner des ressources Amazon RDS destinées aux tests ou à la production en utilisant une clé telle que environment=test ou environment=production. Nous vous recommandons d'utiliser un ensemble cohérent de clés de balise pour faciliter le suivi des métadonnées associées aux ressources Amazon RDS.

En outre, vous pouvez utiliser des conditions dans vos politiques IAM pour contrôler l'accès aux AWS ressources en fonction des balises associées à ces ressources. Pour cela, vous devez utiliser la clé de condition globale aws:ResourceTag/tag-key. Pour plus d'informations, consultez la section Contrôle de l'accès aux AWS ressources dans le guide de l'utilisateur d'AWS Identity and Access Management.

Chaque ressource Amazon RDS possède un ensemble de balises qui contient toutes les balises assignées à cette ressource Amazon RDS. Un ensemble de balises peut contenir jusqu'à 50 balises ou n'en contenir aucune. Si vous ajoutez une balise à une ressource RDS ayant la même clé qu'une balise existante sur cette ressource, la nouvelle valeur remplace l'ancienne valeur.

AWS n'applique aucune signification sémantique à vos balises ; les balises sont interprétées strictement comme des chaînes de caractères. RDS peut définir des balises sur une instance de base de données ou d'autres ressources RDS. Le paramètre de balise dépend des options que vous utilisez lorsque vous créez la ressource. Par exemple, Amazon RDS peut ajouter une balise indiquant qu'une instance de bases de données est destinée à la production ou aux tests.

  • La clé de balise correspond au nom obligatoire de la balise. La valeur de la chaîne peut comporter de 1 à 128 caractères Unicode et elle ne peut pas être précédée de aws: ou de rds:. La chaîne peut uniquement contenir l'ensemble de lettres Unicode, de chiffres, d'espaces, « _ », « . », « : », « / », « = », « + », « - », « @ » (expression Java : "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$").

  • La valeur de balise correspond à la valeur de chaîne facultative de la balise. La valeur de la chaîne peut comporter de 1 à 256 caractères Unicode. La chaîne peut uniquement contenir l'ensemble de lettres Unicode, de chiffres, d'espaces, « _ », « . », « : », « / », « = », « + », « - », « @ » (expression Java : "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$").

    Les valeurs comprises dans un ensemble de balises ne doivent pas nécessairement être uniques et peuvent être null. Par exemple, vous pouvez avoir une paire clé-valeur dans un ensemble de balises project=Trinity et cost-center=Trinity.

Vous pouvez utiliser l'API AWS Management Console AWS CLI, la ou l'API Amazon RDS pour ajouter, répertorier et supprimer des balises sur les ressources Amazon RDS. Lorsque vous utilisez l'interface de ligne de commande ou l'API, assurez-vous de fournir l'Amazon Resource Name (ARN) pour la ressource RDS avec laquelle vous souhaitez travailler. Pour plus d'informations sur la création d'un ARN, consultez Création d'un ARN pour Amazon RDS.

Les balises sont mises en cache à des fins d'autorisation. Pour cette raison, les ajouts et les mises à jour sur les balises sur les ressources Amazon RDS peuvent prendre plusieurs minutes avant d'être disponibles.

Utilisation de balises pour le contrôle d'accès avec IAM

Vous pouvez utiliser des balises avec les politiques IAM pour gérer l'accès à vos ressources Amazon RDS. Vous pouvez également utiliser des balises pour contrôler les actions qui peuvent être appliquées aux ressources Amazon RDS.

Pour plus d'informations sur la gestion de l'accès aux ressources balisées avec des stratégies IAM, consultez Identity and Access Management pour Amazon Aurora.

Utilisation de balises pour produire des rapports de facturation détaillés

Vous pouvez également utiliser ces balises pour suivre les coûts en regroupant les dépenses pour des ressources balisées de la même façon.

Utilisez des balises pour organiser votre AWS facture afin de refléter votre propre structure de coûts. Pour ce faire, inscrivez-vous pour recevoir votre Compte AWS facture avec les valeurs clés du tag incluses. Ensuite, pour voir le coût de vos ressources combinées, organisez vos informations de facturation en fonction des ressources possédant les mêmes valeurs de clé de balise. Par exemple, vous pouvez baliser plusieurs ressources avec un nom d'application spécifique, puis organiser vos informations de facturation pour afficher le coût total de cette application dans plusieurs services. Pour de plus amples informations, veuillez consulter Utilisation des balises d'allocation des coûts dans le Guide de l'utilisateur AWS Billing .

Note

Vous pouvez ajouter une balise à un instantané de cluster de base de données ; toutefois, votre facture ne reflétera pas ce regroupement.

Pour que les balises de répartition des coûts s'appliquent aux instantanés du cluster de bases de données, les balises doivent être attachées au cluster d' de base de données parent, et le cluster d' parent doit exister au même endroit Région AWS que le cliché. Les coûts des instantanés orphelins sont regroupés dans un seul article non balisé.

Ajout, établissement d'une liste et suppression de balises

Les procédures suivantes montrent comment effectuer des opérations d'étiquetage courantes sur des ressources liées à des instances de base de données et à des clusters de base de données Aurora.

La processus de balisage d'une ressource Amazon RDS est semblable pour toutes les ressources. La procédure suivante indique comment baliser une instance de base de données Amazon RDS.

Pour ajouter une balise à une instance de base de données
  1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans la panneau de navigation, choisissez Databases (Bases de données).

    Note

    Pour filtrer la liste des instances de base de données dans le volet Bases de données, saisissez une chaîne de texte dans Filter databases (Filtrer les bases de données). Seules les instances de base de données qui contiennent la chaîne apparaissent.

  3. Sélectionnez le nom de l'instance de base de données que vous souhaitez baliser pour afficher ses détails.

  4. Dans la section des détails, faites défiler jusqu'à la section Balises.

  5. Choisissez Ajouter. La fenêtre Ajouter des balises s'affiche.

    
            Fenêtre Ajouter des balises
  6. Saisissez une valeur pour Tag key (Clé de balise) et Valeur.

  7. Pour ajouter une autre balise, vous pouvez choisir Ajouter une autre balise et saisir une valeur pour Tag key (Clé de balise) et Valeur.

    Répétez cette étape autant de fois que nécessaire.

  8. Choisissez Ajouter.

Pour supprimer une balise d'une instance de base de données
  1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans la panneau de navigation, choisissez Databases (Bases de données).

    Note

    Pour filtrer la liste des instances de base de données dans le volet Bases de données, saisissez une chaîne de texte dans la zone Filter databases (Filtrer les bases de données). Seules les instances de base de données qui contiennent la chaîne apparaissent.

  3. Sélectionnez le nom de l'instance de base de données pour afficher ses détails.

  4. Dans la section des détails, faites défiler jusqu'à la section Balises.

  5. Choisissez la balise que vous souhaitez supprimer.

    
          Section Balises
  6. Choisissez Supprimer, puis Supprimer dans la fenêtre Supprimer les balises.

Vous pouvez ajouter, répertorier ou supprimer des balises pour une instance de base de données à l'aide de l AWS CLI.

  • Pour ajouter une ou plusieurs balises à une ressource Amazon RDS, utilisez la AWS CLI commande add-tags-to-resource.

  • Pour répertorier les balises d'une ressource Amazon RDS, utilisez la AWS CLI commande list-tags-for-resource.

  • Pour supprimer une ou plusieurs balises d'une ressource Amazon RDS, utilisez la AWS CLI commande remove-tags-from-resource.

Pour en savoir sur la création de l'ARN requis, consultez Création d'un ARN pour Amazon RDS.

Vous pouvez ajouter, répertorier ou supprimer des balises pour une instance de base de données à l'aide de l'API Amazon RDS.

  • Pour ajouter une balise à une ressource Amazon RDS, utilisez l'opération AddTagsToResource.

  • Pour répertorier des balises assignées à une ressource Amazon RDS, utilisez l'opération ListTagsForResource.

  • Pour supprimer des balises d'une ressource Amazon RDS, utilisez l'opération RemoveTagsFromResource.

Pour en savoir sur la création de l'ARN requis, consultez Création d'un ARN pour Amazon RDS.

Lorsque vous travaillez avec XML à l'aide de l'API Amazon RDS, les balises utilisent le schéma suivant :

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

Le tableau suivant fournit une liste des balises XML autorisées et leurs caractéristiques. Les valeurs pour la clé et la valeur sont sensibles à la casse. Par exemple, projet=Trinity et PROJET=Trinity sont deux balises différentes.

Elément de balisage Description
TagSet Un ensemble de balises contient toutes les balises assignées à une ressource Amazon RDS. Il ne peut y avoir qu'un ensemble de balises par ressource. Vous travaillez avec un TagSet uniquement via l'API Amazon RDS.
Tag Une balise est une paire clé-valeur définie par l'utilisateur. Il peut y avoir de 1 à 50 balises dans un ensemble de balises.
Key

Une clé est le nom obligatoire de la balise. La valeur de la chaîne peut comporter de 1 à 128 caractères Unicode et elle ne peut pas être précédée de aws: ou de rds:. La chaîne peut uniquement contenir l'ensemble de lettres Unicode, de chiffres, d'espaces, « _ », « . », « / », « = », « + », « - », (expression Java : "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$").

Les clés doivent être propres à un ensemble de balises. Par exemple, vous ne pouvez pas avoir une paire-clé dans un ensemble de balises avec la clé identique mais des valeurs différentes comme projet/Trinity et projet/Xanadu.

Valeur

Une valeur est la valeur facultative de la balise. La valeur de la chaîne peut comporter de 1 à 256 caractères Unicode et elle ne peut pas être précédée de aws: ou de rds:. La chaîne peut uniquement contenir l'ensemble de lettres Unicode, de chiffres, d'espaces, « _ », « . », « / », « = », « + », « - », (expression Java : "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$").

Les valeurs comprises dans un ensemble de balises ne doivent pas nécessairement être uniques et peuvent être null. Par exemple, vous pouvez avoir une paire clé-valeur dans un ensemble de balises appelé projet/Trinity et centre-de-coûts/Trinity.

Utilisation de l'éditeur de AWS balises

Vous pouvez parcourir et modifier les balises de vos ressources RDS dans le à l'aide AWS Management Console de l'éditeur de AWS balises. Pour plus d'informations, consultez la section Tag Editor dans le Guide de l'utilisateur d'AWS Resource Groups.

Copie de balises vers des instantanés de cluster de base de données

Lorsque vous créez ou restaurez un cluster de base de données, vous pouvez spécifier que les balises du cluster de base de données sont copiées vers des instantanés du cluster de base de données. La copie des balises garantit que les métadonnées pour les instantanés de base de données correspondent au cluster de bases de données source. Elle garantit également que toutes les stratégies d'accès pour l'instantané de base de données correspondent également au cluster de bases de données source. Les balises ne sont pas copiées par défaut.

Vous pouvez spécifier que les balises soient copiées vers des snapshots DB pour les actions suivantes :

  • Création d'un cluster de base de données.

  • Restauration d'un cluster de base de données.

  • Création d'un réplica en lecture.

  • Copie d'un instantané de cluster de base de données.

Note

Dans certains cas, vous pouvez inclure une valeur pour le --tags paramètre de la create-db-snapshot AWS CLI commande. Vous pouvez également fournir au moins une balise à l'opération d'API CreateDBSnapshot. Dans ces cas, RDS ne copie pas les balises de l'instance de base de données source vers le nouvel instantané de base de données. Cette fonctionnalité s'applique même si l'option --copy-tags-to-snapshot (CopyTagsToSnapshot) est activée sur l'instance de base de données source.

Si vous optez pour cette approche, vous pouvez créer une copie d'une instance de base de données à partir d'un instantané de base de données. Cette approche évite d'ajouter des balises qui ne s'appliquent pas à la nouvelle instance de base de données. Vous créez votre instantané de base de données à l'aide de la AWS CLI create-db-snapshot commande (ou de l'opération de l'API CreateDBSnapshot RDS). Après avoir créé votre instantané de base de données, vous pouvez ajouter des balises comme décrit plus loin dans cette rubrique.

Didacticiel : Utilisation de balises pour spécifier les clusters de bases de données Aurora à arrêter

Supposons que vous créez un certain nombre de clusters de base de données Aurora dans un environnement de développement ou de test. Vous devez conserver tous ces clusters pendant plusieurs jours. Certains clusters exécutent des tests pendant la nuit. D'autres clusters peuvent être arrêtés pendant la nuit et redémarrés le lendemain. L'exemple suivant montre comment affecter une balise aux clusters qu'il convient d'arrêter pendant la nuit. Ensuite, l'exemple montre comment un script peut détecter les clusters qui possèdent cette balise, puis comment arrêter ces clusters. Dans cet exemple, la partie valeur de la paire clé-valeur n'a pas d'importance. La présence de la balise stoppable signifie que le cluster possède cette propriété définie par l'utilisateur.

Spécifier les clusters de bases de données Aurora à arrêter
  1. Déterminez l'ARN d'un cluster que vous voulez désigner comme pouvant être arrêté.

    Les commandes et les API pour le balisage fonctionnent avec les ARN. Ils peuvent ainsi fonctionner de manière fluide entre AWS les régions, les AWS comptes et les différents types de ressources dont les noms abrégés peuvent être identiques. Vous pouvez spécifier l'ARN au lieu de l'ID du cluster dans les commandes CLI qui fonctionnent sur les clusters. Remplacez le nom de votre propre cluster par dev-test-cluster. Dans les commandes suivantes qui utilisent des paramètres d'ARN, remplacez l'ARN de votre propre cluster. L'ARN inclut votre propre identifiant de AWS compte et le nom de la AWS région où se trouve votre cluster.

    $ aws rds describe-db-clusters --db-cluster-identifier dev-test-cluster \ --query "*[].{DBClusterArn:DBClusterArn}" --output text arn:aws:rds:us-east-1:123456789:cluster:dev-test-cluster
  2. Ajoutez la balise stoppable à ce cluster.

    Vous choisissez le nom de cette balise. Cette approche signifie que vous pouvez éviter de concevoir une convention de dénomination qui encode toutes les informations pertinentes dans les noms. Dans une telle convention, vous pouvez encoder des informations dans le nom de l'instance de base de données ou les noms d'autres ressources. Étant donné que cet exemple traite la balise comme un attribut présent ou absent, il omet la partie Value= du paramètre --tags.

    $ aws rds add-tags-to-resource \ --resource-name arn:aws:rds:us-east-1:123456789:cluster:dev-test-cluster \ --tags Key=stoppable
  3. Confirmez que la balise est présente dans le cluster.

    Ces commandes récupèrent les informations sur la balise pour le cluster au format JSON et en texte brut séparé par des tabulations.

    $ aws rds list-tags-for-resource \ --resource-name arn:aws:rds:us-east-1:123456789:cluster:dev-test-cluster { "TagList": [ { "Key": "stoppable", "Value": "" } ] } $ aws rds list-tags-for-resource \ --resource-name arn:aws:rds:us-east-1:123456789:cluster:dev-test-cluster --output text TAGLIST stoppable
  4. Pour arrêter tous les clusters désignés comme stoppable, préparez une liste de tous vos clusters. Passez la liste en revue et vérifiez que chaque cluster est balisé avec l'attribut approprié.

    Cet exemple Linux utilise le scripting Shell pour enregistrer la liste des ARN de cluster dans un fichier temporaire, puis pour exécuter des commandes CLI pour chaque cluster.

    $ aws rds describe-db-clusters --query "*[].[DBClusterArn]" --output text >/tmp/cluster_arns.lst $ for arn in $(cat /tmp/cluster_arns.lst) do match="$(aws rds list-tags-for-resource --resource-name $arn --output text | grep 'TAGLIST\tstoppable')" if [[ ! -z "$match" ]] then echo "Cluster $arn is tagged as stoppable. Stopping it now." # Note that you can specify the full ARN value as the parameter instead of the short ID 'dev-test-cluster'. aws rds stop-db-cluster --db-cluster-identifier $arn fi done Cluster arn:aws:rds:us-east-1:123456789:cluster:dev-test-cluster is tagged as stoppable. Stopping it now. { "DBCluster": { "AllocatedStorage": 1, "AvailabilityZones": [ "us-east-1e", "us-east-1c", "us-east-1d" ], "BackupRetentionPeriod": 1, "DBClusterIdentifier": "dev-test-cluster", ...

Vous pouvez exécuter un script comme celui-ci à la fin de chaque journée pour vous assurer que les clusters non essentiels sont arrêtés. Vous pouvez également planifier une tâche à l'aide d'un utilitaire tel que cron pour effectuer une telle vérification chaque nuit. Par exemple, vous pouvez le faire si certains clusters de base de données restaient en cours d'exécution par erreur. Dans ce cas, vous pouvez affiner la commande qui prépare la liste des clusters à vérifier.

La commande suivante crée une liste de vos clusters, mais uniquement ceux au statut available. Le script peut ignorer les clusters qui sont déjà arrêtés, car ils auront des valeurs de statut différentes telles que stopped ou stopping.

$ aws rds describe-db-clusters \ --query '*[].{DBClusterArn:DBClusterArn,Status:Status}|[?Status == `available`]|[].{DBClusterArn:DBClusterArn}' \ --output text arn:aws:rds:us-east-1:123456789:cluster:cluster-2447 arn:aws:rds:us-east-1:123456789:cluster:cluster-3395 arn:aws:rds:us-east-1:123456789:cluster:dev-test-cluster arn:aws:rds:us-east-1:123456789:cluster:pg2-cluster
Astuce

Vous pouvez utiliser l'attribution de balises et la recherche de clusters qui ont ces balises pour réduire les coûts par d'autres moyens. Par exemple, prenez ce scénario avec des clusters de base de données Aurora utilisés pour le développement et les tests. Ici, vous pouvez désigner certains clusters à supprimer à la fin de chaque journée, ou pour lesquels il faut uniquement supprimer leurs instances de base de données du lecteur. Vous pouvez également désigner celles pour lesquelles leurs instances de base de données sont remplacées par de petites classes d'instances de base de données pendant les périodes de faible utilisation prévues.