mila.bareos

Bareos

Rol para configurar servidor y clientes de BareOS.

Variables

Servidor

Nota: Más opciones pueden verse en defaults/main.yml

  • bareos_install_server - Instalar paquetes para el servidor (false). ¡Ten en cuenta que esto también instala postgresql!
  • bareos_setup_db - Verificar si existe la base de datos bareos de postgresql. Si no existe, crearla y llenarla con datos (false)
  • bareos_setup_db_sensu - Crea un usuario de base de datos sensu para monitoreo (false)
  • bareos_sensu_postgres_pass - Establecer contraseña para el usuario sensu en postgresql
  • bareos_email - Dirección de correo electrónico utilizada para mensajes (Daemon, Standard) y arranque de catálogo
  • bareos_dir_ip_eth - Dirección IP del director Ethernet
  • bareos_dir_max_concurrent_jobs - [Opcional] Máximo de trabajos concurrentes a nivel de director, por defecto 50
  • bareos_director - Si necesitas anular la dirección IP del director de respaldo en el archivo /etc/hosts de tu cliente
  • bareos_repo - Por defecto, se utiliza el Repositorio Comunitario de Bareos. Puede cambiarse para usar el Repositorio de Suscripción de Bareos
  • bareos_sd_max_concurrent_jobs - [Opcional] Máximo de trabajos concurrentes a nivel de SD, por defecto 50
bareos_director:
  ip: 10.0.0.1
  name: backup
  • bareos_clients - Lista de clientes en el siguiente formato:
bareos_clients:
  - name: some-hostname
    ansible_delegate_hostname: some-hostname
    address: 10.1.1.1
    password: MySuperSecretPassword
    enable_backup_job: true
    state: present                      # opcional
    autostart: true                     # opcional
    director_ip: 10.0.0.1               # opcional
    director_name: backup               # opcional
    max_job_bandwidth: 1 mb/s           # opcional
    max_concurrent_jobs: 42             # opcional, por defecto '20'
  • bareos_filesets: Lista de conjuntos de archivos en el siguiente formato:
bareos_filesets:
  - name: FilesetFoo
    description: "Backup Foo"
    include_files:
      - /home/foo
    exclude_files:
      - /home/foo/bar

[!WARNING] El bareos_filesets[*].include_file está obsoleto y ha sido reemplazado por bareos_filesets[*].include_files, que permite definir una lista de rutas de archivo a incluir.

[!WARNING] El bareos_filesets[*].exclude_file está obsoleto y ha sido reemplazado por bareos_filesets[*].exclude_files para reflejar la capacidad de excluir una lista de rutas de archivo.

  • bareos_pools: Lista de grupos en el siguiente formato:
bareos_pools:
  - name: FullFoo
    retention: "365 días"               # opcional
    max_vol_bytes: 50G                  # opcional
    max_vol: 1000                       # opcional
    next_pool: FullFooOffsite           # opcional
    label: "FullFoo-"
    storage: FileFoo                    # opcional si se define a nivel de JobDefs
  - name: IncrementalFoo
    retention: "365 días"
    max_vol_bytes: 50G
    max_vol: 1000
    label: "IncrementalFoo-"
    storage: FileFoo                    # opcional si se define a nivel de JobDefs

bareos_dir_storage: Lista de almacenamientos en el siguiente formato:

bareos_dir_storage:
  - name: FileFoo
    device: FileStorageFoo
    bareos_dir_ip: 10.0.0.1
    media_type: File2                   # opcional, por defecto 'File'
    max_concurrent_jobs: 42             # opcional, por defecto '50'

El device también puede convertirse en devices si tienes múltiples dispositivos:

bareos_dir_storage:
  - name: FileFoo
    devices:
        - FileStorageFoo
        - FileStorageBar
    bareos_dir_ip: 10.0.0.1
    media_type: File2                   # opcional, por defecto 'File'
    max_concurrent_jobs: 42             # opcional, por defecto '50'

bareos_devices: Lista de dispositivos en el siguiente formato:

bareos_devices:
  - name: FileStorageFoo
    archive_device: /backup
    block_device: /dev/mapper/backup    # opcional
    fstype: 'ext4'                      # por defecto
    mode: '0750'                        # por defecto
    opts: ''                            # opcional, para ansible.posix.mount
    state: 'mounted'                    # por defecto, para ansible.posix.mount
    media_type: File2                   # opcional, por defecto 'File'
    max_concurrent_jobs: 42             # opcional, por defecto '50'

[!WARNING] El bareos_devices[*].arch_device está obsoleto y ha sido reemplazado por bareos_devices[*].archive_device.

bareos_schedules: Lista de horarios en el siguiente formato:

bareos_schedules:
- name: ScheduleFoo
  full: "Completo el 1 a las 02:23"
  incr: "Incremental diario a las 02:25"

bareos_jobdefs: Lista de definiciones de trabajos en el siguiente formato:

bareos_jobdefs:
  - name: JobDefFoo
    level: Incremental
    client: foo-fd
    fileset: FilesetFoo
    schedule: ScheduleFoo
    storage: FileFoo                    # opcional
    pool: IncrementalFoo
    full_pool: FullFoo
    incr_pool: IncrementalFoo
    type: JOB_TYPE                      # opcional, por defecto 'Backup'
    max_concurrent_jobs: 42             # opcional, por defecto '50'

bareos_jobs: Lista de trabajos en el siguiente formato:

bareos_jobs:
  - name: JobFoo
    jobdef: JobDefFoo
    client: foo-fd

NOTAS:

  • ansible_delegate_hostname debe coincidir con inventory_hostname en la lista de inventario de ansible. Algunas tareas serán delegadas desde el servidor de respaldo a este cliente.
  • enable_backup_job - Creará el trabajo de respaldo DefaultJobLinux.
  • state - Cuando se establece en absent, el cliente será eliminado de la configuración del servidor (por defecto: present).
  • autostart - Programa la primera copia de seguridad de inmediato (por defecto: true).
  • director_ip - [Opcional] Igual que bareos_director, solo diferente lugar para configuración.
  • director_name - [Opcional] Igual que bareos_director, solo diferente lugar para configuración.

Cliente

  • bareos_install_client - Instalar paquetes para el cliente (false)

Ejemplo de Playbook

---
- hosts: bareos-client
  become: true
  roles:
    - { name: bareos, tags: bareos }

- hosts: bareos-server
  become: true
  roles:
    - { name: bareos, tags: bareos }

Licencia

GNU GPL

Información del Autor

Jan Michalek también conocido como VeselaHouba

Acerca del proyecto

Role for managing bareos server & clients

Instalar
ansible-galaxy install mila.bareos
Licencia
gpl-3.0
Descargas
842
Propietario
Quebec Artificial Intelligence Institute