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

Настройка производительности файлового сервера Windows

Мне нужно ваше мнение и советы / предложения по оптимизации производительности нового файлового сервера Windows, который я создаю. Я унаследовал сервер хранения Dell NF500 (в основном Dell 2950 с ОС Windows 2k3 Storage Server). Он имеет PERC 6i с кэш-памятью BBU 256 МБ, 6 дисками SATA по 750 ГБ и системной памятью 4 ГБ. Я думаю, что выберу RAID6, так как боюсь потерять второй диск во время долгой перестройки, если том RAID6 испортится. Том RAID6 будет использовать 5x дисков с 1x диском в качестве горячего резерва, да, мы супер параноики, но также следуем нашему стандарту, что все серверы имеют горячее резервирование.

С учетом сказанного, я хотел бы узнать ваше мнение о других советах и ​​предложениях по оптимизации производительности. Он будет служить файловым сервером (произвольная запись / запись и размеры файлов, как правило, небольшие, но есть и большие) для клиентов Windows, Mac и Linux через SMB / CIFS / NFS.

Заранее спасибо. Я специалист по маршрутизаторам / коммутаторам / прошивкам, так что для меня все это немного в новинку. С.

Дисковая подсистема: Вот статья Microsoft о выравнивании разделов в SQL Server 2008: http://msdn.microsoft.com/en-us/library/dd758814.aspx

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

NTFS:

Вы можете отключить отметку времени последнего доступа в NTFS с помощью:

fsutil behavior set disablelastaccess 1

Вы можете отключить создание коротких имен файлов (если у вас нет приложений, которые в этом нуждаются) с помощью:

fsutil behavior set disable8dot3 1

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

Существует теория, что большинство операций чтения являются последовательными, поэтому размер полосы (который обычно является минимальным считыванием RAID-контроллера) должен быть кратным размеру кластера. Это зависит от конкретной рабочей нагрузки сервера, и вам нужно измерить ее, чтобы знать наверняка. Я бы оставил их такими же.

Если вы собираетесь иметь большое количество небольших файлов, вы можете начать с большего резерва для главной файловой таблицы NTFS (MFT), чтобы предотвратить будущую фрагментацию MFT. Помимо упомянутой выше команды fsutil, в этом документе описывается параметр «Зона MFT»: http://technet.microsoft.com/en-us/library/cc785435(WS.10).aspx По сути, вы хотите зарезервировать для MFT столько дискового пространства, сколько считаете нужным, исходя из прогнозируемого количества файлов, которые у вас будут на томе, чтобы попытаться предотвратить фрагментацию MFT.

Общее руководство от Microsoft по оптимизации производительности NTFS доступно здесь: http://technet.microsoft.com/en-us/library/cc767961.aspx Это старый документ, но, тем не менее, он дает приличный фон. Не обязательно пробовать какие-либо «технические штучки», которые в нем говорится, но извлеките из этого концепцию.

Макет:

У вас будут религиозные споры с людьми по поводу разделения ОС и данных. Для этого конкретного приложения я бы, вероятно, свалил все в один раздел. Кто-нибудь подойдет и скажет вам, что я неправ. Вы можете решить сами. Я не вижу логической причины «заставлять работать» в будущем, когда раздел ОС заполняется. Поскольку они не являются отдельными томами RAID, разделение ОС и данных на разделы не дает преимущества в производительности. (Было бы совсем другое дело, если бы это были разные шпиндели ...)

Теневые копии:

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

RAID 6 будет несколько ухудшать чтение ввода-вывода по сравнению с другими вариантами RAID в этой настройке, и это будет очень жестко с точки зрения ввода-вывода записи. Если вам не обязательно иметь все пространство, я бы посоветовал вам подумать о RAID 10. Вы потеряете 750 ГБ по сравнению с RAID 6 в вашей системе, но разница в производительности сделает все остальные настройки производительности, которые вы пытаетесь сделать, бледнеют. Выравнивание разделов, сопоставление размеров полос с размером блока файловой системы и изменение таких вещей, как время последнего доступа, которое предлагает Эван, - отличные предложения, которые улучшат пропускную способность на 30% или более в целом. RAID 10 будет как минимум на 100% быстрее для чтения и записи, а время его восстановления будет меньше, чем у RAID 5 или 6.

RAID 10 - 4 диска с 2 горячими резервами. Эффективная емкость 1500 ГБ. Длительное случайное чтение будет примерно в 4 раза выше, чем у вашего базового диска. Длительная произвольная запись будет (до) вдвое превышать IOPS записи по сравнению с вашим базовым приводом. Время восстановления - 4-6 часов в такой системе, как ваша, в режиме ожидания, может быть вдвое больше при средней нагрузке.

RAID 5 - 5 дисков с 1 горячим резервом. Эффективная емкость 3000 ГБ. Продолжительное случайное чтение будет примерно в 4 раза выше, чем у вашего базового диска. Устойчивая произвольная запись будет ~ 1x IOPS записи одного базового диска (при условии, что для каждой записи IO требуется 2 чтения и 2 записи). Время восстановления - день + время простоя, дни при обычной нагрузке.

RAID 6 - 5 дисков с 1 горячим резервом. Эффективная емкость 2250 ГБ. Длительное случайное чтение будет примерно в 3 раза больше, чем у базового диска. Устойчивая произвольная запись будет составлять около 66% операций ввода-вывода в секунду при записи одного базового диска (для каждого ввода-вывода записи требуется 3 чтения и 3 записи). Время восстановления - дни, когда система относительно простаивает, а при обычной нагрузке - неделя.

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

WSS уже выполняет ряд функций, предлагаемых по умолчанию: См. Блог о Windows Storage Server

«Оптимизация производительности файлового сервера. В Windows Server 2003 есть некоторые настройки, которые ускоряют сетевой трафик и операции NAS, такие как удаление псевдонимов файловой системы, отключение создания имени 8.3 и установка частоты TCP ACK для лучшего использования размера сетевого кадра и Для получения дополнительной информации см. технический документ по настройке производительности. OEM-производители также могут улучшить свою производительность, установив сродство прерывания для сетевых карт и убедившись, что при настройке RAID-массива учитывается правильное выравнивание дисков. из этих тем ".

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

Эван и Хелвик на высоте, поэтому я просто добавлю дополнительный ресурс. В Рекомендации по настройке производительности для Windows Server 2003 В документе рассматриваются многие аспекты и внутренние настройки, хотя, как упоминает Джим, Storage Server поставляется предварительно настроенным для оптимизации рабочей нагрузки совместного использования файлов.