enix.mongodb
enix.mongodb
Eine Rolle zum Bereitstellen und Konfigurieren von mongodb und Erweiterungen auf Unix-Hosts mit Ansible.
Anforderungen
Unterstützte Zielsysteme:
- Ubuntu 16.04 "Xenial"
- Ubuntu 18.04 "Bionic"
- Debian 8 "Jessie"
- Debian 9 "Stretch"
- Debian 10 "Buster"
Rollenvariablen
Diese Rolle kommt mit fast allen verfügbaren Standardeinstellungen vorinstalliert. Sie können jede davon in Ihren Host-/Gruppenvariablen, in Ihrem Inventar oder in Ihrem Play überschreiben. Siehe die kommentierten Standardwerte in defaults/main.yml
für Hilfe bei der Konfiguration. Alle bereitgestellten Variablen beginnen mit mongodb__
.
mongodb__version
- Zu installierende MongoDB-Softwareversion. Dies wählt den stabilen Branch für die Installation aus.Standardmäßig 4.2
. Aktuell verfügbar: 3.2, 3.4, 3.6, 3.8, 4.0, 4.2, 4.4.mongodb__apt_localkey
- Wenn das System hinter einem Proxy ist, kann es ein Problem sein, den Repo-Schlüssel vom Schlüsselserver abzurufen. Wenn dies aktiviert ist, wird eine lokale Kopie verwendet. Hinweis: Es funktioniert möglicherweise nicht mehr, wenn der Schlüssel im Remote-Repository geändert wird.Standardmäßig falsch
.mongodb__packages
- Zu installierende MongoDB-Pakete.Standardmäßig mongodb-org
, was alles installiert. Folgendes kann ausgewählt werden: mongodb-org, mongodb-org-server, mongodb-org-mongos, mongodb-org-shell, mongodb-org-tools. Details siehe https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/.mongodb__conf_port
- Port, an den sich mongod binden muss,Standardmäßig 27017
.mongodb__conf_bindIp
- IP, an die sich mongod binden muss,Standardmäßig 127.0.0.1
.mongodb__conf_extra
- Zusätzliche Konfigurationsoptionen, die in mongod.conf gesetzt werden sollen. Dies muss ein YAML-Konfigurationsblock sein, der vom Daemon verstanden wird.
mongodb__conf_extra: |
net.ipv6: false
systemLog:
verbosity: 2
logRotate: reopen
Abhängigkeiten
- Keine
Verwendung
Verwenden Sie Ansible Galaxy requirements.yml
# mongodb von enix
- src: enix.mongodb
Und fügen Sie es zu den Rollen in Ihrem Play hinzu:
- hosts: all
roles:
- role: enix.mongodb
mongodb__version: 4.2
mongodb__packages: ["mongodb-org-server", "mongodb-org-tools"]
Sie können die Rolle auch als Playbook verwenden. Sie werden gefragt, welche Hosts bereitgestellt werden sollen, und können das Play weiter konfigurieren, indem Sie --extra-vars
verwenden.
$ ansible-playbook -i inventory --extra-vars='{...}' main.yml
Noch zu erledigen
- Unterstützung für Clustering hinzufügen
- Unterstützung für Sharding hinzufügen
- Verwaltung von Benutzern und Anmeldeinformationen ermöglichen
Änderungsprotokoll
1.2.0
Unterstützung für Debian Buster hinzugefügt
Unterstützung für neuere MongoDB-Versionen (4.2, 4.4) hinzugefügt
1.1.0
Unterstützung für lokalen GnuPG-Schlüssel hinzugefügt
1.0.0
Erste Version.
Lizenz
GPLv2
Autoreninformationen
Laurent Corbes laurent.corbes@enix.fr - http://www.enix.io