Редактирование: UNИX, весна 2008, 06 семинар (от 18 июля)

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 1: Строка 1:
-
= Организация системы резервного копирования =
+
Бэкапы
* '''Докладчик:''' Илья Слепнёв
* '''Докладчик:''' Илья Слепнёв
-
* '''Информация семинаре:''' http://uneex.ru/Events/Backups
 
* '''Аудиозапись:''' http://esyr.org/lections/audio/uneex_2008_summer/uneex_seminar_08_07_18.ogg
* '''Аудиозапись:''' http://esyr.org/lections/audio/uneex_2008_summer/uneex_seminar_08_07_18.ogg
-
* '''Фотографии:''' http://esyr.org/photo/uneex/080718/
 
-
Почему важно об этом говорить, почему нельзя просто написать в cron'е скрипт, который будет копировать всё вы одну большую помойку, из который всё потом будем доставать. Да, если машин немного (50) и их количество не увеличивается, то да, так можно делать.
+
Пчпму важно об этом говорить, почму нельзя просто написать в кроне скрипт, который будет копировать всё вы одну большую помойку, из котороый всё потом будем доставать. Да, если машин немнг (50) и их количесвто не увеличивается, то да, так можно делать.
-
Когда данных много, то возникают задачи переноса данных. Если есть несколько датацентров, то есть желание, чтобы бэкапы были в разных датацентрах. Если есть какие-то скрипты, то при переезде задействуются два человека: ответственный за скрипты и тот, кто переводит сервер. Поэтому возникла задача, чтобы в скриптах просто указывается адрес, и дальше всё хорошо.
+
Когда даннфых много, то возн. задачи переноса. Если есть неск. датацентров, то есть желание, чтобы ьэкапы были в разных датацентрах. Если есть какие-то скрипты, то при переезде задействуются два человека: тветственного за скрипты и того, кто переводит сервер. Поэтому взникла задача, чтобы в скриптах просто указывается адрес, и дальше всё хорошо.
-
Что такое всё хорошо?
+
 
-
* Надо следить, что всё бэкапится правильно
+
Чт такое всё хорошо?
-
* Следить, чтобы это было в разных датацентрах
+
* Надо следить,Ю что всё бэкапится правильн
 +
* Следить, чтобы это было в разных датацентрах
В итоге овзн. такая полуэнтерпрай система, из известных Аманда и Бакула. Дальше будет рассказ о бакуле.
В итоге овзн. такая полуэнтерпрай система, из известных Аманда и Бакула. Дальше будет рассказ о бакуле.
Строка 20: Строка 19:
Что такое бэкап, зачем он нужен и какие цели.
Что такое бэкап, зачем он нужен и какие цели.
-
[[Изображение:Uneex seminar 08 07 18 file dump architecture.png|thumb|240px|Файловая помойка]]
 
Не совсем понр. фраза по поводу самписных скриптов. Потому что для клиентв нек-рых даатцентров предв. решение: вместо стороннего ПО предл. большой зашаренный диск, который всем доступен, бъём с н-ным количеством терабайт. Для системного адм. одного сервера на порядок проще взять и бъед rsync+logrotate или орг. дампы, которые туда будут выливаться. Причём это прще и для адм. бэкапа этого датацентра. поск. ему достаточно обесп. квоту и доступ к ресурсу. Например, такая схема была у голдентелекома. Если взять орейлевскую книжку, то там начало идёт с такой схемы, поск. она проста и решает 90 процентов. На ст. случаев выявляется много инт. проблем. В бакуле проблема следующая: сделать бэкап прблемы не составляет. Осн. проблема --- эти данные восст. в нужный момент и в нужное время. Один из моментов, связанных с бакулой --- в бакуле на этапе восст. бэкап восст. с теми же правами и в тоже окруж, откуда он брался. Если польз. полностью утерял данные, или проихошла потеря БД бакуловской, то пароли и зашифр. данные предст. подв. камень. Простая вещь --- как обезопасить пользвателя, чтбы сисадмин бэкапного сервера не мог данные прочитать. В бакуле это предусм., но при потере всех данных возн. проблема.
Не совсем понр. фраза по поводу самписных скриптов. Потому что для клиентв нек-рых даатцентров предв. решение: вместо стороннего ПО предл. большой зашаренный диск, который всем доступен, бъём с н-ным количеством терабайт. Для системного адм. одного сервера на порядок проще взять и бъед rsync+logrotate или орг. дампы, которые туда будут выливаться. Причём это прще и для адм. бэкапа этого датацентра. поск. ему достаточно обесп. квоту и доступ к ресурсу. Например, такая схема была у голдентелекома. Если взять орейлевскую книжку, то там начало идёт с такой схемы, поск. она проста и решает 90 процентов. На ст. случаев выявляется много инт. проблем. В бакуле проблема следующая: сделать бэкап прблемы не составляет. Осн. проблема --- эти данные восст. в нужный момент и в нужное время. Один из моментов, связанных с бакулой --- в бакуле на этапе восст. бэкап восст. с теми же правами и в тоже окруж, откуда он брался. Если польз. полностью утерял данные, или проихошла потеря БД бакуловской, то пароли и зашифр. данные предст. подв. камень. Простая вещь --- как обезопасить пользвателя, чтбы сисадмин бэкапного сервера не мог данные прочитать. В бакуле это предусм., но при потере всех данных возн. проблема.
Строка 27: Строка 25:
В случае, если кончается мест на сторадж-демоне, то ...
В случае, если кончается мест на сторадж-демоне, то ...
-
[[Изображение:Uneex seminar 08 07 18 bacula architrecture.png|thumb|240px|Архитектура Bacula]]
 
Что из себя предст. бакула: есть директори, есть файл-демоны, есть сторадж. В директори хранится то, что и как бэкапить, все настрйки. Когд приходит время чт-то забэкапить, он созд.э запись в sql-таблице, он собщ. файл-демону, который имеет только адрес директора и пароль, директр даёт ему адрес сторджа, после чего файл-демон открывает сокет и льёт сжатый поток. В итоге на сторадже данные лежат.
Что из себя предст. бакула: есть директори, есть файл-демоны, есть сторадж. В директори хранится то, что и как бэкапить, все настрйки. Когд приходит время чт-то забэкапить, он созд.э запись в sql-таблице, он собщ. файл-демону, который имеет только адрес директора и пароль, директр даёт ему адрес сторджа, после чего файл-демон открывает сокет и льёт сжатый поток. В итоге на сторадже данные лежат.
При этом что важно: эти бэкапы лежат в виде томов. Это всё пошло с ленточных времён, поск. когда том заполнился, его меняют.
При этом что важно: эти бэкапы лежат в виде томов. Это всё пошло с ленточных времён, поск. когда том заполнился, его меняют.
-
[[Изображение:Uneex seminar 08 07 18 full incremental backup.png|thumb|240px|Полный и инкрементный бэкап]]
 
Есть у каждого пользователя хранилища, пользователь с айлами рабтает. Какие-то файлы меняются, какие-то нет. Но польз. всегда инт. сохр. данных. Если файл испортился, то должна быть служба, куда можн прити и запросить файл. Есть схема полного бэкапа, когда бэкапится всё не задумываясь. Есть условно 4 среза и говрится, что бэкап сохр. на 4 дня. Понятно, что 4 дня мало и отжирает это места много. Кроме того, для малоисп. данных обнруживается, что они испорчены, небыстро.
Есть у каждого пользователя хранилища, пользователь с айлами рабтает. Какие-то файлы меняются, какие-то нет. Но польз. всегда инт. сохр. данных. Если файл испортился, то должна быть служба, куда можн прити и запросить файл. Есть схема полного бэкапа, когда бэкапится всё не задумываясь. Есть условно 4 среза и говрится, что бэкап сохр. на 4 дня. Понятно, что 4 дня мало и отжирает это места много. Кроме того, для малоисп. данных обнруживается, что они испорчены, небыстро.
Есть схема инкр. бэкапа, которая исп. команду dump -loop, кторый помечает ыайлы как архивные и бэкапит птом только изм. Вторая схема --- rsync, и копируется только новые файлы. В этом случае есть фуллбэкап, и есть инкр. бэкапы, места надо меньше, глубину можно делать больше. Но тут возн. проблема, чо когда нам нужен файл, то надо просмотреть много бэкапов, чтбы получить нужную ревизию. Для лент очень плохо.
Есть схема инкр. бэкапа, которая исп. команду dump -loop, кторый помечает ыайлы как архивные и бэкапит птом только изм. Вторая схема --- rsync, и копируется только новые файлы. В этом случае есть фуллбэкап, и есть инкр. бэкапы, места надо меньше, глубину можно делать больше. Но тут возн. проблема, чо когда нам нужен файл, то надо просмотреть много бэкапов, чтбы получить нужную ревизию. Для лент очень плохо.
-
[[Изображение:Uneex seminar 08 07 18 hanoi tower backup architecture.png|thumb|240px|Схема бэкапа "Ханойская башня"]]
 
Дальше начинется лирика по поводу минимизации количества исп. томов, осн --- ханйская башня.
Дальше начинется лирика по поводу минимизации количества исп. томов, осн --- ханйская башня.
Строка 46: Строка 41:
Про аманду.
Про аманду.
-
[[Изображение:Uneex seminar 08 07 18 client server.png|thumb|240px|Клиент-серверная архитектура]]
 
После тго, как определились с бэкапом: расписание, чт бэкапить, реглмаент, посчитали сервера... И вот если они ломанулись все в час ночи, то стало плохо, и это реальная проблема файлопомойки. Именно оттуда пошёл переход к центр. схеме бэкапа, когда это перевдится на классич. схему клиент-сервер. И первой имплементацией этого была аманда. Она сост. из клиента на сервере, и сервера, кторый знает всех клиентов и бэкапит в соотв. место. И бакул очень сильно перекрывалась с амандой, пока они не выделили стораджи. Эта схема чем хороша и плоха: мы сразу ушли на центр. систему упр. бэкапов, можно управлять нагр. канала, орг. смену носителей... Одн. с этим возн. две проблемы. Первая проблема организационная: если мне как клиеннту надо восст. файл, то я обр. к адм. сервера "дай мне этот файл". Суть закл. в тм, что за восст. файла тв. админ сервера. Клиент потерял возм. взять нужный файл нужнй даты. Ммент второй: если не хватает стораджа, чего делать? Здесь взн. проблема, поск. настр. клиеннта и сервера взимосвязаны. И третья проблема: ... rmt+mt. Здесь есть одн проблема: сами ленты явл. однопоточными, и это знчит, что если один сервер нчинает наливать данные, то он начинет наливать на дну. Соотв, для ускорения либо надо их лить в неск. лент. При этом разносится хрнилище и по объёму, и по скрости. Но каждая настройки этой связи делается ручками.
После тго, как определились с бэкапом: расписание, чт бэкапить, реглмаент, посчитали сервера... И вот если они ломанулись все в час ночи, то стало плохо, и это реальная проблема файлопомойки. Именно оттуда пошёл переход к центр. схеме бэкапа, когда это перевдится на классич. схему клиент-сервер. И первой имплементацией этого была аманда. Она сост. из клиента на сервере, и сервера, кторый знает всех клиентов и бэкапит в соотв. место. И бакул очень сильно перекрывалась с амандой, пока они не выделили стораджи. Эта схема чем хороша и плоха: мы сразу ушли на центр. систему упр. бэкапов, можно управлять нагр. канала, орг. смену носителей... Одн. с этим возн. две проблемы. Первая проблема организационная: если мне как клиеннту надо восст. файл, то я обр. к адм. сервера "дай мне этот файл". Суть закл. в тм, что за восст. файла тв. админ сервера. Клиент потерял возм. взять нужный файл нужнй даты. Ммент второй: если не хватает стораджа, чего делать? Здесь взн. проблема, поск. настр. клиеннта и сервера взимосвязаны. И третья проблема: ... rmt+mt. Здесь есть одн проблема: сами ленты явл. однопоточными, и это знчит, что если один сервер нчинает наливать данные, то он начинет наливать на дну. Соотв, для ускорения либо надо их лить в неск. лент. При этом разносится хрнилище и по объёму, и по скрости. Но каждая настройки этой связи делается ручками.
Строка 69: Строка 63:
Собираются переходить на другую схему, когда ...
Собираются переходить на другую схему, когда ...
-
[[Изображение:Uneex seminar 08 07 18 bacula bugs.png|thumb|240px|Проблемы с Bacula]]
 
На сторадж-демонах есть тома,раньше это были ленты, сейчас просто файлы, и определяется политика того, сколько таких файлов, скольк в них файлов, какой размер, и как происходит ротация. К схеме бэкапа надо подходить внимательно. Была токая дасадная ошибка: фуллбэкап начинался на начале стораджа, и там уже есть предыдущий бэкап, и когда делл следующий и не сделался, то нет ни придыдущего фуллбэкапа, ни текщего. Для решения этого делали отдельные сторадж-демоны для фулл и инкрементал бэкапов, и сторадж фуллбэкапов имел место на три-четыре фуллбэкапа, и при сбе фуллбэкапа мжно восст. файл двухнедельной давности, что лучше, чем ничего. Второе: проблема была связана с тем, что если при конце места для бэкапов, то начинал писать в нпчало и затирался фуллбэкап. Есть ещё один момент: под бакулу файлдемон есть под windows, есть одна прблема, которую в 2.4 не устранили, говорят, что появляется она в win-клиенте, дело в тм, что имена в utf-8, пэтому база должна быть в utf-8, и есть проблема с mysql, поск. подкл. с кодировкой по умолч.,
На сторадж-демонах есть тома,раньше это были ленты, сейчас просто файлы, и определяется политика того, сколько таких файлов, скольк в них файлов, какой размер, и как происходит ротация. К схеме бэкапа надо подходить внимательно. Была токая дасадная ошибка: фуллбэкап начинался на начале стораджа, и там уже есть предыдущий бэкап, и когда делл следующий и не сделался, то нет ни придыдущего фуллбэкапа, ни текщего. Для решения этого делали отдельные сторадж-демоны для фулл и инкрементал бэкапов, и сторадж фуллбэкапов имел место на три-четыре фуллбэкапа, и при сбе фуллбэкапа мжно восст. файл двухнедельной давности, что лучше, чем ничего. Второе: проблема была связана с тем, что если при конце места для бэкапов, то начинал писать в нпчало и затирался фуллбэкап. Есть ещё один момент: под бакулу файлдемон есть под windows, есть одна прблема, которую в 2.4 не устранили, говорят, что появляется она в win-клиенте, дело в тм, что имена в utf-8, пэтому база должна быть в utf-8, и есть проблема с mysql, поск. подкл. с кодировкой по умолч.,
Строка 94: Строка 87:
Если мы говорим о OS-продукте бэкапа, то бакула самая достойная. Единственное --- осторожность с скриптами before и after, и вторе --- кириллические имена файлов.
Если мы говорим о OS-продукте бэкапа, то бакула самая достойная. Единственное --- осторожность с скриптами before и after, и вторе --- кириллические имена файлов.
-
[[Изображение:Uneex seminar 08 07 18 ntp architecture.png|thumb|240px]]
 
Ещё одна мелочь, за кторой надо следить --- время на дирекоре, поск. если оно сбивается, то у файл-демонов оно при коннекте будет сконф. по директору. В зщиту бакулы --- не тльк она так обх. со временем.
Ещё одна мелочь, за кторой надо следить --- время на дирекоре, поск. если оно сбивается, то у файл-демонов оно при коннекте будет сконф. по директору. В зщиту бакулы --- не тльк она так обх. со временем.
{{UNИX, весна 2008}}
{{UNИX, весна 2008}}
{{Lection-stub}}
{{Lection-stub}}

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Личные инструменты
Разделы