

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.

# Marquage des Amazon RDS
<a name="USER_Tagging"></a><a name="tagging"></a>

Une balise Amazon RDS est une paire nom-valeur que vous définissez et associez avec une ressource Amazon RDS, comme une instance de base de données ou un instantané de base de données. Le nom s’appelle la clé. Vous pouvez éventuellement fournir une valeur pour la clé.

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](USER_Tagging.ARN.Constructing.md).

Vous pouvez utiliser des balises 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 Amazon RDS et contrôler les actions qui peuvent être appliquées à ces ressources. 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
+ Clusters globaux Aurora
+ Points de terminaison de cluster de bases de données
+ 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 bleus/verts
+ Intégrations sans ETL
+ Sauvegardes automatiques
+ Sauvegardes automatisées en cluster

**Note**  
Lorsque vous balisez une instance de base de données, Amazon RDS applique automatiquement ces balises aux ressources Performance Insights associées. Actuellement, vous ne pouvez pas baliser les proxys RDS et les points de terminaison des proxys RDS à l'aide du. AWS Management Console

**Topics**
+ [Pourquoi utiliser des balises des ressources Amazon RDS ?](#Tagging.Purpose)
+ [Fonctionnement des balises des ressources Amazon RDS](#Overview.Tagging)
+ [Bonnes pratiques relatives au balisage de ressources Amazon RDS](#Tagging.best-practices)
+ [Copie de balises vers des instantanés de base de données](#USER_Tagging.CopyTags)
+ [Marquage des ressources de sauvegarde automatisées](#USER_Tagging.AutomatedBackups)
+ [Ajout et suppression de balises dans Amazon RDS](#Tagging.HowTo)
+ [Didacticiel : Spécification des instances de bases de données à arrêter à l’aide de balises](Tagging.RDS.Autostop.md)

## Pourquoi utiliser des balises des ressources Amazon RDS ?
<a name="Tagging.Purpose"></a>

Vous pouvez utiliser des balises pour effectuer les tâches suivantes :
+ Classer vos ressources RDS par application, projet, département, environnement, etc. Par exemple, vous pouvez utiliser une clé de balise pour définir une catégorie, et la valeur de balise peut être un élément de cette catégorie. Vous pouvez créer la balise `environment=prod`. Par exemple, vous pouvez définir une clé de balise appelée `project` et une valeur de balise appelée `Salix`, en indiquant que la ressource Amazon RDS est attribuée au projet Salix.
+ Automatisez les tâches de gestion des ressources. Par exemple, vous pouvez créer une fenêtre de maintenance pour les instances balisées avec `environment=prod` différentes de la fenêtre pour les instances balisées avec `environment=test`. Vous pouvez également configurer des instantanés de base de données automatiques pour les instances balisées avec `environment=prod`.
+ Contrôlez l’accès aux ressources RDS dans le cadre d’une politique IAM. Pour cela, vous devez utiliser la clé de condition globale `aws:ResourceTag/tag-key`. Par exemple, une politique peut autoriser uniquement les utilisateurs du groupe `DBAdmin` à modifier les instances de base de données balisées avec `environment=prod`. Pour plus d'informations sur la gestion de l'accès aux ressources balisées à l'aide de politiques IAM, consultez [Identity and Access Management pour Amazon RDS](UsingWithRDS.IAM.md) la section [Contrôle de l'accès aux AWS ressources](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-resources) dans le *guide de l'utilisateur d'AWS Identity and Access Management*. 
+ Surveillez les ressources en fonction d’une balise. Par exemple, vous pouvez créer un tableau de CloudWatch bord Amazon pour les instances de base de données étiquetées avec`environment=prod`.
+ Suivez les coûts en regroupant les dépenses pour des ressources balisées de la même façon. Par exemple, si vous balisez les ressources RDS associées au projet Salix avec `project=Salix`, vous pouvez générer des rapports de coûts et allouer des dépenses à ce projet. Pour plus d’informations, consultez [Comment fonctionne AWS la facturation avec les tags dans Amazon RDS](#Tagging.Billing).

## Fonctionnement des balises des ressources Amazon RDS
<a name="Overview.Tagging"></a>

AWS n'applique aucune signification sémantique à vos balises. Les balises sont interprétées de façon stricte, en tant que chaîne de caractères. 

**Topics**
+ [Ensembles de balises dans Amazon RDS](#Overview.Tagging.Sets)
+ [Structure des balises dans Amazon RDS](#Overview.Tagging.Structure)
+ [Ressources Amazon RDS éligibles au balisage](#Overview.Tagging.Resources)
+ [Comment fonctionne AWS la facturation avec les tags dans Amazon RDS](#Tagging.Billing)

### Ensembles de balises dans Amazon RDS
<a name="Overview.Tagging.Sets"></a>

Chaque ressource Amazon RDS possède un conteneur appelé ensemble de balises. Le conteneur inclut toutes les balises attribuées à la ressource. Une ressource possède exactement un ensemble de balises. 

Un ensemble de balises contient de 0 à 50 balises. 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.

### Structure des balises dans Amazon RDS
<a name="Overview.Tagging.Structure"></a>

La structure d’une balise RDS se présente comme suit :

**Clé de balise**  
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, de chiffres et d’espaces Unicode, `_`, `.`, `:`, `/`, `=`, `+`, `-` et `@`. L’expression régulière Java est `"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"`. Les clés de balises sont sensibles à la casse. Ainsi, les clés `project` et `Project` sont distinctes.  
Une clé est propre à 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 `project=Trinity` et `project=Xanadu`.

**Valeur de balise**  
La valeur de balise correspond à la valeur de chaîne facultative d’une 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, de chiffres et d’espaces Unicode, `_`, `.`, `:`, `/`, `=`, `+`, `-` et `@`. L’expression régulière Java est `"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"`. Les valeurs de balises sont sensibles à la casse. Ainsi, les valeurs `prod` et `Prod` sont distinctes.  
Les valeurs 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`. 

### Ressources Amazon RDS éligibles au balisage
<a name="Overview.Tagging.Resources"></a>

Vous pouvez baliser les ressources Amazon RDS suivantes :
+ Instances DB
+ Clusters DB
+ Points de terminaison de cluster de bases de données
+ 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
**Note**  
À 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.
+ Déploiements bleus/verts
+ Intégrations zéro ETL (version préliminaire)
+ Sauvegardes automatiques
+ Sauvegardes automatisées en cluster

### Comment fonctionne AWS la facturation avec les tags dans Amazon RDS
<a name="Tagging.Billing"></a>

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 plus d’informations, consultez [Utilisation des balises d’allocation des coûts](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) dans le *Guide de l’utilisateur AWS Billing *.

#### Fonctionnement des balises de répartition des coûts avec les instantanés de de bases de données
<a name="Tagging.Billing.Snapshots"></a>

Vous pouvez ajouter un de bases de données à un instantané. Toutefois, votre facture ne reflètera pas ce groupement. Pour que des balises de répartition des coûts s’appliquent aux instantanés du de bases de données, les conditions suivantes doivent être remplies :
+ Les balises doivent être attachées à l’instance de base de données parent.
+ L'instance de base de données parent doit exister au même endroit Compte AWS que le snapshot du de base de données.
+ L'instance de base de données parent doit exister au même endroit Région AWS que le snapshot du de base de données.

Les instantanés de de bases de données sont considérés comme orphelins s’ils n’existent pas dans la même région que l’instance de base de données parent ou si l’instance de base de données parent est supprimée. Les instantanés de base de données orphelins ne prennent pas en charge les balises de répartition des coûts. Les coûts des instantanés orphelins sont agrégés dans un seul élément de ligne non balisé. Les instantanés de bases de données entre comptes ne sont pas considérés comme orphelins lorsque les conditions suivantes sont remplies :
+ Ils existent dans la même région que l’instance de base de données parent.
+ L’instance de base de données parent appartient au compte source.
**Note**  
Si l’instance de base de données parent appartient à un autre compte, les balises de répartition des coûts ne s’appliquent pas aux instantanés entre comptes du compte de destination.

## Bonnes pratiques relatives au balisage de ressources Amazon RDS
<a name="Tagging.best-practices"></a>

Lorsque vous utilisez des balises, nous vous recommandons de respecter les bonnes pratiques ci-dessous :
+ Documentez les conventions relatives à l’utilisation des balises qui sont suivies par toutes les équipes de votre organisation. En particulier, assurez-vous que les noms sont à la fois descriptifs et cohérents. Par exemple, normalisez le format `environment:prod` plutôt que de baliser certaines ressources avec `env:production`.
**Important**  
Ne stockez pas d’informations personnelles identifiables (PII) ou d’autres informations confidentielles ou sensibles dans des balises.
+ Automatisez le balisage pour garantir la cohérence. Par exemple, vous pouvez utiliser les techniques suivantes :
  + Incluez des balises dans un CloudFormation modèle. Lorsque vous créez des ressources à l’aide du modèle, elles sont balisées automatiquement.
  + Définissez et appliquez des balises à l'aide de AWS Lambda fonctions.
  + Créez un document SSM qui inclut les étapes pour ajouter des balises à vos ressources RDS.
+ Utilisez des balises uniquement lorsque cela est nécessaire. Vous pouvez ajouter jusqu’à 50 balises pour une seule ressource RDS, mais une bonne pratique consiste à éviter la prolifération et la complexité inutiles des balises.
+ Vérifiez régulièrement la pertinence et l’exactitude des balises. Supprimez ou modifiez les balises obsolètes selon vos besoins.
+ Envisagez de créer des balises à l'aide de l'éditeur de AWS balises dans le AWS Management Console. Vous pouvez utiliser l'éditeur de balises pour ajouter des balises à plusieurs AWS ressources prises en charge, y compris les ressources RDS, en même temps. Pour plus d’informations, consultez [Tag Editor](https://docs.aws.amazon.com/ARG/latest/userguide/tag-editor.html) dans le *Guide de l’utilisateur d’AWS Resource Groups*.

## Copie de balises vers des instantanés de base de données
<a name="USER_Tagging.CopyTags"></a>

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

Pour copier des balises pour les actions précédentes, choisissez **Copier les balises dans les instantanés** dans le AWS Management Console, ou spécifiez-les `--copy-tags-to-snapshot` dans le AWS CLI. Lorsque vous copiez un instantané de base de données, vous ne pouvez copier les balises associées que si vous copiez l’instantané de base de données dans le même compte. Vous ne pouvez pas copier de balises lorsque vous copiez un instantané de base de données entre comptes.

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 balises, et que l’instantané de base de données est dans le même compte que l’instance de base de données source, RDS ajoute les balises 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. RDS n’ajoute pas de balises à partir de l’instance de base de données source si l’instantané de base de données est copié et restauré dans un autre compte.

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.

**Note**  
Dans certains cas, vous pouvez inclure une valeur pour le `--tags` paramètre de la [create-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html) AWS CLI commande. Vous pouvez également fournir au moins une balise à l'opération [Create DBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBSnapshot.html) API. 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.

## Marquage des ressources de sauvegarde automatisées
<a name="USER_Tagging.AutomatedBackups"></a>

Les ressources de sauvegarde automatisées sont créées lorsque vous définissez une valeur de période de conservation des sauvegardes comprise entre 0 et une valeur supérieure à 0. Vous pouvez étiqueter les ressources de sauvegarde automatisées de l'instance ou du cluster lors de la création à l'aide du `--tag-specifications` paramètre.

### Paramètre de spécifications des balises
<a name="USER_Tagging.AutomatedBackups.TagSpecifications"></a>

APIs qui prennent en charge le paramètre de `--tag-specifications` requête (comme [create-db-instancerestore-db-instance-from](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)[-db-snapshot [create-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html)](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html), etc.) peuvent baliser les sauvegardes automatisées (type de ressource : `auto-backup` ou`cluster-auto-backup`) lors de la création.

#### Marquage des sauvegardes automatisées des instances
<a name="USER_Tagging.AutomatedBackups.TagSpecifications.Instance"></a>

`--tag-specifications`À utiliser `ResourceType=auto-backup` lors de la création ou de la modification d'instances de base de données sur lesquelles les sauvegardes automatisées sont activées.

#### Balisage des sauvegardes automatisées du cluster
<a name="USER_Tagging.AutomatedBackups.TagSpecifications.Cluster"></a>

`--tag-specifications`À utiliser `ResourceType=cluster-auto-backup` lors de la création de clusters de bases de données sur lesquels les sauvegardes automatiques sont activées.

#### Marquage des sauvegardes automatisées lors de la modification de l'instance de base de données
<a name="USER_Tagging.AutomatedBackups.TagSpecifications.ModifyBehavior"></a>

 Vous ne pouvez baliser les sauvegardes automatisées que `--tag-specifications` lorsque vous définissez la rétention des sauvegardes entre 0 et une valeur supérieure à 0. Si des sauvegardes automatisées existent déjà, utilisez plutôt [AddTagsToResource](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_AddTagsToResource.html)l'API.

**Note**  
Les balises de sauvegarde automatisées sont indépendantes des balises d'instance de base de données source, des balises de cluster de base de données ou des balises de capture d'écran de base de données.

## Ajout et suppression de balises dans Amazon RDS
<a name="Tagging.HowTo"></a>

Vous pouvez effectuer les opérations suivantes :
+ Créez des balises lorsque vous créez une ressource, par exemple lorsque vous exécutez la AWS CLI commande`create-db-instance`.
+ Ajoutez des balises à une ressource existante à l’aide de la commande `add-tags-to-resource`.
+ Répertoriez les balises associées à une ressource spécifique à l’aide de la commande `list-tags-for-resource`.
+ Mettez à jour les balises à l’aide de la commande `add-tags-to-resource`.
+ Supprimez des balises d’une ressource à l’aide de la commande `remove-tags-from-resource`.

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. Notez que les balises sont mises en cache à des fins d’autorisation. C’est pourquoi, lorsque vous ajoutez ou mettez à jour des balises sur les ressources Amazon RDS, plusieurs minutes peuvent s’écouler avant que les modifications ne soient disponibles. 

### Console
<a name="USER_Tagging.CON"></a>

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 à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans le 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.

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

1. Dans la section des détails, faites défiler jusqu’à la section **Balises**. 

1. Choisissez **Ajouter**. La fenêtre **Ajouter des balises** s’affiche.   
![\[Fenêtre Ajouter des balises\]](http://docs.aws.amazon.com/fr_fr/AmazonRDS/latest/UserGuide/images/RDSConsoleTagging5.png)

1. Saisissez une valeur pour **Tag key (Clé de balise)** et **Valeur**.

1. 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.

1. 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 à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans le 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.

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

1. Dans la section des détails, faites défiler jusqu’à la section **Balises**. 

1. Choisissez la balise que vous souhaitez supprimer.  
![\[Section Balises\]](http://docs.aws.amazon.com/fr_fr/AmazonRDS/latest/UserGuide/images/RDSConsoleTagging6.png)

1. Choisissez **Supprimer**, puis **Supprimer** dans la fenêtre **Supprimer les balises**. 

### AWS CLI
<a name="USER_Tagging.CLI"></a>

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 [https://docs.aws.amazon.com/cli/latest/reference/rds/add-tags-to-resource.html](https://docs.aws.amazon.com/cli/latest/reference/rds/add-tags-to-resource.html).
+ Pour répertorier les balises d'une ressource Amazon RDS, utilisez la AWS CLI commande [https://docs.aws.amazon.com/cli/latest/reference/rds/list-tags-for-resource.html](https://docs.aws.amazon.com/cli/latest/reference/rds/list-tags-for-resource.html).
+ Pour supprimer une ou plusieurs balises d'une ressource Amazon RDS, utilisez la AWS CLI commande [https://docs.aws.amazon.com/cli/latest/reference/rds/remove-tags-from-resource.html](https://docs.aws.amazon.com/cli/latest/reference/rds/remove-tags-from-resource.html).

Pour en savoir sur la création de l’ARN requis, consultez [Création d’un ARN pour Amazon RDS](USER_Tagging.ARN.Constructing.md).

### API RDS
<a name="USER_Tagging.API"></a>

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 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_AddTagsToResource.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_AddTagsToResource.html).
+ Pour répertorier des balises assignées à une ressource Amazon RDS, utilisez l’opération [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ListTagsForResource.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ListTagsForResource.html).
+ Pour supprimer des balises d’une ressource Amazon RDS, utilisez l’opération [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RemoveTagsFromResource.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RemoveTagsFromResource.html).

Pour en savoir sur la création de l’ARN requis, consultez [Création d’un ARN pour Amazon RDS](USER_Tagging.ARN.Constructing.md).

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

```
 1. <Tagging>
 2.       <TagSet>
 3.           <Tag>
 4.               <Key>Project</Key>
 5.               <Value>Trinity</Value>
 6.           </Tag>
 7.           <Tag>
 8.               <Key>User</Key>
 9.               <Value>Jones</Value>
10.           </Tag>
11.       </TagSet>
12.   </Tagging>
```

Le tableau suivant fournit une liste des balises XML autorisées et leurs caractéristiques. Les valeurs pour `Key` et `Value` sont sensibles à la casse. Par exemple, `project=Trinity` et `PROJECT=Trinity` sont des balises différentes. 


****  
<a name="user-tag-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/AmazonRDS/latest/UserGuide/USER_Tagging.html)

# Didacticiel : Spécification des instances de bases de données à arrêter à l’aide de balises
<a name="Tagging.RDS.Autostop"></a>

Ce didacticiel part du principe que vous disposez de plusieurs instances de base de données dans un environnement de développement ou de test. Vous devez conserver ces instances de base de données pendant plusieurs jours. Certaines instances de base de données s’exécutent pendant la nuit, alors que d’autres peuvent être arrêtées pendant la nuit et redémarrées le lendemain. 

Le didacticiel suivant montre comment affecter une balise aux instances de base de données qu’il convient d’arrêter pendant la nuit. Le didacticiel montre comment un script peut détecter quelles instances de base de données possèdent la balise, puis comment arrêter les instances de base de données balisé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. 

Dans le didacticiel suivant, les commandes et APIs le balisage fonctionnent avec ARNs, ce qui permet à RDS de fonctionner de manière fluide entre AWS les régions, les AWS comptes et les différents types de ressources pouvant avoir des noms abrégés 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.

**Spécifier les instances de bases de données à arrêter**

1. Déterminez l’ARN d’une instance de base de données que vous voulez désigner comme pouvant être arrêtée.

   Dans l'exemple suivant, remplacez le nom de vos propres instances de base de données 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 votre propre identifiant de AWS compte et le nom de la AWS région où se trouve votre instance de base de données. 

   ```
   $ 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
   ```

1. Ajoutez la balise `stoppable` à cette instance de base de données.

   Vous choisissez le nom de cette balise. Étant donné que cet exemple traite la balise comme un attribut présent ou absent, il omet la partie `Value=` du paramètre `--tags`. 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. 

   ```
   $ aws rds add-tags-to-resource \
     --resource-name arn:aws:rds:us-east-1:123456789102:db:dev-test-db-instance \
     --tags Key=stoppable
   ```

1. Confirmez que la balise est présente dans l’instance de base de données.

   Les commandes suivantes 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-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
   ```

1. Arrêtez toutes les instances de base de données désignées comme `stoppable`.

   L’exemple suivant crée un fichier texte répertoriant toutes vos instances de base de données. La commande shell passe la liste en revue et vérifie que chaque instance de base de données est balisée avec l’attribut approprié et exécute la commande `aws rds stop-db-instance` 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
   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",
           ...
   ```

Vous pouvez exécuter un script comme le précédent à 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 optimiser 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 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
```

**Astuce**  
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’instance de base de données pendant les périodes de faible utilisation prévues. 