proxmox_backup_client
Ansible-Proxmox-Backup-Client
Эта роль устанавливает и настраивает Proxmox Backup Client на операционной системе на базе Debian. Документацию по Proxmox Backup Client можно найти здесь: Proxmox Backup Client.
Переменные
Переменная | Обязательная | По умолчанию | Описание |
---|---|---|---|
proxmox_backup | Да | Словарь, содержащий вашу конфигурацию для этой роли | |
.server | Да | Словарь, содержащий информацию для подключения к вашему Proxmox Backup Server. | |
.server.user | Да | Имя пользователя для доступа к PBS, например, backup@pbs | |
.server.pass | Да | Пароль или токен для указанного имени пользователя. | |
.server.host | Да | Имя хоста/FQDN/IP вашего PBS. | |
.server.datastore | Да | Хранилище для хранения резервных копий. | |
.server.port | Нет | 8007 | Пользовательский порт API PBS. |
.server.fingerprint | Нет | Отпечаток сертификата сервера, который можно найти на панели управления. | |
.client | Да | Словарь, содержащий конфигурацию клиента для PBC. | |
.client.archives | Да | Массив элементов для резервного копирования. | |
.client.archives.name | Да | Имя файла архива для загрузки, не может содержать символ '/' . | |
.client.archives.path | Да | Путь к резервной копии. | |
.client.archives.format | Да | Обычно используемые типы: .pxar для архивов файлов и .img для изображений блочных устройств. | |
.client.encrypt | Нет | Словарь, содержащий параметры шифрования на стороне клиента. | |
.client.encrypt.enable | Да | Нет | Включить или отключить шифрование на стороне клиента. |
.client.encrypt.pass | Нет | Пароль для ключа шифрования, если защищен паролем. | |
.client.encrypt.key | Да | ~/.config/proxmox-backup/encryption-key.json | Путь для хранения ключа шифрования. |
.client.encrypt.master | Нет | Путь к локальному master-public.pem для копирования на клиент | |
.client.output | Нет | Словарь, содержащий параметры форматирования логов stdout. | |
.client.output.format | Нет | text | Возможные значения: text, json, json-pretty. |
.client.output.border | Нет | Если установлено, не будет отображаться граница таблицы. | |
.client.output.header | Нет | Если установлено, не будет отображаться заголовок таблицы. | |
.client.include_devices | Нет | Массив точек монтирования для включения, точки монтирования по умолчанию пропускаются. | |
.client.skip_lost_found | Нет | Нет | Пропустить директории lost+found. |
.client.schedule.calendar | Нет | '--* 4:00:00' | Строка OnCalendar для системных таймеров, по умолчанию каждый день в 4 утра. |
.client.schedule.runifmissed | Нет | Нет | Запустить сервис, если последнее время запуска было пропущено. |
.client.exclude | Нет | Массив, содержащий параметры для файлов .pxarexclude. | |
.client.exclude[#].path | Да | Путь к файлу .pxarexclude (родительская папка). | |
.client.exclude[#].enabled | Да | Создать файл исключения, удалить, если нет. | |
.client.exclude[#].rules | Да | Массив правил исключения, может включать явное включение. |
По умолчанию
default_config:
client:
encrypt:
enable: false
key: ~/.config/proxmox-backup/encryption-key.json
output:
format: text
skip_lost_found: no
schedule:
calendar: '*-*-* 4:00:00' # Каждый день в 4 утра
runifmissed: no
Примеры
Глобальные переменные группы (формат 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
Переменные уровня хоста (формат 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*
Объединение глобальных значений группы с переопределениями уровня хоста
pbs_global_client является переменной ALL group_var. pbs_client является переменной host_var. combine(pbs_client, recursive=true) объединит словари. Словарь внутри combine будет иметь приоритет над объединяемым словарем. Могут быть цепочки.
# Объедините массивы, чтобы один не переопределял другой.
- 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: Setup Proxmox Backup Client
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) }}"
О проекте
Ansible role to install and configure the Proxmox Backup Client.
Установить
ansible-galaxy install notmycloud/ansible-proxmox-backup-client
Лицензия
mit
Загрузки
304
Владелец