Очень важно не пропустить тот момент, когда надежность серверного центра корпорации становится чрезвычайно критична не только для развития, но и для выживания бизнеса вообще.
Очень важно не пропустить тот момент, когда надежность серверного центра корпорации становится чрезвычайно критична не только для развития, но и для выживания бизнеса вообще.
В последние годы наблюдается опережающий рост рынка продаж серверов на платформе x86. Функции, возлагаемые на серверный центр в корпорациях, расширились многократно: от служб файлов, печати, корпоративной почты в недавнем прошлом до серверов службы каталогов, систем антивирусной защиты и централизованного распространения обновлений ПО, выдачи цифровых сертификатов, корпоративной информационной системы и серверов терминального доступа.
По нашему опыту, развитие информационной системы предприятия обычно начинается с приобретения первого сервера. После того, как возможности и преимущества его использования становятся очевидны, закупается второй, третий и так далее — по мере развития корпоративной сети. На первом этапе в качестве серверов используются просто мощные рабочие станции, затем приходит время закупки систем с двумя, четырьмя и более процессорами, спроектированными в расчете на работу именно в качестве серверов.
Дальнейшее развитие информационной системы предприятия может потребовать создания серверной фермы, обеспечивающей распределенное выполнение приложений, применения кластерных решений, вынесения дисковых подсистем из серверов во внешние защищенные стойки и, как вариант, использования терминального доступа. Требования к надежности работы серверов при этом возрастают многократно, объемы инвестиций, необходимых для создания по-настоящему защищенных и надежных решений такого рода — тоже.
Ферма
Первый шаг к ее созданию (после того, как на предприятии появилось более одного сервера) — это выделение специального помещения под серверную комнату. Корпуса помещаются в стойки с гарантированным электропитанием и принудительной вентиляцией.
К слову сказать, очень редко приходилось видеть по-настоящему гарантированное электропитание, ведь оно подразумевает не просто установку источников бесперебойного электропитания нужной мощности, но также подвод к зданию кабелей от двух независимых подстанций, которые заведомо не прекращают подачу электроэнергии одновременно. В еще более критических случаях можно использовать автономную энергетическую установку в виде расположенного в подвале дизель-генератора.
Другим важным компонентом «живучести» серверного центра является кондиционирование помещений с обязательной вытяжкой воздуха наружу. Для защиты от «человеческого фактора» (как известно, от 70 до 90% взлома компьютерных систем происходит «изнутри» при явной или неявной помощи собственных сотрудников фирмы) необходимо строго ограничить доступ персонала в помещение серверной комнаты, организовать обязательную регистрацию в специальном журнале всех посещений сотрудников с указанием причин.
Наличие более чем одного сервера требует и централизованной системы резервного копирования. Если мы не используем внешних дисковых систем, в которые подобная функциональность зачастую встроена изначально (об этом дальше), то необходимо реализовать собственную схему. Подойдет отдельный сервер с подключенным к нему ленточным накопителем (стримером), который автоматически копирует информацию с серверов в период минимальной загрузки серверного центра. Это мероприятие следует рассматривать скорее как организационное, так как с технической точки зрения процедура довольно проста: при правильной постановке дела, к примеру, на полочке у системного администратора (или в сейфе у ИТ-руководителя) лежит пять стримерных ленточек с резервной копией за последние пять дней работы серверов, и одна, побольше, — недельной давности.
При наличии нескольких серверов в системе важным моментом является возможность их удаленного администрирования и диагностики. На серверных платформах Intel для этого используются как встроенные аппаратные средства (фактически они представляют собой отдельный компьютер, функционирующий независимо от основного и даже тогда, когда основной выключен), так и специализированное программное обеспечение, такое, например, как Microsoft Systems Management Server, HP OpenView, IBM Tivoli и др.
Развитие
Планируя расширение серверного центра, можно идти двумя путями: либо закупать мощную «универсальную» систему и все задачи «вешать» на нее, либо развертывать несколько специализированных серверов, каждый из которых выполняет набор близких функций (скажем, функции почты, Web-узла и Internet-прокси — на одном сервере, контроллера домена и центра сертификации — на другом, файлового хранилища и службы резервного копирования — на третьем и т. д.).
Проблема состоит в том, что если серверы начального уровня идут по ценам сразу вслед за «персоналками» (от 1000 с небольшим долларов за однопроцессорную модель до примерно 5-7 тыс. долл. за максимально «навороченную» двухпроцессорную), то система на четырех процессорах обойдется уже не менее 10 тыс. долларов, и путем небольших дополнительных затрат перейти на следующую ступеньку в производительности не получится.
Тем не менее переход от двухпроцессорных систем к четырехпроцессорным позволяет поднять число обслуживаемых пользователей от уровня «менее ста» до двух-трех сотен. С точки зрения бизнеса появление на предприятии такого количества пользователей означает новый, качественно иной уровень развития компании и требует соответствующих вложений в серверный центр.
Повышение готовности
Первый шаг на пути ко «многим девяткам» (как известно, отказоустойчивость системы обычно измеряют в относительном времени простоя 0,9999...) — это дублирование компонентов отдельного сервера. Для сведения к нулю последствий отказа или сбоя отдельных подсистем в ПК-серверах применяются разнообразные технологии. К ним относятся, в частности, модули памяти с коррекцией ошибок (ECC), RAID-подсистемы и дисковые массивы с возможностью «горячей замены» (без выключения и перезагрузки системы), серверные архитектуры, допускающие «горячую замену» иных критически важных компонентов (вентиляторов, блоков питания, адаптеров стандарта PCI-X и др.). Дублирование и «горячая замена» позволяют устранять неисправности в оборудовании, не допуская его простоя.
Следующим шагом к повышению отказоустойчивости является применение кластеров. Следует заметить, что по уровню готовности кластеры на базе Intel-серверов хотя и приближаются к высокопроизводительным системам, но все еще очень далеки от них: время простоя надежного сервера от IBM, HP, Sun может составлять всего несколько минут в год, чего невозможно добиться от серверов архитектуры x86 на нынешнем этапе.
Переход на высокопроизводительные системы, основанные на архитектурах, отличных от x86, позволяет подняться на следующую ступень в повышении отказоустойчивости, однако неизбежной платой за более высокую готовность становится увеличение стоимости владения серверным комплексом: возрастут расходы не только на оборудование, но также на сопутствующую инженерную инфраструктуру, программное обеспечение и обслуживающий персонал.
Долгая память
Важным этапом роста информационной системы компании является применение внешних, не зависящих от серверов систем хранения данных. Речь идет прежде всего о SAN-архитектуре с маршрутизацией данных в сетях стандарта Fiber Channel. В этой архитектуре множество серверов может общаться с виртуальным логическим хранилищем, которое защищено от сбоев дублированием с использованием технологии RAID, резервированием блоков питания и избыточными соединениями между физическими устройствами. В системах с подобной архитектурой отсутствуют точки сбоя, так как выход из строя серверов не ведет к тому, что данные пропадут или будут недоступны, как это происходит со встроенными в сервера дисковыми подсистемами, а выход из строя компонентов дисковой подсистемы благодаря ее избыточности Xне сказывается на работоспособности системы в целом.
История повторяется: снова терминалы
Наивысшую по важности роль серверный центр начинает играть при использовании архитектур, предусматривающих централизованное хранение и обработку данных в сочетании с удаленным доступом к вычислительным ресурсам предприятия. Яркий пример — системы терминального доступа. В этом случае вся работа по выполнению используемых в офисе приложений ложится на серверы, а простые, недорогие и не требующие обслуживания устройства — терминалы — служат только для отображения информации на экране.
Для работы в терминальном режиме сервер должен иметь несколько больший объем оперативной памяти (существуют формулы для ее оценки — в зависимости от числа одновременно работающих клиентов, примерно 16-32 Мбайт на каждого — сверх базового объема, необходимого операционной системе), и более высокую производительность. Поскольку серверу в терминальном режиме приходится выполнять параллельно очень большое количество задач (все приложения всех подключенных к нему клиентов), скорость его работы сильно возрастет именно в многопроцессорной системе.
«Экономика» серверов
Экономический аспект использования серверов слагается из нескольких компонентов. На начальном этапе в общем объеме дополнительных затрат преобладают расходы на введение должности системного администратора и выделение специального помещения. По мере роста бизнеса и стоимости информации, на которую он опирается, многократно возрастает цена времени простоя системы, и уже никакие, в том числе самые серьезные, вложения в ИТ-инфраструктуру не покажутся избыточными.
Как правило, стабильный положительный эффект от информационных систем наблюдается тогда, когда вложения в информационную систему предприятия оказываются постоянными, когда расходы на ИТ отражены в отдельной статье бюджета предприятия. Заметим, что отдельные этапы развития информационной системы могут потребовать дополнительных инвестиций, которые необходимы для ее качественного изменения. Вот лишь некоторые из подобных этапов:
- приобретение настоящих серверов (компьютеров, изначально спроектированных в расчете на применение в качестве серверов);
- выделение специализированного помещения под серверную комнату и его оборудование;
- использование внешних хранилищ данных вместо встроенных в серверы дисковых подсистем;
- создание отказоустойчивого серверного комплекса - кластерной системы или системы с распределенным выполнением приложений.
Владимир Комен — директор компании WIT Networks, vkomen@wit.ru
Мифы о кластерах
Есть несколько расхожих мнений о кластерах, которые не совсем верны.
- "Кластеры - это дорого". Реально простой двухузловой кластер представляет собой два сервера "средней руки" (они обойдутся в 4-6 тыс. долл.) плюс внешняя дисковая SCSI-стойка (3-6 тыс. долл.). В качестве операционной системы для поддержки кластера обычно применяются либо варианты Linux-систем, либо Windows 2000/2003 в варианте Advanced или Enterprise Edition.
- "Кластеры - это сложно". Настройка кластера под системами семейства Microsoft Windows Server занимает несколько часов и требует не самых глубоких знаний.
- "Кластеры - это очень надежные, отказоустойчивые системы, и незачем выбрасывать сотни тысяч долларов за серьезные серверные решения от IBM, HP, Sun". Это уже перегиб в другую сторону! В действительности кластеры являются так называемыми решениями с высокой степенью готовности приложений, что означает заметно меньшее время простоя по сравнению с отдельными серверами. Тем не менее время восстановления кластера от сбоя - десятки секунд или минуты, при этом сохранение последних записанных данных не гарантируется; также пропадают подключения к серверам (клиентские сессии).