mila.bareos
Bareos
Rôle pour configurer le serveur et les clients BareOS.
Variables
Serveur
Remarque : Plus d'options peuvent être vues dans defaults/main.yml
bareos_install_server
- Installer les paquets pour le serveur (false
). Notez que cela installe également postgresql !bareos_setup_db
- Vérifiez si la base de données postgresqlbareos
existe. Si ce n'est pas le cas, créez-la et remplissez-la avec des données (false
)bareos_setup_db_sensu
- Crée un utilisateur de base de donnéessensu
pour la surveillance (false
)bareos_sensu_postgres_pass
- Définir le mot de passe pour l'utilisateur sensu dans postgresqlbareos_email
- Adresse e-mail utilisée pour les messages (Démon, Standard) et le démarrage du cataloguebareos_dir_ip_eth
- Adresse IP ethernet du directeurbareos_dir_max_concurrent_jobs
- [Optionnel] Maximum de tâches concurrentes au niveau du directeur, par défaut 50bareos_director
- Si vous devez remplacer l'adresse IP du directeur de sauvegarde dans le fichier /etc/hosts de votre clientbareos_repo
- Par défaut, il utilise le dépôt communautaire de Bareos. Peut être changé pour utiliser le dépôt de souscription Bareos.bareos_sd_max_concurrent_jobs
- [Optionnel] Maximum de tâches concurrentes au niveau SD, par défaut 50
bareos_director:
ip: 10.0.0.1
name: backup
bareos_clients
- Liste des clients au format suivant :
bareos_clients:
- name: some-hostname
ansible_delegate_hostname: some-hostname
address: 10.1.1.1
password: MonSuperMotDePasseSecret
enable_backup_job: true
state: present # optionnel
autostart: true # optionnel
director_ip: 10.0.0.1 # optionnel
director_name: backup # optionnel
max_job_bandwidth: 1 mb/s # optionnel
max_concurrent_jobs: 42 # optionnel, par défaut '20'
bareos_filesets
: Liste des ensembles de fichiers au format suivant :
bareos_filesets:
- name: FilesetFoo
description: "Sauvegarde Foo"
include_files:
- /home/foo
exclude_files:
- /home/foo/bar
[!ATTENTION]
bareos_filesets[*].include_file
est obsolète et remplacé parbareos_filesets[*].include_files
qui permet de définir une liste de chemins de fichiers à inclure.
[!ATTENTION]
bareos_filesets[*].exclude_file
est obsolète et remplacé parbareos_filesets[*].exclude_files
pour refléter la capacité d'exclure une liste de chemins de fichiers.
bareos_pools
: Liste des pools au format suivant :
bareos_pools:
- name: FullFoo
retention: "365 jours" # optionnel
max_vol_bytes: 50G # optionnel
max_vol: 1000 # optionnel
next_pool: FullFooOffsite # optionnel
label: "FullFoo-"
storage: FileFoo # optionnel si défini au niveau JobDefs
- name: IncrementalFoo
retention: "365 jours"
max_vol_bytes: 50G
max_vol: 1000
label: "IncrementalFoo-"
storage: FileFoo # optionnel si défini au niveau JobDefs
bareos_dir_storage
: Liste de stockages au format suivant :
bareos_dir_storage:
- name: FileFoo
device: FileStorageFoo
bareos_dir_ip: 10.0.0.1
media_type: File2 # optionnel, par défaut 'File'
max_concurrent_jobs: 42 # optionnel, par défaut '50'
Le device
peut également devenir devices
si vous avez plusieurs dispositifs :
bareos_dir_storage:
- name: FileFoo
devices:
- FileStorageFoo
- FileStorageBar
bareos_dir_ip: 10.0.0.1
media_type: File2 # optionnel, par défaut 'File'
max_concurrent_jobs: 42 # optionnel, par défaut '50'
bareos_devices
: Liste des dispositifs au format suivant :
bareos_devices:
- name: FileStorageFoo
archive_device: /backup
block_device: /dev/mapper/backup # optionnel
fstype: 'ext4' # par défaut
mode: '0750' # par défaut
opts: '' # optionnel, pour ansible.posix.mount
state: 'mounted' # par défaut, pour ansible.posix.mount
media_type: File2 # optionnel, par défaut 'File'
max_concurrent_jobs: 42 # optionnel, par défaut '50'
[!ATTENTION]
bareos_devices[*].arch_device
est obsolète et remplacé parbareos_devices[*].archive_device
.
bareos_schedules
: Liste des horaires au format suivant :
bareos_schedules:
- name: ScheduleFoo
full: "Complet le 1 à 02:23"
incr: "Incrémental quotidien à 02:25"
bareos_jobdefs
: Liste des définitions de tâches au format suivant :
bareos_jobdefs:
- name: JobDefFoo
level: Incremental
client: foo-fd
fileset: FilesetFoo
schedule: ScheduleFoo
storage: FileFoo # optionnel
pool: IncrementalFoo
full_pool: FullFoo
incr_pool: IncrementalFoo
type: JOB_TYPE # optionnel, par défaut 'Backup'
max_concurrent_jobs: 42 # optionnel, par défaut '50'
bareos_jobs
: Liste des tâches au format suivant :
bareos_jobs:
- name: JobFoo
jobdef: JobDefFoo
client: foo-fd
REMARQUES :
ansible_delegate_hostname
doit correspondre àinventory_hostname
dans la liste d'inventaire d'ansible. Certaines tâches seront déléguées de serveur de sauvegarde à ce client.enable_backup_job
- Créera la tâche de sauvegardeDefaultJobLinux
.state
- Lorsqu'il est défini surabsent
, le client sera supprimé de la configuration du serveur (par défaut :present
).autostart
- Planifier la première sauvegarde immédiatement (par défaut :true
).director_ip
- [Optionnel] Même chose quebareos_director
, juste un endroit différent pour la configuration.director_name
- [Optionnel] Même chose quebareos_director
, juste un endroit différent pour la configuration.
Client
bareos_install_client
- Installer les paquets pour le client (false
)
Exemple de playbook
---
- hosts: bareos-client
become: true
roles:
- { name: bareos, tags: bareos }
- hosts: bareos-server
become: true
roles:
- { name: bareos, tags: bareos }
Licence
GNU GPL
Informations sur l'auteur
Jan Michalek a.k.a. VeselaHouba