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 datosbareos
de postgresql. Si no existe, crearla y llenarla con datos (false
)bareos_setup_db_sensu
- Crea un usuario de base de datossensu
para monitoreo (false
)bareos_sensu_postgres_pass
- Establecer contraseña para el usuario sensu en postgresqlbareos_email
- Dirección de correo electrónico utilizada para mensajes (Daemon, Standard) y arranque de catálogobareos_dir_ip_eth
- Dirección IP del director Ethernetbareos_dir_max_concurrent_jobs
- [Opcional] Máximo de trabajos concurrentes a nivel de director, por defecto 50bareos_director
- Si necesitas anular la dirección IP del director de respaldo en el archivo /etc/hosts de tu clientebareos_repo
- Por defecto, se utiliza el Repositorio Comunitario de Bareos. Puede cambiarse para usar el Repositorio de Suscripción de Bareosbareos_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 porbareos_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 porbareos_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 porbareos_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 coninventory_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 respaldoDefaultJobLinux
.state
- Cuando se establece enabsent
, 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 quebareos_director
, solo diferente lugar para configuración.director_name
- [Opcional] Igual quebareos_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
ansible-galaxy install mila.bareos