Не хватает опыта в этом вопросе:(
По этому нужен совет...
1. Задумался о том, как проще, а главное лучше :) реализовать резервное копирование linux- сервера (LVM + RAID), на удаленный сетевой диск и тут возникает ряд вопросов:
1.1 На ум приходят множество утилит, но с какой будет проще совладать и при этом не напороться на грабли в будущем, на этот вопрос может ответить только практик... Не хотелось бы конечно городить огород с BareOS, пока склоняюсь к rsync и Clonezilla;
1.2 Хотелось бы так же отслеживать функционирование работы через Zabbix, но пока не понял с какой стороны подступиться (сам Zabbix уже установлен);
1.3 Соответственно хотелось бы проводить создание резервных копий без отключения и перезагрузок сервера.
2. Хотелось бы освоить инкрементный бэкап:
2.1 Какие инструменты для этого посоветуйте?;
2.2 На сколько сложно в случае полного отказа сервера, собрать из этих инкрементных копий, систему для разворачивания? Или с начало придется развернуть систему, а потом поверх неё уже кусочек инкрементного бекапа?
2.3 Может быть просто раз в недельку (большего мне пока не надо), копировать снапшот LVM? Нужно будет тогда его регулярно пере создавать и следить Заббиксом, что бы это дело работало...
3. Все это дело будет управляться наверное Кроном. А чем же еще?:)
4. В Забиксе наверное придется придумывать ручные проверки работы создания резервных копий, причем на разных этапах.
4.1 Конечно в таком случае легко ошибиться и что то упустить, по этому напрашивается вопрос: А есть ли готовые решения?
Я использую BorgBackup. Он у меня везде работает и я даже собственное творение сделал для docker'a и kubernetes'a.
Отличительная черта у него, что он делает всегда full backup, но повторяющиеся блоки просто референцирует на уже сущетвующие. В итоге при востановлении не надо сперва востонавливать сначала fullbackup, а потом каждый инкримент. Ну и из коробки он так-же делает дедупликацию и архивацию, плюс всё зашифрованно.
Для примера у меня (на работе) есть файловая помойка на 2,8Т и бэкап на 60 дней занимает 1,4Т.
anton13ms, да много раз уже делал, всё работает хорошо, можно отдельные файлы востанавливать, смотреть, что есть в бэкапе итд.
Один раз востанавливал те 1,4 Тб, где-то 4-6 часов надо было.
Рональд Макдональд, Почему костыльненько? По тому что после восстановления еще со снепшотам возиться нужно будет?
Опять же pfg21 сомневается в использовании tar для инкрементальных архивов...
Рональд Макдональд, Почему костыльненько? По тому что после восстановления еще со снепшотам возиться нужно будет?
Опять же pfg21 сомневается в использовании tar для инкрементальных архивов...
Рональд Макдональд,
Проблема еще вот в чем... Попробую описать ситуацию более подробно...
Ситуация:
1. В сети только один сервер к которому я имею доступ (Сервер А).
2. При этом в сети есть сервер Б (его админ не я:) ), к сетевой папке на нем у меня есть полный доступ, сервер этот скорее всего под аиндой:(
Идея такая (далее реч пойдет):
1. Снять первичный полный бекап с сервера А (можно к примеру Акронисом) и повторять эту процедуру только при кардинальных изменениях на сервере, копировать бекап на сервер Б
2. Регулярно (думаю раз в неделю) создавать на сервере А LVM снапшот и копировать его на Сервер Б
В случае аварии или переноса:
1. Разворачиваем на новой машине образ Acronis
2. Восстанавливаем последнюю версию из снапшота
anton13ms, тогда вам надо удалять снапшоты с боевой машины после того, как вы сделаете копию Акронисом, потому что они будут не нужны.
Ну а так - ок, коль хочется пяткой ухо почесать.
Пока с бакулой не хочется разбираться, к тому же на сколько я понял, бакула предусматривает настройку на сервере принимающем, а у меня нет возможности админить принимающий сервер:(
Правильно выше пишут. Технически tar+cron решает эту задачу. И обычно самое простое решение - самое надежное. Если "хочется отслеживать" - то это уже другая задача. И она не имеет прямого отношения к бэкапу. Тоесть вопрос состоит из двух независимых частей. Собственно бэкап. И какой-то мониторинг который должен ... что то мониторить.
Ну наверное это действительно не относиться к делу, по скольку наверное проще будет мониторить хранилище бекапов, на условия:
1. Не старше ли последний файл определенной даты.
2. Не нулевой ли размер у архива.
Тебе мониторинг при такой постановке не нужен. Мониторинг - это когда из внешней среды (сеть) прилетают миллион событий и время этих событий ты не контролируешь.
А тебе нужен банальный отчет о бэкапе. Который в себе содержит
1. Дату последнего файла.
2. Размер архива.
Все. Больше мониторить тебе нечего т.к в хранилище больше не будет никаких изменений. У тебя 100% синхронный процесс. Сделал бекап 1 раз в сутки. И отправил себе на почту отчот.
Я тебя понял так, что событие возникает каждый раз когда происходит backup, а я говорю что должно возникать когда проблема с формированием бекапа, так ведь меньше отвлечений у диспетчера...
Бэкап, бэкап, просто мы похоже друг друга понять не можем.
На сколько я понимаю, разница в том, что ты хочешь что бы каждый бекап проверялся сотрудником, а я хочу что бы забикс сам автоматически проверял... Но в обоих случаях, это будет бэкап, так ведь?
Я делал бэкап на гос-предприятиях для Oracle и получал за это деньги. Что ты делаешь - я не знаю. Просто тебе очень хочется чтобы сбоку был Zabbix. Я не могу тебя остановить. Конечно внедряй свой Zabbix. Неужели я стану тебя бить по рукам или как-от запрещать? Оно мне надо? Просто у Zabbix, как и у всех вещей в мире есть своё предназначение. Например смотреть сколько свободного места на диске. Вот и смотри себе. Просто первичная задача - сделать backup. А вторичная - мониторить всю оставшуюся вселенную. И спросят с тебя за бэкап а не за всю вселенную.
Может быть я тебя не правильно понял:
1. То есть ты хочешь сказать, что ты получал отчеты на почту, каждый раз когда создавалась резервная копия?
2. А судил о правильной работе системы, просматривая глазами отчет и делая какой то вывод?
Rsync идеально подходит для управления бэкапами на уровне файлов малого и среднего размера. Инкрементальный бэкап на основе жёстких ссылок позволит вам:
- с одной стороны - иметь полностью независимые полные бэкапы, с возможностью в любой момент удалить ненужный и элементарного восстановления любого файла
- с другой стороны - оптимизация дискового пространства, т.к. реально на диске будут храниться только разные файлы - остальные будут связаны жёсткими ссылками и не будут занимать дополнительное место.
Такими образом, если вас устраивает хранение на уровне файлов и у вас нет больших часто меняющихся бинарных файлов (например фалы БД), то rsync (и множество утилит-надстроек над ним) - отличный вариант!
Однако, вы написали, что хотите делать LVM-снапшоты удалённо. То есть вам нужна возможность передавать бинарные блобы (а ещё лучше - только разницу) удалённо, оптимально хранить и, судя по тому, что бэкап-сервер вам не принадлежит, по-хорошему, ещё и шифровать. Всё это есть в, уже порекомендованном вам, BorgBackup. Это такой git-репозиторий для бинарных файлов с дедупликацией и шифрованием. К сожалению ничего не могу сказать по поводу его работы с win-хостами - не сталкивался.
Насчёт мониторинга: имеет смысл либо сразу искать бэкап-систему с мониторингом из коробки, либо выбирать удобный инструмент и уже к нему пристраивать мониторинг. В вашем случае я бы выбрал второй вариант.
А что на этом сервере? Может быть проще загнать всю конфигурацию в Ansible, а именно изменяющиеся данные (базу данных, или что там) бекапить специализированными инструментами.
Veeam Agent Free.
Используем как на Win-машинах, так и на линуксовых. Восстанавливать Windows приходилось не раз, всё работает. Линуксовые машины ни разу не пришлось.
Интересно, почему никто не прошелся по Bacula. Слегка мудреный конфиг, но если все заточить под свои нужды, вещь весьма достойная. Так же легковесный rdiff-backup, ну и правильно пишут выше сам rsync. При наличии желания, времени можно написать на его основе вагон и тележку скриптов по резервированию системы.