Модульные серверы в приложениях высокой доступности
Петер Дюмиг
Благодаря избыточным компонентам и замене в «горячем» режиме модульные серверы обеспечивают высокую доступность.
Модульные серверы особенно подходят для приложений высокой доступности, потому что без прекращения работы в них можно устанавливать такие избыточные компоненты, как блоки питания или сетевые интерфейсы. В случае стоечных серверов подобное реализовать не просто.
За последние десять лет серверный ландшафт в вычислительных центрах чрезвычайно изменился: теперь случайному набору компьютеров самых разнообразных моделей компании предпочитают стандартизованные стоечные серверы — не в последнюю очередь вследствие привлекательного соотношения их цены и производительности.
Интересной альтернативой приобретению шести-восьми новых серверов в стоечном исполнении могут стать модульные серверы. Так, корпус высотой семь монтажных единиц (1 монтажная единица, или 1U, = 4,445 см? или 1,75 дюйма) входит до десяти вертикально размещаемых модульных серверов с двумя процессорами Хеоп в каждом, а в 19-дюймовый шкаф помещаются шесть шасси со 120 процессорами. Если бы администратор стал использовать стоечные серверы с двумя процессорами, в таком же шкафу поместилось бы лишь 84 процессора (42 системы по одной монтажной единице).
Затраты на аппаратное обеспечение оказываются ниже на 20-25%, поскольку все модульные серверы совместно пользуются такими ресурсами, как электрический ток, блоки питания, вентиляторы, карты управления и сетевые коммутаторы. Если электроснабжение блоков питания и вентиляторов охлаждения в стоечных серверах осуществляется раздельно, то в модульных их блоки питания и вентиляторы помещаются в общий корпус, к которому подается электрический ток. Тем самым сокращается энергопотребление в расчете на один сервер, а также количество необходимой кабельной проводки, а ведь только на ней можно сэкономить до 70%.
|
По сравнению со своими стоечными аналогами модульные серверы обладают значительно большей производительностью в расчете на один монтажный шкаф и обеспечивают более высокую доступность благодаря избыточным компонентам. Доступность повышается и вследствие того, что замена важнейших компонентов осуществляется без прекращения работы. В стоечных серверах такое возможно лишь в ограниченном объеме.
Требование: никаких точек общесистемного отказа
Принцип конструктивной избыточности гласит: «Никаких точек общесистемного отказа!» Под этим имеется в виду отсутствие каких-либо компонентов, неисправность которых влечет за собой отказ всей системы. В частности, весьма подвержена отказам система электроснабжения. Для достижения высокой доступноcти модульного сервера рекомендуется уже при определении конфигурации обратить внимание на наличие избыточных блоков питания.
За работой всей системы следят специальные контроллеры удаленного доступа, размещенные в шасси серверов. Они выполняют функции управления производительностью, протоколирования информации о событиях и ведения инвентарной отчетности. С помощью такого административного инструмента предприятия могут определить набор правил, которые будут использоваться и в случае отказа блока питания. При наличии двух и еще двух (т. е. всего четырех) блоков питания предлагается держать в резерве целую пару: в этом случае доступность обеспечивается даже при отказе одного или двух блоков питания.
|
Избыточность модулей ввода/вывода
В корпусах, куда встраиваются модульные серверы, нередко предусматривается место для четырех модулей ввода/вывода. Обычно два используются для подключения Ethernet, а остальные — для Fibre Channel или InfiniBand. По соображениям избыточности модули ввода/вывода в большинстве случаев конфигурируются парами. Такие избыточные маршруты передачи данных не встраиваются в модульные серверы изначально, администратор должен задать их при определении конфигурации (см. Рисунок 1). Избыточность маршрутов требуется, скажем, тогда, когда необходима особенно высокая доступность при чтении или записи данных на носители. Это справедливо в отношении приложений с большим количеством транзакций.
Каждый модульный сервер содержит, как правило, два встроенных разъема для подключения локальной сети (адаптеров локальной сети на системной плате — LAN on Motherboard, LOM), которые при помощи выделенных соединений связаны с внутренними портами коммутаторов или сквозными (pass-through) модулями. Адаптеры LOM зачастую обеспечивают полнодуплексные каналы со скоростью передачи 1 Гбит/с.
Важное отличие между модульными серверами и серверами других конструкций заключается в том, что LOM и внутренние порты встроенного модуля ввода/вывода (коммутатора или сквозного модуля) на модульном сервере жестко связаны посредством соединительной платы (midplane). Вследствие такого дизайна канал между LOM и встроенным модулем ввода/вывода всегда имеет статус connected («подключен») — за исключением ситуации отказа модуля LOM либо порта ввода/вывода. То же самое справедливо и в случае, когда отсутствует соединение по локальной сети между внешним портом для каскадирования (uplink) и встроенным коммутатором. Но последнее, наоборот, означает, что внешняя ошибка, к примеру повреждение кабеля, не влечет за собой появления сообщения об ошибке в сценарии конфигурации, когда используется встроенный коммутатор (см. Рисунок 2).
|
При наличии сквозного модуля канал будет обладать статусом connected, только если есть соединение между внешними портами сквозного модуля и коммутатором вне шасси модульного сервера. Так вел бы себя и отдельно стоящий сервер. Сообщение об ошибке появляется, когда в LOM, сквозном порту или внешнем коммутаторе происходит соответствующее событие.
Обойти это ограничение избыточности и, соответственно, доступности можно посредством административных настроек микропрограммного обеспечения коммутатора. Коммутатор второго уровня агрегирует трафик данных от гигабитных сетевых контроллеров отдельных модульных серверов и обеспечивает шесть восходящих соединений с инфраструктурой главной сети. При помощи специальной конфигурационной команды коммутатор поддерживает образование групп в локальной сети.