Création d'un groupe de sous-réseaux Amazon DocumentDB - Amazon DocumentDB

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.

Création d'un groupe de sous-réseaux Amazon DocumentDB

Lorsque vous créez un cluster Amazon DocumentDB, vous devez choisir un Amazon VPC et le groupe de sous-réseaux correspondant au sein de cet Amazon VPC pour lancer votre cluster. Les sous-réseaux déterminent la zone de disponibilité et la plage d'adresses IP au sein de la zone de disponibilité que vous souhaitez utiliser pour lancer une instance.

Un groupe de sous-réseaux est un ensemble nommé de sous-réseaux (ou AZ) qui vous permet de spécifier les zones de disponibilité que vous souhaitez utiliser pour lancer des instances Amazon DocumentDB. Par exemple, dans un cluster comportant trois instances, il est recommandé de provisionner chacune de ces instances dans des AZ distincts, afin d'optimiser la haute disponibilité. Ainsi, si une seule AZ échoue, cela n'affectera qu'une seule instance.

Actuellement, les instances Amazon DocumentDB peuvent être mises en service dans un maximum de trois AZ. Même si un groupe de sous-réseaux comporte plus de trois sous-réseaux, vous ne pourrez utiliser que trois de ces sous-réseaux pour créer un cluster Amazon DocumentDB. Par conséquent, lorsque vous créez un groupe de sous-réseaux, nous vous recommandons de ne choisir que les trois sous-réseaux dont vous souhaitez déployer vos instances.

Par exemple : un cluster est créé et Amazon DocumentDB choisit AZs {1A, 1B et 1C}. Si vous essayez de créer une instance dans la zone de disponibilité {1D}, l'appel d'API échoue. Toutefois, si vous choisissez de créer une instance, sans spécifier la zone de référence particulière, Amazon DocumentDB choisira une instance en votre nom. Amazon DocumentDB utilise un algorithme pour équilibrer la charge des instances entre les AZ afin de vous aider à atteindre une haute disponibilité. Si trois instances sont provisionnées, par défaut, elles seront provisionnées sur trois AZ et ne seront pas toutes provisionnées dans une seule AZ.

Bonnes pratiques

  • Sauf si vous avez une raison précise, créez toujours un groupe de sous-réseaux avec trois sous-réseaux. Cela garantit que les clusters comportant trois instances ou plus seront en mesure d'atteindre une disponibilité accrue, car les instances seront provisionnées sur trois AZ.

  • Répartissez toujours les instances sur plusieurs zones de disponibilité pour obtenir une haute disponibilité. Ne placez jamais toutes les instances d'un cluster dans une seule zone de disponibilité.

  • Des événements de basculement pouvant se produire à n'importe quel moment, vous ne devez pas supposer qu'une instance principale ou des instances de réplica seront toujours placées dans une zone de disponibilité spécifique.

Comment créer un groupe de sous-réseaux

Vous pouvez utiliser leAWS Management Console ouAWS CLI pour créer un groupe de sous-réseaux Amazon DocumentDB :

Using the AWS Management Console

Pour créer un groupe de sous-réseaux Amazon DocumentDB.

Pour créer un groupe de sous-réseaux Amazon DocumentDB
  1. Connectez-vous à laAWS Management Console et ouvrez la console Amazon DocumentDB à l'adresse https://console.aws.amazon.com/docdb.

  2. Dans le panneau de navigation, choisissez Groupes de sous-réseaux, puis Créer.

    Astuce

    Si vous ne voyez pas le volet de navigation sur le côté gauche de votre écran, choisissez l'icône de menu (Hamburger menu icon with three horizontal lines.) dans le coin supérieur gauche de la page.

  3. Sur la page Create subnet group (Créer un groupe de sous-réseaux) :

    1. Dans la section Subnet group details (Informations sur le groupe de sous-réseaux) :

      1. Nom : entrez un nom significatif pour le groupe de sous-réseaux.

      2. Description – Saisissez une description pour le groupe de sous-réseaux.

    2. Dans la section Add subnets (Ajouter des sous-réseaux) :

      1. VPC —Dans la liste, choisissez un VPC pour ce groupe de sous-réseaux.

      2. Effectuez l'une des actions suivantes :

        • Pour inclure tous les sous-réseaux dans le VPC sélectionné, choisissez Add all the subnets related to this VPC (Ajouter tous les sous-réseaux associés à ce VPC).

        • Pour spécifier des sous-réseaux pour ce groupe de sous-réseaux, effectuez les actions suivantes pour chaque zone de disponibilité dans laquelle vous souhaitez inclure des sous-réseaux. Vous devez inclure au moins deux zones de disponibilité.

          1. Zone de disponibilité : dans la liste, choisissez une zone de disponibilité.

          2. Sous-réseau —Dans la liste, choisissez un sous-réseau dans la zone de disponibilité choisie pour ce groupe de sous-réseaux.

          3. Sélectionnez Add subnet (Ajouter le sous-réseau).

  4. Sélectionnez Create (Créer). Lorsque le groupe de sous-réseaux est créé, il est répertorié avec vos autres groupes de sous-réseau.

    Capture d’écran montrant les informations d’un groupe de sous-réseaux.
Using the AWS CLI

Avant de pouvoir créer un groupe de sous-réseaux à l'aide de l'AWS CLI, vous devez d'abord identifier les sous-réseaux disponibles. Exécutez l'opération de l'AWS CLI suivante pour répertorier les zones de disponibilité et leurs sous-réseaux.

Paramètres :

  • --db-subnet-group—Facultatif. Lorsque vous spécifiez un groupe de sous-réseaux en particulier, ses zones de disponibilité et ses sous-réseaux sont répertoriés. Si vous ne spécifiez pas ce paramètre, les zones de disponibilité et les sous-réseaux de tous vos groupes de sous-réseaux seront répertoriés. Si vous spécifiez le groupe de sous-réseaux default, tous les sous-réseaux du VPC sont répertoriés.

Pour Linux, macOS ou Unix :

aws docdb describe-db-subnet-groups \ --db-subnet-group-name default \ --query 'DBSubnetGroups[*].[DBSubnetGroupName,Subnets[*].[SubnetAvailabilityZone.Name,SubnetIdentifier]]'

Pour Windows :

aws docdb describe-db-subnet-groups ^ --db-subnet-group-name default ^ --query 'DBSubnetGroups[*].[DBSubnetGroupName,Subnets[*].[SubnetAvailabilityZone.Name,SubnetIdentifier]]'

La sortie de cette opération ressemble à ceci (format JSON).

[ [ "default", [ [ "us-east-1a", "subnet-4e26d263" ], [ "us-east-1c", "subnet-afc329f4" ], [ "us-east-1e", "subnet-b3806e8f" ], [ "us-east-1d", "subnet-53ab3636" ], [ "us-east-1b", "subnet-991cb8d0" ], [ "us-east-1f", "subnet-29ab1025" ] ] ] ]

Avec le résultat de l’opération précédente, vous pouvez créer un groupe de sous-réseaux. Le nouveau groupe de sous-réseaux doit inclure des sous-réseaux d'au moins deux zones de disponibilité.

Paramètres :
  • --db-subnet-group-name : obligatoire. Nom du groupe de sous-réseaux.

  • --db-subnet-group-description : obligatoire. Description du groupe de sous-réseaux.

  • --subnet-ids : obligatoire. Liste des sous-réseaux à inclure dans ce groupe de sous-réseaux. Exemple: subnet-53ab3636.

  • --Tags —Facultatif. Liste de balises (paires clé-valeur) à associer à ce groupe de sous-réseaux.

Le code suivant crée le groupe de sous-réseaux sample-subnet-group avec trois sous-réseaux, subnet-4e26d263, subnet-afc329f4 et subnet-b3806e8f.

Pour Linux, macOS ou Unix :

aws docdb create-db-subnet-group \ --db-subnet-group-name sample-subnet-group \ --db-subnet-group-description "A sample subnet group" \ --subnet-ids subnet-4e26d263 subnet-afc329f4 subnet-b3806e8f \ --tags Key=tag1,Value=One Key=tag2,Value=2

Pour Windows :

aws docdb create-db-subnet-group ^ --db-subnet-group-name sample-subnet-group ^ --db-subnet-group-description "A sample subnet group" ^ --subnet-ids subnet-4e26d263 subnet-afc329f4 subnet-b3806e8f ^ --tags Key=tag1,Value=One Key=tag2,Value=2

La sortie de cette opération ressemble à ceci (format JSON).

{ "DBSubnetGroup": { "DBSubnetGroupDescription": "A sample subnet group", "DBSubnetGroupName": "sample-subnet-group", "Subnets": [ { "SubnetAvailabilityZone": { "Name": "us-east-1a" }, "SubnetIdentifier": "subnet-4e26d263", "SubnetStatus": "Active" }, { "SubnetAvailabilityZone": { "Name": "us-east-1c" }, "SubnetIdentifier": "subnet-afc329f4", "SubnetStatus": "Active" }, { "SubnetAvailabilityZone": { "Name": "us-east-1e" }, "SubnetIdentifier": "subnet-b3806e8f", "SubnetStatus": "Active" } ], "VpcId": "vpc-91280df6", "DBSubnetGroupArn": "arn:aws:rds:us-east-1:123SAMPLE012:subgrp:sample-subnet-group", "SubnetGroupStatus": "Complete" } }