Lancez votre instance AWS DocumentDB avec Mongo Shell en un clin d’œil !

Déployer une instance AWS DocumentDB via Mongo Shell : Mon expérience

En tant que testeur de logiciels passionné par les nouvelles technologies, j’ai récemment plongé dans l’univers d’AWS (Amazon Web Services) en explorant la base de données AWS DocumentDB. J’ai souhaité partager mon expérience avec vous sur la façon de déployer une instance AWS DocumentDB via le shell MongoDB. Dans cet article, je vais détailler les étapes, les défis rencontrés, et offrir une comparaison avec d’autres options de base de données que j’ai testées.

Pourquoi AWS DocumentDB ?

Avant de commencer, il est important de comprendre pourquoi j’ai choisi AWS DocumentDB. DocumentDB est conçu pour être compatible avec les applications MongoDB. Cela signifie que vous pouvez utiliser les API MongoDB existantes tout en bénéficiant de la scalabilité, de la durabilité et de la sécurité offertes par AWS. En tant que testeur, j’apprécie la facilité de gestion et la réduction de la charge opérationnelle, ce qui me permet de me concentrer sur les tests au lieu de la configuration des serveurs.

Prérequis

Pour déployer une instance AWS DocumentDB via Mongo Shell, voici ce dont vous aurez besoin :

  1. Un compte AWS actif.
  2. AWS CLI installé et configuré sur votre machine.
  3. MongoDB Shell (pour interagir avec DocumentDB).
  4. Des connaissances de base en MongoDB, bien sûr.

Étape 1 : Créer un cluster DocumentDB

La première étape de ma démarche consistait à créer un cluster DocumentDB via l’AWS Management Console. J’ai navigué vers la section "DocumentDB" et cliqué sur "Créer un cluster". C’est assez simple, mais quelques éléments importants à configurer :

  • Instance Class : J’ai choisi "db.r5.large" car elle offre un bon équilibre entre performances et coût.
  • Nombres d’instances : J’ai opté pour une seule instance pour commencer, sachant que je pourrais facilement l’élargir plus tard.
  • Sous-réseau et VPC : J’ai veillé à sélectionner le bon VPC pour que mon cluster soit accessible depuis ma machine.

Après avoir rempli tous ces détails, j’ai cliqué sur "Créer". Le processus de création a duré environ 10 minutes.

Étape 2 : Accéder à MongoDB Shell

Une fois mon cluster créé, il était temps de se connecter au shell MongoDB. AWS DocumentDB nécessite une connexion via un tunnel SSH pour des raisons de sécurité, en particulier si vous n’avez pas ouvert votre cluster aux connexions publiques.

J’ai donc démarré un tunnel SSH avec la commande suivante :

ssh -i "cle_privee.pem" ec2-user@<adresse_ip_de_votre_ec2> -L 27017:<adresse_cluster>:27017

Dans cette commande, j’utilise une clé privée pour accéder à ma machine EC2, qui a accès au cluster DocumentDB. Avec le tunnel en place, j’ai pu lancer MongoDB Shell avec la commande :

mongo --host <adresse_cluster> --username <nom_utilisateur> --password <mot_de_passe>

Je dois avouer que cette étape m’a pris un peu de temps à configurer, mais une fois que tout était en place, cela a fonctionné comme prévu.

Étape 3 : Créer une base de données

Une fois connecté avec succès au shell, j’ai commencé à créer une base de données pour mes tests. La commande est simple :

use ma_base_de_donnees

Ensuite, j’ai créé une collection :

db.createCollection("ma_collection")

J’ai aussi décidé d’insérer quelques documents pour voir comment tout cela se comportait :

db.ma_collection.insert({nom: "Test", valeur: 100});

J’ai vérifié que mes données étaient correctement insérées avec :

db.ma_collection.find().pretty()

Tout fonctionnait parfaitement, ce qui m’a rassuré quant à la fiabilité de DocumentDB.

Étape 4 : Tester les performances

À ce stade, vous vous demandez sûrement comment AWS DocumentDB se compare à d’autres solutions comme MongoDB local ou d’autres services de base de données dans le cloud. Pour le savoir, j’ai mené quelques tests de performances.

J’ai utilisé un script de lecture/écriture pour vérifier la latence et la vitesse de traitement. Mes résultats ont montré que DocumentDB est légèrement plus lent que l’exécution de MongoDB sur un serveur local. Toutefois, la différence est négligeable, surtout si l’on considère la facilité de mise en place et la scalabilité d’AWS.

Un autre aspect que j’ai apprécie est que DocumentDB gère automatiquement les sauvegardes et les mises à jour de sécurité, ce qui me permet de me concentrer sur les tests et le développement.

Conclusion

Déployer une instance AWS DocumentDB via Mongo Shell s’est avéré être une expérience enrichissante. Bien que le processus ait comporté quelques étapes complexes liées à la configuration de l’accès, la facilité d’utilisation et la compatibilité avec MongoDB m’ont convaincu que DocumentDB est une solution viable pour des applications basées sur des documents dans le cloud.

Dans l’ensemble, je recommande fortement AWS DocumentDB, en particulier si vous cherchez une base de données facile à gérer et à scalabiliser. Bien qu’il ne soit pas parfait pour des besoins spécifiques en matière de performances, il offre un équilibre satisfaisant entre sécurité, durabilité et flexibilité.

J’espère que cet article vous a aidé à comprendre comment déployer une instance AWS DocumentDB via Mongo Shell et vous a donné une idée claire de ce à quoi vous attendre. N’hésitez pas à partager vos expériences et vos questions dans les commentaires !

Laisser un commentaire