opstree_devops.mongo
OSM : MONGODB
Rôle ansible MongoDB pour la configuration autonome, le cluster (réplication) avec authentification
Historique des versions
Date | Version | Description | Modifié par |
---|---|---|---|
27 juin 2020 | v0.0.1 | Ébauche initiale | Rajat Vats |
21 mars 2022 | v0.0.2 | Gestion des DNS des nœuds | Kritarth Pant |
PRÉREQUIS
RIEN !!!!
SYSTÈMES D'EXPLOITATION SOUTENUS
Ubuntu 18
Centos 7
Amazon Linux 2
CARACTÉRISTIQUES
- Configuration d'une instance MongoDB autonome
- Configuration de la réplication sur le cluster MongoDB
- Configuration de l'authentification avec des utilisateurs root, admin et de sauvegarde.
VARIABLES IMPORTANTES DU RÔLE
Variable | Valeur par défaut | Valeurs possibles | Description |
---|---|---|---|
mongo_version | 4.2 | [4.2, 4.0, 3.6, 3.4] Peut mentionner une version mineure par exemple : 4.2.7 | Version de MongoDB |
mongo_port | 27017 | Selon votre besoin | Port MongoDB |
replication_enabled | false | [true, false] | Mettre à vrai pour configurer la réplication |
mongo_replSetName | repl | Selon votre besoin | Nom du jeu de réplicas |
authentication_enabled | true | [true, false] | Si activé, le rôle activera l’authentification avec des utilisateurs prédéfinis -> root, admin et utilisateur de sauvegarde |
mongo_user_admin_name | useradmin | Remplacer les valeurs par défaut par les vôtres | Nom de l'utilisateur admin Mongo |
mongo_user_admin_pwd | passw0rd | Remplacer les valeurs par défaut par les vôtres | Mot de passe de l'utilisateur admin Mongo |
mongo_root_admin_name | RootAdmin | Remplacer les valeurs par défaut par les vôtres | Nom de l'utilisateur root Mongo |
mongo_root_admin_pwd | passw0rd | Remplacer les valeurs par défaut par les vôtres | Mot de passe de l'utilisateur root Mongo |
mongo_root_backup_name | backupuser | Remplacer les valeurs par défaut par les vôtres | Nom de l'utilisateur de sauvegarde Mongo |
mongo_root_backup_pwd | passw0rd | Remplacer les valeurs par défaut par les vôtres | Mot de passe de l'utilisateur de sauvegarde Mongo |
mongo_custom_users | None | Peut spécifier plusieurs utilisateurs avec des rôles. Veuillez vous référer à l'exemple ci-dessous pour référence | |
mongo_authentication_key | Mentionnez votre clé ici. (Clé GPG) | Clé d'authentification pour que les nœuds du cluster communiquent entre eux de manière sécurisée. |
Définir plusieurs utilisateurs à ajouter dans MongoDB
mongo_custom_users:
- { name: user1 , password: userpwd, roles: admin }
- { name: user2 , password: userpwd, roles: backup,clusterMonitor }
INVENTAIRE
Un exemple d'inventaire pourrait ressembler à ceci :-
[mongo_master]
prim ansible_ssh_host=3.1.x.x
[mongo_slave]
sec1 ansible_ssh_host=18.141.x.x
sec2 ansible_ssh_host=54.169.x.x
[mongo:children]
mongo_master
mongo_slave
[mongo:vars]
ansible_user=ubuntu
EXEMPLE DE PLAYBOOK
Voici un exemple de playbook pour exécuter ce rôle :-
---
- hosts: mongo
roles:
- osm_mongo
become: true
any_errors_fatal: true
UTILISATION
ansible-playbook -i hosts site.yml