trfore.mongodb_install
Ansible Rolle: mongodb_install
Diese Rolle installiert das MongoDB Community Edition-Server-Metapaket, mongodb-org
, über den Paketmanager des Betriebssystems (Standard) oder die Server-Binärdateien über eine Tar-Datei. Standardmäßig wird die neueste Version ab Version 4 installiert. Sie können eine neuere Hauptversion installieren, indem Sie mongodb_version: 6.0.16
festlegen. Weitere Informationen finden Sie im Abschnitt 'Getestete Plattformen und Versionen'.
Alternativ können Sie die MongoDB-Server-Binärdateien - mongo
, mongod
, mongos
- installieren, indem Sie mongodb_pkg_install: false
festlegen. Die Rolle lädt dann die neueste Tar-Datei ab Version 4 oder eine neuere Hauptversion herunter, wenn Sie mongodb_version
festlegen. Falls Sie die Binärdatei von Ihrem lokalen Ansible-Management-Host installieren möchten, laden Sie die entsprechende Tar-Datei, mongodb-linux-x86_64-{DISTRO}-{VERSION}.tgz
, in Ihr files
-Verzeichnis herunter und setzen Sie die folgenden beiden Variablen in Ihrem Playbook:
mongodb_tar_src: mongodb-linux-x86_64-{DISTRO}-{VERSION}.tgz
mongodb_tar_src_remote: false
Siehe den Abschnitt 'Beispiel-Playbooks' für funktionierende Beispiele. Diese Rolle konfiguriert den Server nicht, sie verwendet die Standardkonfigurationswerte und minimale empfohlene ulimit
-Einstellungen. Es wird empfohlen, den Server für die Produktion zu konfigurieren. Details siehe: https://www.mongodb.com/docs/manual/administration/production-notes/
Rolle installieren
Sie können diese Rolle mit dem Ansible Galaxy CLI installieren:
ansible-galaxy install trfore.mongodb_install
Sie können sie auch in eine requirements.yml
-Datei einfügen und mit ansible-galaxy install -r requirements.yml
installieren, im folgenden Format:
---
roles:
- trfore.mongodb_install
Getestete Plattformen und Versionen
MongoDB Community 7.0.12
- CentOS Stream 8 & 9
- Debian 11 & 12
- Ubuntu 20.04 & 22.04
MongoDB Community 6.0.16
- CentOS Stream 8 & 9
- Debian 10 & 11
- Ubuntu 20.04 & 22.04
MongoDB Community 5.0.28
- CentOS Stream 8
- Debian 10 & 11
- Ubuntu 20.04
MongoDB Community 4.4.29
- CentOS Stream 8
- Debian 10
- Ubuntu 20.04
Anforderungen
ansible-core>=2.14.0
Abhängigkeiten
community.general.yum_versionlock
(für CentOS & RHEL-Zielhost)ansible-galaxy collection install community.general
Rollenvariablen
Allgemeine Variablen
Allgemeine Variablen sind unten aufgeführt, zusammen mit Standardwerten (siehe defaults/main.yml
):
Variable | Standard | Beschreibung | Erforderlich |
---|---|---|---|
mongodb_pkg_install | true |
Boolean, true , um MongoDB über das Paketmanager zu installieren |
Nein |
mongodb_version | 4.4.29 |
Stabile Versionen der MongoDB Community v4.4 , v5 , v6 , v7 |
Nein |
mongodb_version_maj | Automatisch | Extrahiert den Hauptwert aus mongodb_version |
Automatisch |
mongodb_version_maj_minor | Automatisch | Extrahiert Haupt- und Nebenwerte aus mongodb_version |
Automatisch |
Variablen für Paketinstallationen
defaults/main.yml
:
Variable | Standard | Beschreibung | Erforderlich |
---|---|---|---|
mongodb_gpg_key | URL | MongoDB GPG Schlüssel | Nein |
mongodb_pkg_hold | true |
Boolean, true , um die Paketversion festzuhalten |
Nein |
mongodb_pkg_hold_list | MongoDB-Pakete | Liste der von mongodb-org installierten MongoDB-Pakete, v4.4 bis v7 |
Nein |
Variablen für die Binärinstallation
defaults/main.yml
:
Variable | Standard | Beschreibung | Erforderlich |
---|---|---|---|
mongodb_tar_src | URL | URL oder relative PATH, MongoDB Community Binär-Tar-Datei (Tar-Installation) | Nein |
mongodb_tar_src_remote | true |
Boolean, true , wenn vom URL heruntergeladen wird (Tar-Installation) |
Nein |
mongodb_path_exec | /usr/bin |
PATH, MongoDB-Binärpfad (Tar-Installation) | Nein |
Andere betriebssystemspezifische Variablen
vars/debian.yml
:
Variable | Standard | Beschreibung | Erforderlich |
---|---|---|---|
mongodb_path_db | /var/lib/mongodb |
PATH, MongoDB-Datenbankordner (Tar-Installation) | Nein |
mongodb_path_log | /var/log/mongodb |
PATH, MongoDB-Logordner (Tar-Installation) | Nein |
mongodb_dependencies | ["libcurl4","openssl","liblzma5"] |
Erforderliche Pakete für MongoDB (Tar-Installation) | Nein |
mongodb_pkg_hold_list | MongoDB-Pakete | Liste der von mongodb-org installierten MongoDB-Pakete (Paketinstallation) |
Nein |
vars/redhat.yml
und vars/redhat_mongo_v{4-6}.yml
:
Variable | Standard | Beschreibung | Erforderlich |
---|---|---|---|
mongodb_path_db | /var/lib/mongo |
PATH, MongoDB-Datenbankordner (Tar-Installation) | Nein |
mongodb_path_log | /var/log/mongodb |
PATH, MongoDB-Logordner (Tar-Installation) | Nein |
mongodb_dependencies | ["libcurl-minimal","openssl","xz-libs"] |
Erforderliche Pakete für MongoDB (Tar-Installation) | Nein |
mongodb_pkg_hold_list | MongoDB-Pakete | Liste der von mongodb-org installierten MongoDB-Pakete (Paketinstallation) |
Nein |
Beispiel-Playbooks
- Paketinstallation über den Paketmanager der Distribution.
- hosts: servers
become: true
roles:
- name: Installiere MongoDB
role: trfore.mongodb_install
- hosts: servers
become: true
vars:
mongodb_pkg_install: true
mongodb_version: "6.0.16"
roles:
- name: Installiere MongoDB
role: trfore.mongodb_install
- Binärinstallation von der Tar-Datei.
- hosts: servers
become: true
vars:
mongodb_pkg_install: false
mongodb_version: "6.0.16"
roles:
- name: Installiere MongoDB
role: trfore.mongodb_install
- Binärinstallation von der Tar-Datei, wenn Sie das Tar-Archiv manuell auf Ihrem Kontrollhost heruntergeladen haben.
- hosts: servers
become: true
vars:
mongodb_pkg_install: false
mongodb_tar_src: mongodb-linux-x86_64-debian10-4.4.29.tgz
mongodb_tar_src_remote: false
roles:
- name: Installiere MongoDB
role: trfore.mongodb_install
Lizenz
Diese Ansible-Rolle ist MIT.
MongoDB Community ist Software, die unter der Server Side Public License von MongoDB, Inc. steht. Für weitere Informationen siehe: https://www.mongodb.com/licensing/server-side-public-license
Autorinformationen
Taylor Fore (https://github.com/trfore)
Verwandte Rollen & Playbooks
Github | Ansible Galaxy |
---|---|
ansible-role-jsvc | trfore.jsvc |
ansible-role-mongodb-install | trfore.mongodb_install |
ansible-role-omada-install | trfore.omada_install |
Referenzen
MongoDB
- https://www.mongodb.com/docs/manual/release-notes/
- https://www.mongodb.com/download-center/community/releases
- https://www.mongodb.com/docs/manual/administration/install-on-linux/
- https://www.mongodb.com/docs/manual/administration/production-notes/
- https://www.mongodb.com/docs/manual/reference/configuration-options/
- https://www.mongodb.com/docs/manual/reference/ulimit/
Install MongoDB Community Edition on RedHat/CentOS and Debian/Ubuntu.
ansible-galaxy install trfore.mongodb_install