notmycloud.proxmox_backup_client
Cliente de Respaldo de Proxmox con Ansible
Este rol instalará y configurará el Cliente de Respaldo de Proxmox en un sistema operativo basado en Debian. Encuentra la documentación del Cliente de Respaldo de Proxmox aquí: Cliente de Respaldo de Proxmox.
Variables
Variable | Requerido | Por defecto | Descripción |
---|---|---|---|
proxmox_backup | Sí | Diccionario que contiene tu configuración para este rol | |
.server | Sí | Diccionario que contiene la información de conexión para tu Servidor de Respaldo de Proxmox. | |
.server.user | Sí | Nombre de usuario para acceder al PBS, ej. backup@pbs | |
.server.pass | Sí | Contraseña o Token para el nombre de usuario proporcionado. | |
.server.host | Sí | Nombre de host/FQDN/IP del PBS. | |
.server.datastore | Sí | Almacenamiento donde se guardarán los respaldos. | |
.server.port | No | 8007 | Puerto personalizado de la API del PBS. |
.server.fingerprint | No | Huella digital del certificado del servidor, encontrado en el panel de control. | |
.client | Sí | Diccionario que contiene la configuración del cliente para el PBC. | |
.client.archives | Sí | Array de elementos a respaldar. | |
.client.archives.name | Sí | Nombre del archivo de respaldo a cargar, no puede tener el carácter '/'. | |
.client.archives.path | Sí | Ruta para el respaldo. | |
.client.archives.format | Sí | Tipos comunes son .pxar para archivos de respaldo y .img para imágenes de dispositivos de bloque. | |
.client.encrypt | No | Diccionario que contiene la configuración de cifrado del lado del cliente. | |
.client.encrypt.enable | Sí | No | Habilitar o deshabilitar el cifrado del lado del cliente. |
.client.encrypt.pass | No | Contraseña para la clave de cifrado, si está protegida por contraseña. | |
.client.encrypt.key | Sí | ~/.config/proxmox-backup/encryption-key.json | Ruta para almacenar la clave de cifrado. |
.client.encrypt.master | No | Ruta al archivo local master-public.pem para copiar al cliente. | |
.client.output | No | Diccionario que contiene las opciones de formato de logging en stdout. | |
.client.output.format | No | texto | Valores posibles son texto, json, json-pretty. |
.client.output.border | No | Si se establece, no renderizará bordes en la tabla. | |
.client.output.header | No | Si se establece, no renderizará encabezados de tabla. | |
.client.include_devices | No | Array de puntos de montaje a incluir, los MP son omitidos por defecto. | |
.client.skip_lost_found | No | No | Omitir directorios perdidos+encontrados. |
.client.schedule.calendar | No | '--* 4:00:00' | Cadena OnCalendar de Systemd Timer, por defecto 4 am diario. |
.client.schedule.runifmissed | No | No | Activar servicio si se perdió la última hora de inicio. |
.client.exclude | No | Array que contiene configuraciones para archivos .pxarexclude. | |
.client.exclude[#].path | Sí | Ruta del archivo .pxarexclude (Carpeta principal). | |
.client.exclude[#].enabled | Sí | Crear el archivo de exclusión, eliminar si no. | |
.client.exclude[#].rules | Sí | Array de reglas de exclusión, puede incluir una inclusión explícita. |
Por defecto
default_config:
client:
encrypt:
enable: false
key: ~/.config/proxmox-backup/encryption-key.json
output:
format: texto
skip_lost_found: no
schedule:
calendar: '*-*-* 4:00:00' # Diario a las 4 am
runifmissed: no
Ejemplos
Variables de Grupo a Nivel Global (formato YAML).
pbs_global_server:
user: backup@pbs
pass: ProxmoxBackupPassword
host: pbs.example.com
datastore: backups
fingerprint: 7f:f1:ee:...:3d:de:2b
pbs_global_client:
skip_lost_found: yes
exclude:
- path: /
rules:
- /boot/*
- /tmp/*
- path: /var/
rules:
- /run/*
- /log/*.[0-9]
- /log/*.[0-9].*
- /log/**/*.[0-9]
- /log/**/*.[0-9].*
archives:
- name: root
path: /
format: .pxar
- name: boot
path: /boot
format: .pxar
Variables a Nivel de Host (formato YAML).
pbs_client:
archives:
- name: ssd
path: /ssd
format: .pxar
- name: data
path: /Data
format: .pxar
exclude:
- path: /ssd/qbit/
rules:
- /incomplete/*
- path: /ssd/media/
rules:
- /_transcode/temp/*
- /_transcode/log/*
- /converted/*.jpg
- /converted/*.mp4
- /.Trash*
Combinar configuración de grupo con configuraciones de host
pbs_global_client es una variable de grupo global.
pbs_client es una variable de host.
combine(pbs_client, recursive=true) combinará diccionarios. El diccionario dentro de la combinación tendrá prioridad sobre el diccionario pasado. Puede encadenarse.
# Combinar los arrays para que uno no sobrescriba al otro.
- name: Merge PBS Client Arrays
set_fact:
pbs_client_merged:
archives: "{{ pbs_global_client.archives + pbs_client.archives }}"
exclude: "{{ pbs_global_client.exclude + pbs_client.exclude }}"
- name: Configurar Cliente de Respaldo de Proxmox
include_role:
name: proxmox-backup-client
vars:
proxmox_backup:
server: "{{ pbs_global_server }}"
client: "{{ pbs_global_client | combine(pbs_client, recursive=true) | combine(pbs_client_merged, recursive=true) }}"
Acerca del proyecto
Ansible role to install and configure the Proxmox Backup Client.
Instalar
ansible-galaxy install notmycloud.proxmox_backup_client
Licencia
mit
Descargas
320
Propietario