Этот вопрос представляется off-topic. Особенно, если вы ожидаете:
- рекомендация программного обеспечения
- Заполненная программное решение
Ваш вопрос будет получать больше внимания: Server Fault
Я рекомендую использовать Bacula, потому что:
- Вы, очевидно, уже знакомы с этим
- Он поддерживает ваши требования
- Он поддерживает дополнительное шифрование, которое рекомендуется хранить данные на AWS
Мы используем питон скрипт Wich уволят, периодически используя хрон. Вы можете запустить сценарий также после любой работы, используя RunScript.
Основная концепция: use each volume once. После того, как нужные тома будут отмечены как использованные, загрузите их на ледник амазонки.
Наш скрипт делает:
- Позовите PoolId-х желаемых бассейнов от
bacula.Pools
. Мы загружаем только полные резервные копии.
- Выборка MediaID-х из
Media
с VolStatus=Used
и PoolId
является одним из предыдущего
- Write MediaID к новой таблице (э:
MediaArchive
) которым сохраняет состояние обработанной ледниковой загрузки.
- Загрузить файл
Media.VolumeName
с помощью boto (create_archive_from_file)
- Об успехе, сохранить архив идентификатор к вашему
MediaArchive
. В противном случае перезапустите загрузку.