LINUX.ORG.RU
ФорумAdmin

Система для резервного копирования с ui. Чего выбрать?

 ,


1

5

Всем привет!

Много лет живу с rdiff-backup. Но не очень удобно:

  • добавлять каждое задание в cron (порядка несколько десятков заданий уже)
  • мониторить всё в полуручном режиме (при наличии настроенного zabbix) - писать для каждого backup свой кусочек shell кода.
  • писать для каждого backup, shell сценарий вида: примонтируй вот этот cifs, запусти backup, отмонтируй, удали старые backup

Хочется

  • Делать резервные копии: windows, linux
  • Хочется мониторить это хозяйство через zabbix, ну или на худой конец более удобно, чем в полуручную.
  • Настраивать backup через webui
  • Уметь всякие плюшки вида инкремента и всего прочего, годного, делать backup через: ssh, rsync, cifs, etc...
  • Делать резервные копии удалённых сотрудников (по возможности)
  • free of cost

Не хочется

  • Сильно долго возиться с настройкой, и получать в конечном итоге сложную систему.

Думаю на тему: bare os webui (но оно очень похоже ещё сырое!) или на тему backup PC. Backup PC уже форкнули, ну а bare os, это уже форк... В общем не знаю даже... backup-pc выглядит проще.

★★★★★

Последнее исправление: DALDON (всего исправлений: 2)
Ответ на: комментарий от iron

Плюсую, Bacula + Webacula.

Правда они опопсели что-то, для винды теперь клиенты платные чтоль, давно не смотрел как у них дела, переехал на Veeam.

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

Правда они опопсели что-то, для винды теперь клиенты платные чтоль

Насколько я понимаю, да... Опопсели.

Webacula

Вроде как оно совсем не допиленное, насколько я понял, как раз в части добавления заданий...

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

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

Мне кажется бакула сложной

Сложновата с первого взгляда, да. Но, как в том анекдоте - «наш кот сначала боялся пылесоса, а потом ничего - втянулся!» :)

У меня он трудился 6 лет и с виндовыми и с линуксовыми физическими и виртуальными серверами с миллионами файлов, ни единого разрыва.

Вебакулу не юзал, так что за качество её не скажу. Всё собирался, да не собрался.

Мне не всегда хочется ставить клиентов

А как предлагается ту же винду бэкапить? Через системные шары типа C$ D$? С линуксов то ещё можно по SSH как-то вытянуть, а тут хз.

Сервера физические или виртуалки?

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

Сервера физические или виртуалки?

Разброд, шатание... Боль, слёзы: HP-UX, FreeBSD, Windows 98,2к,XP,7,2003, linux (SLES 10, Ubuntu 8.04+, CentOS, ORA, etc...). Домен есть не везде. + qcow образы я хочу сливать иногда, ибо на 100процентов не доверяю zfs.

А как предлагается ту же винду бэкапить?

Исходя из того, что я написал, то, да: C$, D$. - Другого варианта у меня просто нету. У меня реально, Win98,2000,XP - это продуктивные сервера. Ну и клиентские машины, тоже хочется бекапить.

Bacula так может, чтобы без клиентов? Плюс, будет очень здорово, чтобы CIFS поддерживал бы и kerberos, а не только user+pass.

Сейчас так уже несколько лет у меня rdiff-backup живёт. Но не удобно его мониторить, и добавлять задания. Хочется чего-то более управляемого, например, чтобы я смог добавлять новые задания через ansible, а мониторить успешность backup - через zabbix. - Такое возможно сотворить с bacula? Тогда web интерфейс не нужен.

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

HP-UX, FreeBSD, Windows 98,2к,XP,7,2003, linux (SLES 10, Ubuntu 8.04+, CentOS, ORA, etc...).

Да, зоопарк... Стандартизовать не пробовал? Виртуализировать? Я у себя весь зверинец загнал в vSphere и бед не знаю. HP/UX там, конечно, нет, но думаю и с ним совладать как-то можно.

Bacula так может, чтобы без клиентов?

Нет, бакула работает только через клиентского агента, который передаёт данные Storage Daemon-у под чутким руководством Director-а.

Ну и клиентские машины, тоже хочется бекапить.

Veeam на днях выпустил бесплатную лабуду под названием Endpoint Backup или что-то такое, сам не щупал. Попробуй, может подойдёт как раз для твоих типа-серверов на WinXP/2000 хотя не уверен. Хотя агент там нужен.

В общем, думаю, серебряной пули, которая удовлетворит все твои потребности, скорее всего нет. Либо несколько продуктов под разные задачи, либо какие-то свои велосипеды.

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

Да, зоопарк... Стандартизовать не пробовал? Виртуализировать?

Очень дорого. Мы за существующее лиц. ПО платим космические деньги. Виртуализировать сейчас пробую, но на серьёзные решения опять-же денег не дают, для виртуализации надо: СХД, лезвия, FС и т.д. А у меня многомод ещё везде проложен, под который уже не найти ничего (а это тоже считай капитальные вложения)... В общем проблемов хватает. С тем учётом, что всё это барахло висит на мне, и я ещё занимаюсь не только сис.админством сейчас. Всякие Win98,2000 - стоят не просто так... А стоят, так-как они работают в связке со специальным оборудованием (LPT,COM,USB), и виртуализовать это барахло возможным не представляется (я пробовал). Сам понимаешь, я не могу прийти и сказать, что надо разобрать трансформаторную подстанцию, и переделать все оборудование там, чтобы было молодёжно и по wi-fi всё. Некоторое ПО, на XР то работает не с полпинка (специально разрабатывали в своё время, исходники уже потеряны... А оно так и молотит в продуктивной системе)... Куда там уж обновляться...

Veeam на днях выпустил бесплатную лабуду под названием Endpoint Backup или что-то такое, сам не щупал.

Я конечно посмотрю, но как показывает практика, всё это как правило замануха, в том или ином виде...

Нет, бакула работает только через клиентского агента, который передаёт данные Storage Daemon-у под чутким руководством Director-а.

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

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

http://www.veeam.com/ru/endpoint-backup-free.html

Насколько я понимаю, это не энтерпрайз. Эту лабуду надо ставить и конфигурировать на каждое, отдельное рабочее место. И бекапить оно будет или тупо на сетевую шару, или на платный veam. Так что, да. - Замануха.

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

История, конечно, грустная, но что ты будешь делать, когда навернётся железка с виндой 98? Выбивай бабло на модернизацию, я серьёзно.

leave ★★★★★
()

По сабжу, backuppc на этом зоопарке хреново мониторить будет, я гарантирую это.

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

История, конечно, грустная, но что ты будешь делать, когда навернётся железка с виндой 98?

Держу запасную железку, уже вылетало железо, и кондёры паяли, и всякое бывало. С 2002 года работаем на 98.

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

Выбивай бабло на модернизацию

Да, дело хорошее, но перекладывать провода по нескольким зданиям - дело хлопотное...

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

По сабжу, backuppc на этом зоопарке хреново мониторить будет, я гарантирую это.

У меня мне кажется выбора, не то, чтоб много... Пока под мои требования, только разве он и подходит похоже... Может конечно ещё AMANDA (прости господи...)

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

Чпукс на итаниуме, виртуализировать не вариант (

Вот не знаю, стоит выкладывать фото или нет? Как итаниум сервер 2002-4 г.в. работает только с привязанным напольным вентилятором... Ибо из четырёх серверов осталось два, а мне нужно три... Из двух мёртвых собрал один, который от малейшего нагрева мат. платы виснет....

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

для виртуализации надо: СХД, лезвия, FС и т.д.

Ну, если взять супермикру, как я, и самосборные СХД на ней, то денег всё это будет стоить вполне себе вменяемых по сравнению с брендами, в разы. FC ещё например выкинуть и заменить на iSCSI, стоимость порта раза в 2-3 ниже будет, плюс не нужны FC свичи.

Блейды тоже у микры есть, хотя не щупал.

А у меня многомод ещё везде проложен, под который уже не найти ничего (а это тоже считай капитальные вложения)

В чём проблема многомода-то? Под него и трансиверы есть и всё что хошь. FC бегает по нему вообще бай дефолт.

Всякие Win98,2000 - стоят не просто так... А стоят, так-как они работают в связке со специальным оборудованием (LPT,COM,USB), и виртуализовать это барахло возможным не представляется (я пробовал).

Эта тема достаточно просто решается - берётся специализированный девайс типа Moxa Ethernet-to-COM, а говноОСь засовывается в виртуалку и к ней подключается уже этот девайс по сети. ОСь видит его как родной ком-порт и разницы не чует.

Если это LPT или USB, то можно взять вообще универсальный девайс типа Digi AnywhereUSB который позволяет пробрасывать USB по IP - у меня таких парочка уже несколько лет трудится, проблем с ними не имею. Через них в виртуалки всякие ключи-хаспы-прочую херь пробрасываю.

А в этот виртуальный USB можно засунуть хоть USB-LPT конвертер, хоть чёрта лысого.

И общая надёжность системы повышается: виртуалка бэкапится, комп этот несчастный обслуживать не надо, а сам девайс-конвертер надёжен как танк.

А оно так и молотит в продуктивной системе)... Куда там уж обновляться...

Ну, вечно эту лямку тянуть всё равно не получится - нужно будет что-то менять. Либо софт, либо ОСь, либо и то и то :)

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

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

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

Эта тема достаточно просто решается - берётся специализированный девайс типа Moxa Ethernet-to-COM, а говноОСь засовывается в виртуалку и к ней подключается уже этот девайс по сети. ОСь видит его как родной ком-порт и разницы не чует.

Проблема, в том, что LPT железок я таких не видел, это раз. А во вторых, зачастую у этих железок нету драйверов под MS-DOS и Win98. MS-DOS я тоже использую.

Ну, если взять супермикру, как я, и самосборные СХД на ней, то денег всё это будет стоить вполне себе вменяемых по сравнению с брендами, в разы. FC ещё например выкинуть и заменить на iSCSI

Да, супермикра жгёт. Тоже присматриваюсь к ней... Но на счёт: iSCSI, смотрю скептически, в плане того, что гигабита - маловато, а городить бондинг, не очень хочется. Но можно, наверно.

В чём проблема многомода-то?

В том, что всякие проводки к нему оконечные искать проблемно. Ну это я так... Поплакался, не более. :)

Digi AnywhereUSB который позволяет пробрасывать USB по IP

Увы, есть похоже очень специфичные команды USB, которые этим штукам непосильны. Не видится у меня ничего... У меня там адовое китай устройство, которое с COM, делает USB хитрым образом, хитрым драйвером. - Я не отрицаю, что этого не возможно добиться, я просто повозился в своё время, и отложил, до лучших времён, ибо ничего не получилось, я и бросил, так-как нету особо времени на это всё...

Ну, вечно эту лямку тянуть всё равно не получится - нужно будет что-то менять. Либо софт, либо ОСь, либо и то и то :)

Да, сейчас очень плавно мы меняем ПО. Сложное это дело... Поди научи бабушку пользоваться другой программой, вместо той, с которой она уже 10 лет.

Там настраивать особо ничего не надо, агента я политиками домена раскидывал по виндам.

А сам агент, можно конфигурить как-то? Преднастраивать? Чего, куда и откуда ему бекапить и когда? Ты может не про Free версию говоришь?

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

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

Вот тут про сей продукт: http://habrahabr.ru/post/241087 И я к точно такому же выводу пришёл, почитав оф. сайт:

Но, Петька, есть нюанс! (с) Приложение надо будет установить на каждой отдельной машине, прописать настройки и проверить, что всё работает как задумано. Никакого централизованного развёртывания и управления. Всё исключительно ручками.

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

Проблема, в том, что LPT железок я таких не видел, это раз. А во вторых, зачастую у этих железок нету драйверов под MS-DOS и Win98. MS-DOS я тоже использую.

Да, IP-LPT нету вроде, но USB-IP + USB-LPT вполне их заменяет.

MSDOS да, проблема, но тоже решаемая я думаю. Тот же ESXi позволяет бросать в виртуалку LPT порт с хоста и будет он внутри как родной, а снаружи хоть какой :) Другие гипервизоры, уверен, тоже. В общем, вариантов масса.

Да, супермикра жгёт. Тоже присматриваюсь к ней... Но на счёт: iSCSI, смотрю скептически, в плане того, что гигабита - маловато, а городить бондинг, не очень хочется. Но можно, наверно.

Бондинг в баню, Multipathing наше всё. Я чуть больше года назад на хабре писал статью на тему iSCSI - http://habrahabr.ru/post/209460/ - там как раз 6 гигабитных линков и Round-Robin. Скорость вполне.

Латентность, конечно, повыше чем FC да и вообще мороки больше, но зато почти бесплатно :)

В том, что всякие проводки к нему оконечные искать проблемно. Ну это я так... Поплакался, не более. :)

Странно, никогда проблем не было, у Hyperline их завались и тех и тех. Да и патчики по 5 метров иногда пихаю многомод вместо одномода и наоборот - всё равно работает на небольших расстояниях. Например, к линии одномода длиной метров в 500 подключаю от кросса до девайса многомодовый патч - без проблем.

Увы, есть похоже очень специфичные команды USB, которые этим штукам непосильны. Не видится у меня ничего...

Конкретно с AnywhereUSB у меня любые девайсы работали отлично. Как вариант - в ядре линуксовом есть USB-over-IP стек, но когда я его щупал несколько лет назад он был ещё сырой. Может уже допилили. Тогда из любого Raspberry Pi можно делать USB-IP хаб :)

А сам агент, можно конфигурить как-то? Преднастраивать? Чего, куда и откуда ему бекапить и когда? Ты может не про Free версию говоришь?

Я про бакулу говорю, есличо. Там настраивать ничего особо не надо, только адрес директора указать который будет команды раздавать и всё по сути.

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

MSDOS да, проблема, но тоже решаемая я думаю. Тот же ESXi позволяет бросать в виртуалку LPT порт с хоста и будет он внутри как родной, а снаружи хоть какой :) Другие гипервизоры, уверен, тоже. В общем, вариантов масса.

Тогда потребуется драйвер, для LPT, или сервер с LPT, чтобы в ESXi виделся. У меня просто один «сервер» на 98, ещё парочка на 2000, и в каждом свой уникальный случай, т.е. возни много. А выхлоп в сути не велик. Esxi, в бесплатном варианте, рассматривать глупо, т.к. это всё замануха. А если покупать решение, то оно должно быть, конечно вменяемым. В общем из-за нескольких узлов, затеивать всё это дело не хочется.

Бондинг в баню, Multipathing наше всё. Я чуть больше года назад на хабре писал статью на тему iSCSI - http://habrahabr.ru/post/209460/ - там как раз 6 гигабитных линков и Round-Robin. Скорость вполне.

Латентность, конечно, повыше чем FC да и вообще мороки больше, но зато почти бесплатно :)

Крайне годная статья! Единственный минус: у тебя два сервера стоят рядом (читай в одной серверной, скорее всего). И при заливе/пожаре - случится ой... Ну скажем так: я к примеру и не догадывался, что над моей центральной серверной проложены трубы отопления на другом этаже, и однажды с потолка закапало... В общем, очень годно. Но складывать яйца в одну корзину дело такое... Хотя можно и этот вариант предусмотреть, конечно.

Странно, никогда проблем не было, у Hyperline их завались и тех и тех. Да и патчики по 5 метров иногда пихаю многомод вместо одномода и наоборот - всё равно работает на небольших расстояниях.

Годно! Спасибо. Буду иметь ввиду!

Конкретно с AnywhereUSB у меня любые девайсы работали отлично. Как вариант - в ядре линуксовом есть USB-over-IP стек, но когда я его щупал несколько лет назад он был ещё сырой. Может уже допилили. Тогда из любого Raspberry Pi можно делать USB-IP хаб :)

Я рассматриваю вариант приобретения, AnywhereUSB. Хрен его знает, заработает, или нет в моём случае, мне ж драйвера то опять под win2k надобны. Я пробовал по-всякому. USB-over-IP - сразу в топку. Надо разбираться с этим конкретно. Руки не доходят никак. Я вообще не имею понятия как там всё это поделие работает. Там была контора из Нижнего Новгорода, которая нагородила не весть чего, продала в реальный сектор экономики, и благополучно давно закрылась.

Я про бакулу говорю, есличо. Там настраивать ничего особо не надо, только адрес директора указать который будет команды раздавать и всё по сути.

Ааа... А я то подумал ты про veeam (я решил, что у них есть клиенты платные на endpoint). Ну так, да, вариант годный! Но там, да, теперь платные у них клиенты для Windows, хотя, насколько я понял, можно исхитриться и найти выход.

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

В общем из-за нескольких узлов, затеивать всё это дело не хочется.

Ну, есть халявный VirtualBox или прочие KVM/XEN под линух. Понятное дело что покупать ESXi для этого смысла нет, но всё же. Кстати он бесплатный теперь вроде без ограничений по памяти и прочего, так что вполне пригоден к использованию если нужно.

В общем учитывая древность машин на которых всё это вертится - геморрой с переносом, думаю, вполне обоснован. Зато потом будешь спать спокойно, а не ждать когда же оно сдохнет. И бэкапить просто.

Единственный минус: у тебя два сервера стоят рядом (читай в одной серверной, скорее всего).

Ну, никто не мешает реплицировать это дело хоть на другой конец города, если есть желание. У меня просто такой задачи не стояло и труб над серверной нет :) А брендовые решения аналогичные, с синхронной репликацией, стоят ... ммм.. много) NetApp MetroCluster ещё как-то вменяемо, но тоже не два рубля.

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

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

Ну в целом да. Но опять-же, оно только как standalone.

В общем учитывая древность машин на которых всё это вертится - геморрой с переносом, думаю, вполне обоснован.

В целом - согласен, конечно.

Ну в общем и целом, пока я не определился с выбором системы backup'a, в силу того, что у меня опять-же: домена нету толком...

Спасибо, что мне рассказал всякого о бакуле. Буду думать!

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

It is also possible to backup clients without any client software by using NFS or CIFS. However, if possible, we recommend running a Client File daemon on each machine to be backed up.

Вот оно чё Михалыч то в Bareos пишутЪ.., можно и без клиента...

Я пока мест знакомлюсь с этой штукой, ибо windows-fd, в bacule (хоть и малость) платный. Бесплатный, это последний fd, от 5ой версии, который с bacula 7.x, можно пользовать на свой страх и риск. В общем пока bareos, выглядит более чем нарядным решением, и ты знаешь... Есть не маловероятный риск, что я таки втянусь в этот пылесос (даже хвоста не останется), ибо вижу смысл: иметь SD, на отдельном узле с древним linux, а всё остальное, держать без напряга на виртуалке в kvm.

О результатах отпишусь попозже.

Плюс это дело, так или иначе можно попробовать связать с zabbix, что мне прям ну очень потребно... Там будет и автообнаружение Job, и всё такое прочее. В общем очень, очень вкусно (выглядит).

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

Работу без FD не проверял, так что не знаю как оно там реализовано.

В общем пока bareos, выглядит более чем нарядным решением

Ну, единственное что меня напрягало в этом поделие - что оно всё из себя прям очень заточено на бекап на ленту. И даже эмуляция ленты в файлах оставляет желать авторам пару кругов ада :)

Чтобы указывать несколько репозиториев на одной SD им нужно указывать помимо типа (File) ещё и уникальный номер (1..), который нифига нигде не используется (к пулам на SD директор обращается по имени):

Device {
    Name = "srv1"
    Media Type = File1
    Archive Device = "/mnt/backups/srv1"
    LabelMedia = yes
    Random Access = yes
    AutomaticMount = yes
    RemovableMedia = no
    AlwaysOpen = no
}

Device {
    Name = "srv2"
    Media Type = File2
    Archive Device = "/mnt/backups/srv2"
    LabelMedia = yes
    Random Access = yes
    AutomaticMount = yes
    RemovableMedia = no
    AlwaysOpen = no
}
Может уже чота изменилось, но раньше было так. Ну и с этими всякими Pool/Volume/etc обращаться не очень удобно. Оно везде подразумевает что это лента и её нужно Label/Eject/Recycle и т.п. :
Pool {
    Name = "srv1-daily"
    Pool Type = Backup
    Maximum Volume Jobs = 1
    Recycle = yes
    Recycle Oldest Volume = yes
    AutoPrune = yes
    Label Format = "${Client}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-daily"
    Maximum Volumes = 8
    Volume Retention = 7 days
}
Короче, сбивает с толку и абсолютно бессмыслено при бэкапе на винты.

Ещё напрягало, что сжатие данных идёт на клиенте (FD) и перенстроить это нельзя. В итоге старый файлсервер с древним процом дико напрягался сжимая всё это дело перед отправкой. Хотелось бы иметь возможность настраивать это дело в зависимости от конкретной задачи (либо на FD, либо на SD).

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

Спасибо тебе за весьма ценные замечания. В первом приближении всё настроил, всё получилось вроде.

Я пока поступил так:

  • Развернул узел на (kvm ubuntu 14, 512 RAM) bareos-dir + mysql. - По идее там много ресурсов не нужно.
  • Развернул bareos-sd (ubuntu 12, 2048 RAM), там имеется несколько места.
  • Развернул bareos-fd на своём локалхосте

В первом приближении вроде получилось, но теперь не знаю как организовать архитектуру.

У меня очень разные задачи для резервного копирования: есть образы qcow2, есть выгрузки, mssql (коих мне надо хранить много), есть просто очень много мелких файлов (Т.е. мне нужно будет инкрементальное/дифференциальное копирование).

Я посмотрел в первом приближении по поводу дедубликации на блочном/файловом уровне. - Всё плохо насколько я понял. То есть, или использовать hw дедупликацию, или не использовать вовсе. По-крайней мере, в mail рассылке bareos, говорят, что zfs, btrfs - не могут себя проявить, так-как на volume идёт запись в своём формате. Есть платный плагин для bacula только в этом плане.

В общем, в рассылке, говорят, мол, сейчас диски дешёвые, а архитектура, bareos/bacula, вполне себе позволяет использовать сколь угодно много sd, вот мол берите, и выбирайте по потребностям, будь то: кофеварка, кофемолка, amazon S3, или куча дешёвых винтов.

Как бы мне, заранее предусмотреть, такую возможность, что мне в будущем возможно потребуется ещё один сервер sd, например, можно арендовать на удалённой площадке железку, и туда периодичеки что-то складывать.

Покамест читаю, bareos мануал, в 500 страниц. Долго я ещё буду его читать... Ибо по-русски то нафиг не поймёшь чего делать с этими волюмами, а уж по-английски и вообще пока эту игру слов распарсишь... Ух... Но вообще говоря, подход даже с лентой мне нравится. У меня валяется стриммер, и я периодически балуюсь... - Понимаю, что для такого дела, bareos, подходит очень даже...

Ну и самое сложное из того, что мне необходимо, это сделать интеграцию с zabbix, чтобы было автообнаружение и т.д.

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

Развернул узел на (kvm ubuntu 14, 512 RAM) bareos-dir + mysql. - По идее там много ресурсов не нужно

Там очень обильно жрётся база данных - на каждый том бэкапа делается полный каталог файлов:

mysql> select count(*) from bacula.File;
+----------+
| count(*) |
+----------+
| 14363924 |
+----------+
И это ещё не много. Так что субд должна уметь быстро работать, не уверен что 512 мозгов буде достаточно.

По-крайней мере, в mail рассылке bareos, говорят, что zfs, btrfs - не могут себя проявить

Да, дедупликация на SD бессмыслена, в общем-то. Нужно перед скачиванием дедуплицировать, как делает тот же Veeam. Но тут, как ты сам говоришь, это тоже платно.

Как бы мне, заранее предусмотреть, такую возможность, что мне в будущем возможно потребуется ещё один сервер sd, например, можно арендовать на удалённой площадке железку, и туда периодичеки что-то складывать.

Хрен его знает, вроде особо ничего предусматривать не надо. Кончилось место - делаешь новый SD и новые жобы на него пихаешь.

Но вообще говоря, подход даже с лентой мне нравится.

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

это сделать интеграцию с zabbix, чтобы было автообнаружение и т.д.

Ну, скриптами, который будут пинать bconsole - в принципе, без проблем.

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

Там очень обильно жрётся база данных - на каждый том бэкапа делается полный каталог файлов:

Угу! Спасибо за команду SQL, погляжу, сколько у меня там. Но я прочитав документацию, это уже ясно понял, что оно будет жрать не мало СУБД.

Да, дедупликация на SD бессмыслена, в общем-то.

В двух словах, подскажи, почему? Пока слабо вкуриваю. Пусть есть большой том, где записано одно и тоже (к примеру инкрементный backup qcow образа в котором изменилось два мегабайта). Почему dedup не поможет, если это не лента? - Но я в целом всё равно понимаю, что это глупость, и ECC память + железо мне обойдутся дороже чем диски, о чём собственно также и пишут в рассылке, что логично. Так уже, чтобы понять окончательно...

Ну, скриптами, который будут пинать bconsole - в принципе, без проблем.

На github видел что-то для zabbix+bacula.

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

В двух словах, подскажи, почему? Пока слабо вкуриваю.

Ну, как раз из-за формата записи. Если бы он был dedupe-friendly, то другое дело. А тут один монолитный файл, и шанс что там встретятся блоки с одинаковым хешем, скорее всего мал.

к примеру инкрементный backup qcow образа в котором изменилось два мегабайта

Я довольно мало знаком с виртуализацие на линуксах, там нет какого-то аналого VMWare Changed Block Tracking? Когда бэкапное ПО может получить от гипервизора список изменённых блоков с последнего бэкапа и только их бэкапить. Что-нибудь на базе Device Mapper есть небось, видел что-то такое в ядре.

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

Но, похоже, ещё сырое, в основную ветку не включено...

Я бы не торопился с выводами. Эта разработка начата около 8 лет назад. Не думаю что оно сырое. Возможно причина в другом.

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

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

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

Да не, приведённая выше страница в wiki, уже существует весьма давно. Но всё равно, zfs удобнее в плане снепшотов. Ибо в qcow2, снепшоты реализованы через одно место.

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

Да не, приведённая выше страница в wiki, уже существует весьма давно.

Страница там давно, но ты её видишь и слышишь о livebackup впервые.

Ибо в qcow2, снепшоты реализованы через одно место.

Конкретнее. С ссылками на исходники или о чем ты там лопочешь

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

Конкретнее. С ссылками на исходники или о чем ты там лопочешь

Сей тред о bareos. Чего конкретизировать? Создание qcow2 live snapshot в onine режиме - без остановки VM не возможен.

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

Создание qcow2 live snapshot в onine режиме - без остановки VM не возможен.

Возможен. Опять ты не в теме.

        List the block device associated with the guest.

        # virsh domblklist f17-base
        Target     Source
        ---------------------------------------------
        vda        /export/vmimages/f17-base.qcow2

        #


2. Create external disk-only snapshot (while the guest is running).

# virsh snapshot-create-as  ...

Domain snapshot snap1 created
#

    * Once the above command is issued, the original disk-image
    of f17-base will become the backing_file & a new overlay
    image is created to track the new changes. Here on, libvirt
    will use this overlay for further write operations(while
    using the original image as a read-only backing_file).

давай, пиши еще

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

Create external disk-only snapshot

Оставь это себе. А потом делай обратный мёрдж в офлайне.

Хотя, быть может они таки допилили уже: http://wiki.qemu.org/Features/Snapshots#Limitations_of_Block_Commit , но у меня qemu старое, такого не было ещё.

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

Вижу zfs, более удобной и надёжней, чем все эти механизмы, в qcow2... Когда я смотрел, всё это было ещё в зачатке, сейчас они тоже собственно пишут что:

This document is describing the current design of live snapshots for QEMU. It is a work in progress and things may change as we progress.

Как-то не очень радует и вот это:

Roll-back to a previous version requires one to boot from the previous backing file, at which point the snapshot file becomes invalid. Unfortunately there is no way to detect that a backing file has been booted, making it important for administrators to take care to not rely on snapshot files being valid after a roll-back.

Оно понятно, что это так и надо, но это надо как-то заботиться об этом, чтобы такого не произошло. В общем надо думать, как это всё сопровождать... По сему я выбрал zfs, и периодический тупой full backup qcow файла, чтобы не завязываться на все эти технологии высокого уровня, будь то zfs, или qcow block commit и т.д.

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

Когда я смотрел, всё это было ещё в зачатке, сейчас они тоже собственно пишут что:

Судя по поиску ЛОРа, полгода назад ты начал задавать чайниковские вопросы о zfs+kvm

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

Судя по поиску ЛОРа, полгода назад ты начал задавать чайниковские вопросы о zfs+kvm

Вероятно, когда я попробовал поиграться, в целом получилось, но оставалось много пробелов. Я вообще не понимал зачем нужно zfs, и почему все на него так фапают. Хотя могу сказать, что некоторые сюрпризы вылезают и сейчас (например не возможность установить cache=none и т.д.). kvm - пользуюсь уже побольше, но с live snapshot, и последующим мёрджем там было не очень. Вообще меня все эти технологии пугают, как zfs, так и всякие игры с блоками на уровне qcow. Скажем так: по моему мнению из этого всего дела получить кирпич более чем не сложно. По сему, я выбрал для себя: zfs, как вменяемое средство diff копий на резервный узел, и qcow как хранилище образов, чтобы можно было спокойно пользоваться GUI для настройки машинок, например virt-manager и создавать снепшоты на уровне ВМ, пусть и с паузой/офлайном машинки. У меня не столь огромные машинки, и пока, я смогу себе позволить роскошь сливать полные образы qcow2 куда-то ещё, раз в энное кол-во времени.

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

Блин, запускаю первый job - всё ок. Пока он выполняется, запускаю второй - второй не хочет, пишет:

Storage daemon didn't accept Device command

Нифига не пойму... Для каждого Pool, надо чтоль ещё отдельный Device создавать чтоль?

Device {
  Name = freenas
  Media Type = File
  Archive Device = /mnt/data/bareos
  LabelMedia = yes;
  Random Access = Yes;
  AutomaticMount = yes;
  RemovableMedia = no;
  AlwaysOpen = no;
}

На сей девайс создано два пула:

Pool {
  Name = prd-archivelogs-full
  Pool Type = Backup
  Recycle Oldest Volume = yes
  Purge Oldest Volume = yes
  Action On Purge = Truncate
  Maximum Volume Jobs = 1
  Maximum Volumes = 4
  Label Format = "${Job}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}"
}
Pool {
  Name = prd-offline
  Pool Type = Backup
  Recycle Oldest Volume = yes
  Purge Oldest Volume = yes
  Action On Purge = Truncate
  Maximum Volume Jobs = 1
  Maximum Volumes = 4
  Label Format = "${Job}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}"
}

Если какой-либо из job, занял один из пулов, все остальные job ожидают... Что Я Делаю Не Так?

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

У меня на каждого отдельного «клиента» бэкапа было по девайсу и несколько пулов (ежедневный\еженедельный\...), но эти пулы использовались не одновременно, ессесно.

Так что в твоем случае нужно создать по девайсу на каждый объект бэкапа.

Я говорил, што бакула это геморно и контринтуитивно кое-где)))

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

Так что в твоем случае нужно создать по девайсу на каждый объект бэкапа.

Ох... Вот и фигу. Всё создал, поведение такое же... Стопаешь одну job, начинает создаваться и писаться в другой пул, в другом девайсе... Media - у всех девайсов разное, имя различные, каталоги различные...

Блин. Ужос.

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

Или FileSets + через разные Device разрулиться... Блин.

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

Вот пример полного конфига типичного объекта бэкапа (виндовый файлсервер):

### BACKUP JOBS ###
Job {
    JobDefs = "DefaultJob"

    Name = "fileserver"
    Client = "fileserver"
    Schedule = "fileserver"
    FileSet = "fileserver"
    Storage = "fileserver"
    Pool = "fileserver-monthly"
}

### RESTORE JOBS ###
Job {
    JobDefs = "DefaultRestoreJob"

    Name = "fileserver-restore"
    Client = "fileserver"
    FileSet = "fileserver"
    Storage = "fileserver"
    Pool = "fileserver-monthly"

    Where = "E:/bacula-restore"
}

### FILESETS ###
FileSet {
    Name = "fileserver"
    Enable VSS = yes

    Include {
        Options {
            signature = SHA1
            #compression = GZIP6
            noatime = yes
            verify = pins1
        }

        File = "D:/Common"
        File = "E:/Users"
    }
}

### SCHEDULES ###
Schedule {
    Name = "fileserver"
    Run = Level="Full" Pool="fileserver-yearly" 1st sat january at 01:00
    Run = Level="Full" Pool="fileserver-monthly" 1st sat february-december at 01:00
    Run = Level="Differential" Pool="fileserver-weekly" 2nd-5th sat at 01:00
    Run = Level="Incremental" Pool="fileserver-daily" mon-fri,sun at 01:00
}

### CLIENTS ###
Client {
    Name = fileserver
    Address = 10.1.0.12
    FDPort = 9102
    Maximum Concurrent Jobs = 1
    Catalog = MyCatalog
    Password = xxxx
    File Retention = 8 months
    Job Retention = 8 months
    AutoPrune = yes
}

### STORAGES ###
Storage {
    Name = "fileserver"
    Address = 10.1.0.246
    Maximum Concurrent Jobs = 1
    SDPort = 9103
    Password = xxx
    Device = "fileserver"
    Media Type = File7
    Heartbeat Interval = 60
}

### STORAGE POOLS ###
Pool {
    Name = "fileserver-daily"
    Pool Type = Backup
    Maximum Volume Jobs = 1
    Recycle = yes
    Purge Oldest Volume = yes
    AutoPrune = yes
    Label Format = "${Client}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-daily"
    Maximum Volumes = 16
    Volume Retention = 14 days
}

Pool {
    Name = "fileserver-weekly"
    Pool Type = Backup
    Maximum Volume Jobs = 1
    Recycle = yes
    Purge Oldest Volume = yes
    AutoPrune = yes
    Label Format = "${Client}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-weekly"
    Maximum Volumes = 5
    Volume Retention = 33 days
}

Pool {
    Name = "fileserver-monthly"
    Pool Type = Backup
    Maximum Volume Jobs = 1
    Recycle = yes
    Purge Oldest Volume = yes
    AutoPrune = yes
    Label Format = "${Client}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-monthly"
    Maximum Volumes = 2
    Volume Retention = 59 days
}

Pool {
    Name = "fileserver-yearly"
    Pool Type = Backup
    Maximum Volume Jobs = 1
    Recycle = yes
    Purge Oldest Volume = yes
    AutoPrune = yes
    Label Format = "${Client}-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-yearly"
    Maximum Volumes = 2
    Volume Retention = 180 days
}

И его девайс из storage daemon:

Storage {
    Name = backup-sd
    SDPort = 9103
    WorkingDirectory = "/var/lib/bacula"
    Pid Directory = "/var/run"
    Maximum Concurrent Jobs = 10
    Heartbeat Interval = 60
}

...

Device {
    Name = "fileserver"
    Media Type = File7
    Archive Device = "/mnt/nas/fileserver"
    LabelMedia = yes
    Random Access = yes
    AutomaticMount = yes
    RemovableMedia = no
    AlwaysOpen = no
}

В таком виде оно работало параллельно. Возможно тебе нужно подкрутить «Maximum Concurrent Jobs» в storage daemon или ещё где.

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