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
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
À l'heure actuelle, vous ne pouvez pas étiqueter les proxys RDS et les points de terminaison RDS Proxy à l'aide de la AWS Management Console.
Rubriques
- Présentation des balises des ressources Amazon RDS
- Utilisation de balises pour le contrôle d'accès avec IAM
- Utilisation de balises pour produire des rapports de facturation détaillés
- Ajout, établissement d'une liste et suppression de balises
- Utilisation d'AWS Tag Editor
- Copie de balises vers des instantanés d'instance de base de données
- Didacticiel : Utilisation de balises pour spécifier les instances de bases de données à arrêter
- Utilisation de balises pour activer les sauvegardes dans AWS Backup
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 à des ressources AWS en fonction des identifications de cette ressource. Pour cela, vous devez utiliser la clé de condition globale aws:ResourceTag/
. Pour de plus amples informations, veuillez consulter Contrôle de l'accès aux ressources AWS dans le Guide de l'utilisateur AWS Identity and Access Management.tag-key
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 aux balises ; celles-ci 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 derds:
. 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
etcost-center=Trinity
.
Vous pouvez utiliser la AWS Management Console, l'AWS CLI ou l'API Amazon RDS pour ajouter, répertorier et supprimer des balises sur des 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 RDS.
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 étiquettes pour organiser votre facture AWS afin de refléter votre propre structure de coût. Pour ce faire, inscrivez-vous pour obtenir votre facture Compte AWS avec les valeurs de clé de balise 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.
Vous pouvez ajouter une balise à un instantané, toutefois, votre facture ne reflètera pas ce groupement.
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 .
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
-
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
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.
-
Sélectionnez le nom de l'instance de base de données que vous souhaitez baliser pour afficher ses détails.
-
Dans la section des détails, faites défiler jusqu'à la section Balises.
-
Choisissez Ajouter. La fenêtre Ajouter des balises s'affiche.
-
Saisissez une valeur pour Tag key (Clé de balise) et Valeur.
-
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.
-
Choisissez Ajouter.
Pour supprimer une balise d'une instance de base de données
-
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
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.
-
Sélectionnez le nom de l'instance de base de données pour afficher ses détails.
-
Dans la section des détails, faites défiler jusqu'à la section Balises.
Choisissez la balise que vous souhaitez supprimer.
-
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 étiquettes à une ressource Amazon RDS, utilisez la commande d'AWS CLI
add-tags-to-resource
.Pour répertorier les étiquettes sur une ressource Amazon RDS, utilisez la commande de l'AWS CLI
list-tags-for-resource
.Pour supprimer une ou plusieurs étiquettes d'une ressource Amazon RDS, utilisez la commande de l'AWS CLI
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 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 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 d'AWS Tag Editor
Vous pouvez parcourir et modifier les balises de vos ressources RDS dans la AWS Management Console grâce à AWS Tag Editor. 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 d'instance de base de données
Lorsque vous créez ou restaurez une instance de base de données, vous pouvez spécifier que les balises de l'instance de base de données soient copiées vers les snapshots de l'instance 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 à l'instance de base de données source. Elle garantit également que toutes les stratégies d'accès pour les instantanés de base de données correspondent également à l'instance de base de données source.
Vous pouvez spécifier que les balises soient copiées vers des snapshots DB pour les actions suivantes :
Création d'une instance de base de données.
Restauration d'une instance de base de données.
Création d'un réplica en lecture.
Copie d'un instantané de base de données.
Dans la plupart des cas, les identifications ne sont pas copiées par défaut. Toutefois, lorsque vous restaurez une instance de base de données depuis un instantané de bases de données, RDS vérifie si vous spécifiez de nouvelles identifications. Si oui, les nouvelles identifications sont ajoutées à l'instance de base de données restaurée. S'il n'y a pas de nouvelles identifications, RDS ajoute les identifications de l'instance de base de données source au moment de la création de l'instantané dans l'instance de base de données restaurée.
Pour empêcher l'ajout d'identifications provenant d'instances de base de données sources à des instances de base de données restaurées, nous vous recommandons de spécifier de nouvelles identifications lors de la restauration d'une instance de base de données.
Dans certains cas, vous pouvez inclure une valeur pour le paramètre --tag-key
de la commande AWS CLI create-db-snapshot. 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 commande AWS CLI create-db-snapshot
(ou de l'opération d'API RDS CreateDBSnapshot
). 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 instances de bases de données à arrêter
Supposons que vous créez un certain nombre d'instances de base de données dans un environnement de développement ou de test. Vous devez conserver toutes ces instances de base de données pendant plusieurs jours. Certaines instances de base de données exécutent des tests pendant la nuit. D'autres instances de base de données peuvent être arrêtées pendant la nuit et redémarrées le lendemain. L'exemple suivant montre comment affecter une balise aux instances de base de données qu'il convient d'arrêter pendant la nuit. Ensuite, l'exemple montre comment un script peut détecter quelles instances de base de données possèdent cette balise, puis comment arrêter ces instances de base de données. 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 l'instance de base de données possède cette propriété définie par l'utilisateur.
Spécifier les instances de bases de données à arrêter
-
Déterminez l'ARN d'une instance de base de données que vous voulez désigner comme pouvant être arrêtée.
Les commandes et les API pour le balisage fonctionnent avec les ARN. De cette façon, on arrive à un fonctionnement en toute transparence entre les régions AWS, les comptes AWS et différents types de ressources qui pourraient avoir des noms courts identiques. Vous pouvez spécifier l'ARN au lieu de l'ID de l'instance de base de données dans les commandes CLI qui fonctionnent sur des instances de base de données. Remplacez le nom de vos propres instances de base de donnée par
dev-test-db-instance
. Dans les commandes suivantes qui utilisent des paramètres d'ARN, remplacez l'ARN de votre propre instance de base de données. L'ARN inclut l'ID de votre propre compte AWS et le nom de la région AWS où se trouve votre instance de base de données.$
aws rds describe-db-instances --db-instance-identifierdev-test-db-instance
\ --query "*[].{DBInstance:DBInstanceArn}" --output textarn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance
-
Ajoutez la balise
stoppable
à cette instance de base de données.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-namearn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance
\ --tags Key=stoppable -
Confirmez que la balise est présente dans l'instance de base de données.
Ces commandes récupèrent les informations sur la balise pour l'instance de base de données au format JSON et en texte brut séparé par des tabulations.
$
aws rds list-tags-for-resource \ --resource-namearn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance
{ "TagList": [ { "Key": "stoppable", "Value": "" } ] }
aws rds list-tags-for-resource \ --resource-namearn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance
--output textTAGLIST stoppable
-
Pour arrêter toutes les instances de base de données désignées comme
stoppable
, préparez une liste de toutes vos instances de base de données. Passez la liste en revue et vérifiez que chaque instance de base de données est balisée avec l'attribut approprié.Cet exemple Linux utilise des scripts shell. Ce script enregistre la liste des ARN d'instance de base de données dans un fichier temporaire, puis exécute des commandes de l'interface de ligne de commande pour chaque instance de base de données.
$
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 doneDB 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", ...
Vous pouvez exécuter un script comme celui-ci à la fin de chaque journée pour vous assurer que les instances de base de données non essentielles sont arrêtées. 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 certaines instances 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 instances de base de données à vérifier.
La commande suivante crée une liste de vos instances de base de données, mais uniquement celles au statut available
. Le script peut ignorer les instances de base de données qui sont déjà arrêtées, car elles auront des valeurs de statut différentes telles que stopped
ou stopping
.
$
aws rds describe-db-instances \ --query '*[].{DBInstanceArn:DBInstanceArn,DBInstanceStatus:DBInstanceStatus}|[?DBInstanceStatus == `available`]|[].{DBInstanceArn:DBInstanceArn}' \ --output textarn: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
Vous pouvez utiliser l'attribution de balises et la recherche d'instances de base de données grâce à ces balises pour réduire les coûts par d'autres moyens. Par exemple, prenez ce scénario avec des instances de base de données utilisées pour le développement et les tests. Dans ce cas, vous pouvez désigner certaines instances de base de données à supprimer à la fin de chaque journée. Vous pouvez également les désigner pour que leurs instances de base de données soient remplacées par de petites classes d'instances de base de données pendant les périodes de faible utilisation prévues.
Utilisation de balises pour activer les sauvegardes dans AWS Backup
AWS Backup est un service de sauvegarde entièrement géré qui vous permet de centraliser et d'automatiser facilement la sauvegarde des données sur les services AWS dans le cloud et sur site. Vous pouvez gérer les sauvegardes de vos instances de base de données Amazon RDS dans AWS Backup.
Pour activer les sauvegardes dans AWS Backup, vous utilisez le balisage des ressources pour associer votre instance de base de données à un plan de sauvegarde.
Cet exemple suppose que vous avez déjà créé un plan de sauvegarde dans AWS Backup. Vous utilisez exactement la même balise pour votre instance de base de données que celle dans votre plan de sauvegarde, comme illustré dans la figure suivante.

Pour de plus amples informations sur AWS Backup, veuillez consulter le Guide du développeur AWS Backup.
Vous pouvez affecter une balise à une instance de base de données à l'aide de la AWS Management Console, de l'interface AWS CLI ou de l'API RDS. Les exemples suivants concernent la console et l'interface de ligne de commande.
Pour affecter une balise à une instance de base de données
Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/
. -
Dans la panneau de navigation, choisissez Databases (Bases de données).
-
Choisissez le lien correspondant à l'instance de base de données à laquelle vous souhaitez affecter une balise.
-
Sur la page de détails de la base de données, sélectionnez l'onglet Tags (Balises).
-
Sous Tags (Balises), choisissez Add tags (Ajouter des balises).
-
Sous Add tags (Ajouter des balises) :
-
Pour le champ Tag key (Clé de balise), entrez
BackupPlan
. -
Pour le champ Value (Valeur), entrez
Test
. -
Choisissez Ajouter.
-
Le résultat est affiché sous Tags (Balises).

Pour affecter une balise à une instance de base de données
-
Utilisez la commande suivante de l'interface de ligne de commande :
Pour Linux, macOS ou Unix :
aws rds add-tags-to-resource \ --resource-name arn:aws:rds:us-east-1:
123456789012
:db:new-orcl-db
\ --tags Key=BackupPlan,Value=TestPour Windows :
aws rds add-tags-to-resource ^ --resource-name arn:aws:rds:us-east-1:
123456789012
:db:new-orcl-db
^ --tags Key=BackupPlan,Value=Test
La commande de l'interface de ligne de commande add-tags-to-resource
ne renvoie aucun résultat.
Pour confirmer que l'instance de base de données est balisée
-
Utilisez la commande suivante de l'interface de ligne de commande :
Pour Linux, macOS ou Unix :
aws rds list-tags-for-resource \ --resource-name arn:aws:rds:us-east-1:
123456789012
:db:new-orcl-db
Pour Windows :
aws rds list-tags-for-resource ^ --resource-name arn:aws:rds:us-east-1:
123456789012
:db:new-orcl-db
La commande de l'interface de ligne de commande list-tags-for-resource
renvoie le résultat suivant :
{ "TagList": [ { "Key": "BackupPlan", "Value": "Test" } ] }