enix.mongodb
enix.mongodb
Un rol para implementar y configurar mongodb y extensiones en hosts unix usando Ansible.
Requisitos
Targets soportados:
- Ubuntu 16.04 "Xenial"
- Ubuntu 18.04 "Bionic"
- Debian 8 "Jessie"
- Debian 9 "Stretch"
- Debian 10 "Buster"
Variables del Rol
Este rol viene precargado con casi todas las configuraciones por defecto disponibles. Puedes sobrescribir cada una en las variables de tus hosts/grupos, en tu inventario, o en tu juego (play). Consulta los valores por defecto anotados en defaults/main.yml
para obtener ayuda sobre la configuración. Todas las variables proporcionadas comienzan con mongodb__
.
mongodb__version
- Versión del software MongoDB a instalar. Selecciona la rama estable para la instalación.por defecto 4.2
. Versiones disponibles actualmente: 3.2, 3.4, 3.6, 3.8, 4.0, 4.2, 4.4.mongodb__apt_localkey
- En caso de que el sistema esté detrás de un proxy, puede haber problemas para obtener la clave del repositorio desde el servidor de claves. Habilitar esto usará una copia local. La advertencia puede que ya no funcione si la clave cambia en el repositorio remoto.por defecto es false
.mongodb__packages
- Paquetes de MongoDB a instalar.por defecto es mongodb-org
que instala todo. Se pueden seleccionar los siguientes: mongodb-org, mongodb-org-server, mongodb-org-mongos, mongodb-org-shell, mongodb-org-tools. Consulta los detalles en https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/.mongodb__conf_port
- Puerto al que debe vincularse mongod,por defecto es 27017
.mongodb__conf_bindIp
- IP a la que debe vincularse mongod,por defecto es 127.0.0.1
.mongodb__conf_extra
- Opciones de configuración adicionales para establecer en mongod.conf. Esto debe ser un bloque de configuración en yaml que entienda el demonio.
mongodb__conf_extra: |
net.ipv6: false
systemLog:
verbosity: 2
logRotate: reopen
Dependencias
- Ninguna
Uso
Usa Ansible galaxy requirements.yml
# mongodb de enix
- src: enix.mongodb
Y agrégalo a los roles de tu juego:
- hosts: all
roles:
- role: enix.mongodb
mongodb__version: 4.2
mongodb__packages: ["mongodb-org-server", "mongodb-org-tools"]
También puedes usar el rol como un playbook. Se te pedirá qué hosts provisionar, y puedes configurar aún más el juego usando --extra-vars
.
$ ansible-playbook -i inventory --extra-vars='{...}' main.yml
Pendiente
- Agregar soporte para clustering
- Agregar soporte para sharding
- Permitir gestión de usuarios y credenciales
Historial de Cambios
1.2.0
Agregar soporte para debian buster Agregar soporte para versiones más nuevas de mongodb (4.2, 4.4)
1.1.0
Agregar soporte para clave gnupg local
1.0.0
Versión inicial.
Licencia
GPLv2
Información del Autor
Laurent Corbes laurent.corbes@enix.fr - http://www.enix.io
ansible-galaxy install enix.mongodb