LINUX.ORG.RU
ФорумAdmin

Bacula. Проверка бэкапов.

 


0

2

Современные админы делятся на тех кто еще делают бэкапы и на тех, кто уже эти бэкапы тестируют.

Поделитесь опытом, каким образом можно автоматизировать процесс проверки резервных копий в bacula? Когда речь идет о бэкапе БД, то все, как будто, очевидно (восстановил дамп из бэкапа, восстановил тестовую базу из дампа, проверил тестовую базу). А вот как быть с «файлопомойками»? Очень хочется иметь максимально близкую копию каких либо директорий. С одной стороны это было бы неким тестом резервной копии, с другой стороны, чаще всего звонят пользователи и просят восстановить удаленный файл (как он называется и где находился, естественно, не помнят). Искать нужный фал удобнее в какой-нибудь восстановленной из бэкапа папки, чем в консоли bacul`ы.

В общем у кого, какая практика. Интересна скорее сама концепция, нежели техническая реализация.

В общем у кого, какая практика.

Никогда регулярно не тестировал бекапы. Просто потому, что вероятность того, что одновременно накроется и основная копия данных, и резервная, на мой взгляд, настолько низка, что ей можно пренебречь. Поэтому один раз настраиваю систему бекапа, проверяю ее функционирование (в том числе с тестовым восстановлением данных) и забываю о ней до тех пор, пока бекап реально не потребуется. За ~20 лет еще ни разу не пришлось пожалеть ;).

А вот как быть с «файлопомойками»?

Самое простое, наверное - это сверять контрольные суммы файлов.

чаще всего звонят пользователи и просят восстановить удаленный файл (как он называется и где находился, естественно, не помнят).

Не очень понятно, как вообще по таким вводным данным можно что-то найти.

Serge10 ★★★★★
()
Последнее исправление: Serge10 (всего исправлений: 1)

как он называется и где находился, естественно, не помнят

Раз не помнят какой и где, то ты можешь восстановить любой и сказать что это он.

Или сказать «восстановил уже!, но какой файл и где - не помню»

zgen ★★★★★
()

Если сама концепция интересует, то в СРК должна быть предусмотрена возможность верификации бэкапов. Т.е. СРК должна хранить в базе контрольную сумму каждого блока, и по команде уметь прочитать каждый блок, принадлежащий джобу, и убедиться, что он читается, и что у него правильная контрольная сумма.

Я не знаю, умеет ли это Bacula, но концепция такая =)
Нормальные СРК умеют.

Это не отменяет тестовых восстановлений, которые обычно аудиторы требуют проводить не реже 1 раза в год. Но там достаточно просто восстановить несколько файликов (те, которые попросят).

bigbit ★★★★★
()
Последнее исправление: bigbit (всего исправлений: 1)
Ответ на: комментарий от zgen

как он называется и где находился, естественно, не помнят

сказать «восстановил уже!, но какой файл и где - не помню»

+1

anc ★★★★★
()
Ответ на: комментарий от bigbit

Если используешь ленты, то с таким подходом твои бэкапы в большой опасности.

Не использую. У меня бекап идет на удаленное (~15 км) хранилище (на HDD). Раз в год - полный бекап, раз в месяц - дифференциальный, ежедневно - инкрементные. Система запущена в 2007 г, с тех пор было однажды полное восстановление одного сервера и приблизительно с десяток в год - восстановление отдельных файлов по просьбам пользователей. Т. е. максимальное время жизни бекапа - чуть больше года. Диски вполне справляются с его хранением.

Serge10 ★★★★★
()
Ответ на: комментарий от bigbit

вряд ли много кто нынче использует ленты.

zgen ★★★★★
()
Ответ на: комментарий от bigbit

А вы раскройте тему ленточек пжалуйста. А то это тоже разные варианты. Одно дело когда они все загружены в накопитель, другое что старые на полочке лежат.

anc ★★★★★
()

В общем у кого, какая практика. Интересна скорее сама концепция, нежели техническая реализация.

Я специально для файлопомойки написал на питоне костыль, который при помощи rsync синхронизирует её на backup сервер.

У rsync есть ключи --backup --backup-dir, которые позволяют реализовать нечто вроде корзины. Скрипт запускается раз в сутки в нерабочее время, и каждый час в рабочее.

Таким образом у меня постоянно есть актуальная копия всей файлопомойки и двухнедельная корзина. В корзине папки по датам, в которых видно в какой промежуток времени какие файлы были изменены или удалены. Когда звонит юзер, я спрашиваю не название файла, а когда он видел его в последний раз.

afanasiy ★★★★
()
Ответ на: комментарий от anc

Даже если все ленты в библиотеке и они регулярно перематываются, я бы не дал много за бэкап, находящийся на ленте в единственном экземпляре. Если ленты, то обычно с них делают копии. Не читается лента - перекопируют даные на новую ленту с другой копии.

bigbit ★★★★★
()
Последнее исправление: bigbit (всего исправлений: 1)
Ответ на: комментарий от bigbit

Даже если все ленты в библиотеке и они регулярно перематываются, я бы не дал много за бэкап, находящийся на ленте в единственном экземпляре.

А за какой бэкап носитель в единственном экземпляре Вы бы поставили? (глиняные таблички не предлагать :))

anc ★★★★★
()
Ответ на: комментарий от anc

Таких не знаю. Говорят, энтерпрайзные ленты (напр, IBM 3592) более надежны, чем мейнстримовский LTO. Но я их не видел, и, судя по ПО, которое работает в том числе и с 3592, подходы общие везде - делать несколько копий.

bigbit ★★★★★
()
Ответ на: комментарий от bigbit

делать несколько копий

Ну я на это и намекал :)

anc ★★★★★
()

Концепция такая:

  1. не пользоваться софтами для бекапа, которые тебе не нужны (если ты не бекапишься на ленты, зачем тебе bacula?)
  2. постоянно мониторить задания бекапов (периодичность снятия, размер бекапа после каждой задачи, общий размер бекапа и скорость увеличения/уменьшения размера бекапа, количество файлов в бекапе), а так же мониторить хранилище, куда складываются бекапы (изменяется ли размер данных на диске, как себя ведут диски по нагрузке да и железо в целом). На это всё должен быть настроен алертинг.
  3. бекапить в несколько мест/провайдеров (например локальный сервер nas в твоей инфе и в aws s3).

Если это у тебя сделано, то автоматически развертывать может и не придется, потому что мониторинг будет тебе косвенно показывать состояние твоего бекапа. Но твой софт должен позволять делать это просто и непринужденно, а не как в бакуле.

Это относится к файлопомойкам. К базам, конечно, подход другой.

А людей, которые говорят, что они «просто настраивают и забывают про бекапы» лучше не слушай, они просто хотят занять твое место, когда тебя уволят, потому что окажется, что последние пол года твоя система бекапы не собирает.

v9lij ★★★★★
()
Последнее исправление: v9lij (всего исправлений: 1)
Ответ на: комментарий от v9lij

лучше не слушай, они просто хотят занять твое место, когда тебя уволят, потому что окажется, что последние пол года твоя система бекапы не собирает

Не факт. Чувак так полгода забивал на замену ленточек и ничего, до сих пор работает. Начальники отмазались.

anc ★★★★★
()
Ответ на: комментарий от zgen

как он называется и где находился, естественно, не помнят

Раз не помнят какой и где, то ты можешь восстановить любой и сказать что это он.

Это нормальная практика. У буха годами «в углу рабочего стола» может находиться файл, название которого он даже и не замечает, просто визуально тыкает в ярлык и все. В случае если он его удалит, искать этот файл в интерфейсе бакулы - нереально (как уже заметил v9lij). А вот если бы под рукой на SMB шаре была копия всех пользовательских файлов, да не просто копия, а восстановленная из недавнего бэкапа, вот это облегчило бы задачу поиска нужного файла, и тест резервной копии, попутно.

Только вот есть ли в бакуле такая возможность автоматически держать более-менее точную копию тех объектов которые бэкапятся.

Никогда регулярно не тестировал бекапы. За ~20 лет еще ни разу не пришлось пожалеть ;)

Ну что сказать, у Вас еще все впереди. Как я отметил в топикстарте, Вы еще из тех, кто просто делает бэкапы.

ewgenik
() автор топика
Ответ на: комментарий от afanasiy

я спрашиваю не название файла, а когда он видел его в последний раз.

как можно понять по тому когда юзер видел %нечто% тогда-то, но не по его имени? Найди то, не знаю что?

real_kas
()
Ответ на: комментарий от real_kas

По пути до каталога. Юзер может не помнить названия файла, но, как правило, помнит в каком каталоге он лежал, и когда он там был в последний раз.

Я ищу в «корзине» каталоги за нужное время и смотрю в них, какие там были изменения.

afanasiy ★★★★
()
Ответ на: комментарий от ewgenik

Только вот есть ли в бакуле такая возможность автоматически держать более-менее точную копию тех объектов которые бэкапятся.

В смысле? В этом суть бекапа и состоит. Развертывайте целиком и пусть ваш бух ищет свое говно, которое он не знает где, и не знает что.

Потому что «в углу рабочего стола» - это таки точный путь к foldername

zgen ★★★★★
()
Ответ на: комментарий от v9lij

не пользоваться софтами для бекапа, которые тебе не нужны (если ты не бекапишься на ленты, зачем тебе bacula?)

Например какими из бесплатных нужно пользоваться?

ewgenik
() автор топика
Ответ на: комментарий от ewgenik

«нужно» имеет смысл какого-то принудительного указания. Я лишь рекомендую не пользоваться инструментами, которые создавались для решения иных задач, нежели есть у тебя.

Если конкретно про меня говорить, то у нас именно всякие файлопомойки бекапятся на данный момент restic, до этого был borg, до этого совсем давно когда-то была bacula.

v9lij ★★★★★
()

у кого, какая практика

никогда не делаю бекапов это как шаг назад…

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.