Назад | Перейти на главную страницу

RAID для сервера SCM

Мне нужно купить / построить сервер для размещения нашего репозитория Subversion (к сведению: я разработчик / не ИТ-специалист). Очевидно, это критически важно и требует высокой производительности операций ввода-вывода в сети и на дисках. Наш репозиторий в настоящее время составляет 5 ГБ, и мы поддерживаем 20 разработчиков. Сервером должна была быть Windows 2008, но Linux - вариант, если это убедительное и более простое / легкое решение.

РАЗЪЯСНЕНИЯ: Репозиторий 5 ГБ - это примерно 2 ГБ источника, и да, он должен обрабатывать 20 разработчиков, выполняющих несколько небольших коммитов, журналов, историй и проверок в течение всего дня. (Как мне прояснить исходные коммиты? Несколько файлов C # тут и там, с несколькими строками изменений? Довольно стандартный материал.)

ОБНОВИТЬ: Budget: Я надеялся обойтись с 2000 долларов или меньше, только потому, что я не думаю, что нам нужно тратить так много. Однако если для этого потребуется 5000 долларов, то это то, что нужно. Это наша ЖИЗНЬ. Но если 2500 долларов получают 100%, а 5000 долларов - 103%, это не стоит дополнительных денег.

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

Я не думаю, что мне нужен (или хочу) RAID 5, поскольку стоимость восстановления кажется высокой / сложной.

Как минимум, я мог бы использовать RAID 1 и иметь резервный диск (явно не из той же партии или даже производителя ;-)

RAID 1 + 0 может быть быстрее? Стоит ли сложность?

Может ли кто-нибудь указать мне на некоторые предложения и передовые методы управления диском RAID, в частности, какое бы решение ни предлагалось, как мне управлять отказом диска. Есть ли программное обеспечение, которое может уведомить меня (электронная почта / пейджер), если диск выходит из строя? Программное обеспечение, которое предотвратит запись на диск в этот момент?

О чем еще мне нужно подумать?

ОБНОВЛЕНИЕ: мой вопрос таков: Каковы преимущества между аппаратным RAID и программным RAID Windows Server 2008 для RAID 1 + 0 относительно скорости, управления (мертвого диска) и предупреждений о сбое диска.

Спасибо

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

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

Я не думаю, что мне нужен (или хочу) RAID 5, поскольку стоимость восстановления кажется высокой / сложной.

Как правило, RAID 5 и 6 - вполне допустимые варианты, затраты на восстановление возникают редко. Хуже того, что производительность записи RAID 5/6 может быть довольно низким.

Я мог бы использовать RAID 1

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

RAID 1 + 0 может быть быстрее? Стоит ли сложность?

Да, RAID 1 + 0 быстрее, и не имеет значительной дополнительной сложности - это один из наиболее часто используемых уровней RAID и все хорошие контроллеры имеют зрелую реализацию этого. В идеальном мире 4-дисковый RAID 1 + 0 может иметь в 4 раза большую производительность чтения и в 2 раза производительность записи по сравнению с одним диском. Одна вещь, однако, увеличивается, поскольку вам нужно как минимум 4 диска, а эффективный размер хранилища по отношению к количеству используемых дисков не слишком велик.

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

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

3 совета:

  • Измерьте текущий шаблон дискового ввода-вывода и потребности в производительности на существующем сервере (perfmon и т. Д.). Не переусердствуйте с RAID, если ваш фактический дисковый ввод-вывод не так высок. 20 пользователей - это немного, но, конечно, Subversion может потребоваться больше дисковых операций ввода-вывода, чем можно было бы подумать.
  • Покупайте серверы известных производителей (Dell, HP, IBM и т. Д.), Не отказывайтесь. Это почти никогда не стоит того для общего стандартного сервера.
  • Помните, RAID! = Резервное копирование. Вы, кажется, немного зациклились на сценарии отказа диска - RAID обеспечивает более длительное время безотказной работы сервера и больше операций ввода-вывода, но вам все равно нужны надлежащие резервные копии.

Я бы порекомендовал аппаратный RAID 1 + 0. Это даст вам хорошую производительность и избыточность / отказоустойчивость за счет немного большей стоимости (требуется больше дисков по сравнению с RAID 5).

Зеркальный том RAID имеет 2 копии всех данных, поэтому в случае сбоя диска у вас все равно будет доступная копия. Вам не нужно блокировать доступ к диску при сбое диска. Вы можете сконфигурировать свою систему с дисками «горячего резерва», которые не будут использоваться до тех пор, пока не произойдет сбой диска, а затем ожить и автоматически заменить вышедший из строя диск. Это должно дать вам полнофункциональный том RAID, который сможет выдержать отказ другого диска и даст вам достаточно времени для замены отказавшего диска. Чтобы том RAID 1 + 0 полностью отказал, вам потребуется несколько отказов дисков в течение короткого промежутка времени (что обычно бывает довольно редко).

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

Большая часть моего опыта работы с серверами связана с использованием продуктов HP, поэтому я в основном говорю с этой точки зрения (хотя большинство других брендов делают нечто подобное).

Ваш репозиторий составляет 5 ГБ, но какова частота ваших коммитов / обновлений и их приблизительный размер?

На сколько денег мы здесь работаем? Это действительно самый важный первый вопрос, который вы должны себе задать.

Я думаю, идеальным вариантом будет RAID 1 или 1 + 0 с 1 или 2 горячими резервами. Таким образом, если диск все-таки выйдет из строя, рейд-карта автоматически начнет восстановление RAID с помощью диска горячего резерва. Затем вы просто купите новый диск, соответствующий тем, что у вас есть, и замените им старый.

Я не вижу из вашего описания, где может возникнуть высокая нагрузка на сеть или диск IO. 5 ГБ - это очень маленький репозиторий для SCM, файлы C # имеют размер всего несколько КБ, а для разработчиков 20 вообще не проблема. Поэтому вам следует сконцентрироваться на надежности вашей установки, поэтому сервер с резервными источниками питания и RAID 1 должен подойти. Ваша главная задача - это аварийное восстановление, но, как вы, вероятно, знаете, установка RAID не купит вас.