07:39

Неизвестный смайлик.
[ok]

Здравствуйте.

Ситуация следующая. Есть два жестких диска. Вся информация содержится на одном, причем эта информация постоянно меняется (обновляется, удаляется, добавляется и прочее, не менее десяти раз в минуту). Нужен способ синхронизировать всю информацию с одного диска на другой, а так же как-то сделать так, чтобы в случае выхода из строя первого диска с минимальными усилиями запустить систему на втором.
Конечно можно было бы просто в автозагрузку прописать оба жестких диска, а на основном сделать какой-нибудь простенький скрипт типа Ctrl+c + Ctrl+v. Но в таком случае не совсем понятно как сделать адекватное копирование - ведь пока информация с одного диска перельется на другой, она уже по сто раз поменяется.

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

Комментарии
22.11.2010 в 07:46

Все люди делятся на две части.
Это называется RAID 1. Как сделать это, ищите в интернете.
22.11.2010 в 07:53

Все люди делятся на две части.
А если диски разные (разный объем, например), можно воспользоваться каким-нибудь backup manager'ом.
22.11.2010 в 08:48

Неизвестный смайлик.
Ок, задам вопрос по другому. Какой Raid программный или аппаратный? Если аппаратный, то лучше чтобы материнка была с поддержкой или использовать контроллеры? Если материнка, то какая лучше под это дело подойдет? Какие диски взять, с расчетом на 0,5-1тб и процесс работы, который я описал выше?
22.11.2010 в 10:16

OWLways
Не хватает входных данных. Это уже есть или только проектируется? Это сервер или домашняя файлопомойка?
Вообще х-ки оборудования в студию.
22.11.2010 в 10:47

Неизвестный смайлик.
Этого нет, но проектируется. Это почтовый сервер.
22.11.2010 в 11:09

The day that you stop running is the day that you arrive.
Я бы взял материнку от гигабайта(если не рассматривать серверные варианты) с рейдом уже на ней... но вообще возможны варианты)
22.11.2010 в 11:09

The day that you stop running is the day that you arrive.
все равно бекапиться всегда надо)
22.11.2010 в 17:04

Неизвестный смайлик.
Ок. Допустим я взял свою материнку: M4a785TD-V EVO. Как я понял рейд там строится на основе AMD SB710. Если у меня в системе будет 1 жесткий диск, 1 дисковод, и 2 ssd, которые будут подключены в raid 1, то мне нужно проделать следующие операции: Все это богатство воткнуть в материнку, выбрать там в биосе raid1 на соответствующие ssd диски, а дальше при первой перезагрузке каким-то образом настроить этот raid. По крайне мере, примерно такую информацию я нашел. Остался невыясненным вопрос - что за настройки, какие там есть, за что отвечают? Но это я думаю можно и на месте посмотреть, наверняка там все расписано, а вот что интереснее - во-первых, как он будет выполнять зеркалирование, раз в определенное время или на постоянной основе или еще как-то и, самое главное, как будет вести себя в случае отказа одного из диска? Где это прочитать можно, подскажите?
22.11.2010 в 18:35

Паломник Оптимизма!, он будет выполнять зеркалирование на аппаратном уровне постоянно. То есть без потери производительности, если интересует именно это. При записи любых данных они записываются в два потока на два диска. Это не быстрее обычной записи, но при грамотном контроллере обычно падение скорости записи малоощутимо.
В то же самое время, при raid1 в качестве бонуса получится увеличение скорости чтения данных.

Вести себя при сбое будет просто: при инициализации контроллера (после биоса) вместо двух зелёных меток (passed. working, ok или иначе) выдаст одну красную типа 'failed', вторую зелёную. Запищит неистово. При этом если в настройках выставлен режим, позволяющий downgrade, то raid1 становится raid0, и использует живой диск. Нужно будет потом вручную разобраться, перестроить зеркало и выяснить причину отказа. Некоторые контроллеры, особенно от SIS, очень любят по умолчанию ставить настройку "не делать ничего до вмешательства пользователя", что по сути, правильнее. Тогда придётся сразу заняться вопросом.

Честно говоря, вся подобная информация доступна в гугле по запросу 'что такое raid1' =)
23.11.2010 в 00:24

ಠ-ಠ
Короче, надо читать маны по соответствующему железу. Вообще, хотя raid - штука вполне стандартизированная, но реализации бывают разные. Я видел такие, которые тупо копируют один хард на другой, при этом любой из этих хардов можно было воткнуть в другую систему и загрузиться с него безо всяких рейд-контроллеров. Видел и такие, которые писали конфигурацию рейда в свой собственный nvram/eeprom - такой рейд оказывался бесполезным при смерти контроллера. В большинстве случаев хард, выдернутый из аппаратного рейда, другой системой просто не распознается нормально. Всякое бывает. Опять же, операционка не указана. За все не скажу, но под BSD советую использовать GEOM и, соответственно, gmirror. Софтверный рейд, потери производительности несущественные, харды полностью идентичны и сохраняют работоспособность при переносе в другую систему с минимальным геморроем - правкой fstab (а при использовании geom_label - вовсе без геморроя). Под линуха есть md, но его не пользовал, ничего не скажу. Под винду - хз.
23.11.2010 в 05:04

Неизвестный смайлик.
Рез Ага. Я тут побегал по интернету, нашел кучу информации, какую материнку выбрать, какой чипсет, какие диски, как все настроить чуть ли не в картинках. Я даже нашел информацию, что при использовании Intel ICH10R Intel® Matrix Storage Technology и при выходе из строя основного диска, второй диск, который абсолютно идентичный первому, нужно перевоткнуть на место первого, чтобы с него загрузится. Это, нормальное поведение? А то мне кажется полным маразмом, учитывая, что сервер может вообще в дата-центре стоять и пока к нему дойдешь пресловутые 2 часа простоя в год давно истекут. А так же я не нашел информацию, что будет если выйдет из строя не диск, а сам raid-контролер?

Black_Diver В мануале к своей материнке, я нашел только как создать этот raid, а вот вопросы, которые я озвучил выше, там почему-то не освещены.
23.11.2010 в 05:30

Неизвестный смайлик.
И кстати, я тут не совсем понял. Если использовать материнку с каким-то встроенным решением, например, тот же ICH10R, то при его настройке из биоса это будет аппаратный raid? А то я видел только, что настраивают с помощью Intel Matrix Storage, да еще и из вины, а это, я так понимаю, программный raid?
Или я что-то не так понял?
23.11.2010 в 06:27

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

И что касается серверных решений, речь идёт не о встроенном контроллере в материнку, а об отдельном raid-контроллере серьёзного уровня. Как пример, без привязки к отдельной фирме, идём на Яндекс.Маркет, вводим lsi raid в поиск, смотрим на цены и думаем о разнице относительно 15долларового чипа ich10. Зато эти контроллеры при сбое в состоянии обрабатывать не только сценарий "я не запущусь, а подожду, пока переткнут харды мне".
Для дома, для семьи такое решение покатит, но для сервера - забыть навеки о встроенных контроллерах, если не валяется в углу очередной proliant от hp со встроенным sas-raid'ом.
Таким образом, для бюджетного рейда в материнке поведение "ждать вмешательства" достаточно нормально (правда, я не очень верю в невозможность его смены на другое).
23.11.2010 в 11:22

Неизвестный смайлик.
Странно, мне казалось, что встроенный raid лучше по производительности, хотя допускаю, что серьезные решения должны выигрывать по функциональности. Речь идет про виндовый сервер. 2003 или 2008.
Притом, при выходе из строя контроллера, нужно заменять же его, просто так диск не перевоткнешь как raid 0. Или можно?
23.11.2010 в 11:44

при выходе из строя контроллера
Как раз в этом случае возможно перевоткнуть аппаратный внешний контроллер (плата расширения), но невозможно ничего сделать с аппаратным встроенным (в южный мост обычно, типа ich10r).
С виндовым сервером - только аппаратный raid1, реализация софтверного зеркала по неясным причинам кривая.
И как раз это в raid1 можно перевоткнуть хард, в raid0 так не получится.
Общая схема в упрощённом виде: hdd fail -> beep -> using hotspare / auto-downgrade (no spare) -> log. И replace dead -> rebuild -> hotspare autoerase до следующего сбоя.
Кстати, откуда напоминание о том, что на очень удалённом сервере иметь хотя бы один пустой и готовый к работе. Вообще это критично для raid1 в меньшей мере, чем для других, но хорошим тоном будет не скупиться.

Ну а выход из строя контроллера под сервер вещь настолько редкая, что мне встречалась только в рассказах, на практике ни один не отказывал, даже в аномальную летнюю жару ;-)

P.S> en.wikipedia.org/wiki/RAID - тут же всё это написано.
23.11.2010 в 12:31

ಠ-ಠ
Как раз в этом случае возможно перевоткнуть аппаратный внешний контроллер (плата расширения)
Только, как я уже сказал, контроллеры бывают разные, поэтому контроллер понадобится точно такой же, желательно - вплоть до версии фирмвары, иначе при пересборке рейда можно неприятно удивиться.

Я все-таки за BSD+gmirror. А, винды... Тогда хз. От LSI Logic что-нибудь (хотя я припоминаю случай, когда один из их контроллеров отказывался нормально инициализироваться при наличии подключения на RJ45-serial - для серверного решения это, мягко говоря, странно).
23.11.2010 в 15:24

Неизвестный смайлик.
Рез ага, ну, общая картина мне ясна. Спасибо за ответ )