gmazoyer.peering_manager
Rol Ansible: Peering Manager
Una Rol de Ansible que instala Peering Manager en Debian/Ubuntu.
Esta rol instala todas las dependencias necesarias para Peering Manager, incluyendo la base de datos PostgreSQL. Así se puede utilizar para configurar Peering Manager como un dispositivo, incluyendo todo en la misma máquina.
Las configuraciones del backend y frontend web se pueden desactivar si ya tienes tu propia manera de manejarlas.
Dependencias
Ninguna.
Variables de la Rol
Las variables disponibles se enumeran a continuación, junto con sus valores predeterminados:
Configuración para la base de datos PostgreSQL:
peering_manager_database: peering-manager
peering_manager_database_user: peering-manager
peering_manager_database_password: peering-manager
peering_manager_database_host: localhost # Esto forzará la configuración de PostgreSQL
Dónde obtener Peering Manager y qué versión:
peering_manager_version: latest
peering_manager_git_url: https://github.com/peering-manager/peering-manager.git
Por defecto, siempre obtendrá la última versión estable. Se puede forzar una versión específica usando, por ejemplo, v1.7.0
.
Dónde instalar Peering Manager:
peering_manager_install_directory: /opt/peering-manager
El nombre de usuario, contraseña y correo electrónico para el super usuario.
peering_manager_superuser_username: admin
peering_manager_superuser_password: admin
peering_manager_superuser_email: [email protected]
Pueden incluirse paquetes de Python adicionales para que esta rol los instale en el entorno virtual:
peering_manager_local_requirements: []
Se puede usar LDAP como mecanismo de autenticación. Debe estar habilitado, y toda la configuración de LDAP debe proporcionarse en las siguientes variables (ver la documentación):
peering_manager_setup_ldap_auth: false
peering_manager_ldap_config: ""
La configuración para Peering Manager debe darse como pares clave: valor
así, por favor nota que la clave secreta no necesita ser proporcionada ya que se generará automáticamente:
peering_manager_config:
ALLOWED_HOSTS:
- localhost
- 127.0.0.1
TIME_ZONE: "Europe/Paris"
…
Las tareas programadas se ejecutan usando temporizadores de systemd. Puedes usar on_unit_active_sec
o on_calendar
para especificar los horarios de cada tarea:
peering_manager_tasks:
peeringdb-sync:
enabled: true
command: "{{ peering_manager_virtualenv_path }}/bin/python {{ peering_manager_install_directory }}/manage.py peeringdb_sync"
on_calendar: "*-*-* 2:30:00"
prefix-fetch:
enabled: true
command: "{{ peering_manager_virtualenv_path }}/bin/python {{ peering_manager_install_directory }}/manage.py grab_prefixes"
on_calendar: "*-*-* 4:30:00"
poll-bgp-sessions:
enabled: true
command: "{{ peering_manager_virtualenv_path }}/bin/python {{ peering_manager_install_directory }}/manage.py poll_bgp_sessions --all"
on_unit_active_sec: "30m"
configure-routers:
enabled: true
command: "{{ peering_manager_virtualenv_path }}/bin/python {{ peering_manager_install_directory }}/manage.py configure_routers"
on_calendar: "*-*-* *:55:00"
Configuración para el servidor web backend y systemd:
peering_manager_setup_systemd: false
peering_manager_gunicorn_address: 127.0.0.1
peering_manager_gunicorn_port: 8001
peering_manager_gunicorn_workers_number: 5
Si se debe o no configurar el servidor web frontend:
peering_manager_setup_web_frontend: false
Ejemplo de Playbook
- hosts: peering_manager
roles:
- { role: gmazoyer.peering_manager }
Licencia
Esta Rol de Ansible se publica bajo los términos de la GNU GPLv3. Por favor, lee el archivo LICENSE para más información.
Información del Autor
Esta rol fue creada en 2019 por Guillaume Mazoyer.
A role to install and update Peering Manager.
ansible-galaxy install gmazoyer.peering_manager