dupwrap

Техническое обслуживание

duplicity wrapper

Эта роль Ansible устанавливает простой обертку вокруг инструмента резервного копирования duplicity. У нее есть два режима работы - резервное копирование на Amazon S3 или зашифрованный диск Mac на внешнем накопителе. Инструмент dupwrap поддерживает несколько профилей резервного копирования на одном хосте. Его можно запустить как пользователь root для резервного копирования серверов или как другого пользователя для резервного копирования рабочих станций.

Режим S3

Этот режим загружает резервную копию, зашифрованную с помощью GPG, в заданный S3 бакет. У пользователя IAM, связанного с предоставленными API-ключами, должны быть разрешения на чтение и запись.

Режим Mac USB

Этот режим создает/поддерживает зашифрованный том на внешних накопителях. Это приводит к двойному шифрованию, но мне это не мешает. В этом режиме не поддерживается плановое резервное копирование.

Переменные

Это переменные, которые имеют значения по умолчанию. Эти значения выбраны, чтобы облегчить резервное копирование целого сервера, просто добавьте источник и место назначения.

  • dupwrap_user по умолчанию равен root
  • dupwrap_group по умолчанию равен root
  • dupwrap_config_prefix по умолчанию равен /etc
  • dupwrap_bin_prefix по умолчанию равен /usr/local/bin, что достаточно для
  • dupwrap_cron по умолчанию равен false - включите, чтобы настроить cron-задачу
  • dupwrap_cron_verbose по умолчанию равен false, но вы можете сделать вывод более подробным, чем когда-либо действительно захотите
  • dupwrap_n_full по умолчанию равен 3 и контролирует, сколько полных резервных копий сохранять
  • dupwrap_remove_older по умолчанию равен 12 и удаляет резервные копии старше указанного числа месяцев
  • dupwrap_full_older по умолчанию равен 30D и определяет, как часто выполнять полные резервные копии

Можно определить несколько профилей резервного копирования. Все они хранятся в каталоге с именем dupwrap, который находится относительно префикса конфигурации. Переменная dupwrap_backups используется для определения профилей резервного копирования. Эта переменная содержит список объектов yaml, которые могут принимать глобальные настройки по умолчанию.

  • passphrase (по умолчанию равен dupwrap_passphrase) указывает пароль, используемый для шифрования
  • aws_access_key (по умолчанию равен dupwrap_aws_access_key) это AWS Access Key ID, необходимый для резервных копий S3
  • aws_secret_key (dupwrap_aws_secret_key) это AWS Secret Access Key, необходимый для резервных копий S3
  • bucket (dupwrap_bucket) это S3 URI, который нужно использовать, необходимый для резервных копий S3

Вы должны передать эти переменные экземпляра, если резервное копирование выполняется на Mac/USB

  • dupwrap_unencrypted_volume это имя смонтированного внешнего тома, который нужно использовать
  • dupwrap_encrypted_volume это имя зашифрованного тома, который нужно создать
  • dupwrap_encrypted_volume_size это размер тома, по умолчанию равен 256m

Скрипт dupwrap

Этот скрипт является интерфейсом для duplicity. Он также вызывается по расписанию cron, если вы его используете. Все взаимодействия с Mac/USB будут запрашивать пароль.

Опции

Эти опции изменяют поведение по умолчанию. Обратите внимание, что некоторые действия требуют указания профиля.

  • -d при указании для резервного копирования на Mac оставит все смонтированным после завершения резервного копирования.
  • -v выведет много отладочной информации
  • -f пропустит подтверждение при удалении объектов навсегда
  • -c указывает каталог, в котором хранятся файлы конфигурации. По умолчанию это то, что установлено в dupwrap_config_prefix
  • -p указывает профиль резервного копирования.
  • -t указывает время для восстановления файла. Я не знаю, почему это опция, а не аргумент действия. Наверное, потому что я плохо разбираюсь в компьютерах.

Действия

  • backup запускает резервное копирование. Если профиль не указан, то будет выполнено каждое найденное резервное копирование.
  • list выводит все в самой последней резервной копии
  • restore_file восстановит конкретный файл в указанное место
    • restore_file <file> <dest> для восстановления последнего
  • status основной информация о наборе резервных копий
  • prune удалит старые резервные копии. Если профиль не указан, то будут очищены все найденные резервные копии.

На macOS доступны дополнительные действия.

  • init создаст зашифрованный образ диска
  • purge удалит зашифрованный образ диска
  • mount смонтирует зашифрованный образ диска
  • unmount размонтирует зашифрованный образ диска

Помощник по обмену

Скрипт помощника по обмену (dupwrap-swap-helper) предназначен для использования с переменными задачи pre_script и post_script. Он вызывается с одним аргументом, который может быть либо pre, либо post.

Лицензия

MIT

Автор

Эта роль Ansible была создана Jonathan Freedman, потому что он устал терять данные из-за неумолимого разложения информации.

О проекте

Duplicity wrappers for easy backups hooray

Установить
ansible-galaxy install otakup0pe/ansible-dupwrap
Лицензия
mit
Загрузки
69
Владелец
Just another freak in the freak kingdom.