otakup0pe.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.
Лицензия
Автор
Эта роль Ansible была создана Jonathan Freedman, потому что он устал терять данные из-за неумолимого разложения информации.
ansible-galaxy install otakup0pe.dupwrap