Технология непрерывных вычислений на платформе операционной системы Windows как альтернатива кластеризации

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

Тем, кто должен постоянно поддерживать работоспособность компьютера в подобных средах, необходимы соответствующие аппаратные и программные инструменты, особенно если они имеют дело с приложениями на базе Windows.

Обработка транзакций в компании Lynk Systems, осуществляющей передачу платежей в магазинах розничной торговли, происходит в основном с помощью высокоуровневых отказоустойчивых систем производства Stratus Technologies. Приложения, написанные на неувядаемом Коболе, прекрасно работают с операционной системой Stratus Virtual Operating System. Здесь абсолютно недопустим даже минутный простой. «Если системы прекращают работать, то перестают работать и наши клиенты — торговые компании», — подчеркнул Карл Кличе, вице-президент Lynk. Но когда потребность в новом приложении обработки транзакций, имеющем Web-интерфейс, заставила Lynk развернуть систему на базе Microsoft SQL Server 7, проблема обеспечения высокого уровня готовности приобрела особую остроту.

«У нас возникли серьезные проблемы с кластеризацией, — заметил Кличе, особо отметив трудности, связанные с восстановлением после сбоев и с необходимостью использовать специальные приложения и сценарии, поддерживающие работу в кластере. — Все это оказалось ужасно сложно». Поэтому он перенес свое приложение на сервер ftServer 5200 компании Stratus, позволивший реализовать технологию непрерывных вычислений (continuous computing) на платформе Windows 2000 Advanced Server как альтернативу кластеризации. ftServer поддерживает до четырех процессоров Pentium III или Xeon с возможностью горячей замены, а также позволяет «разносить» ввод/вывод и собственно обработку по разным дублированным модулям, что обеспечивает непрерывность вычислений в случае возникновения аппаратных ошибок. ftServer устраняет необходимость использования операционной системы VOS, к тому же его цена, в отличие от обычных систем подобного класса, вовсе не выражается шестизначными числами.

«Он выглядит как обычный NT-сервер. Вы можете использовать стандартное программное обеспечение, приложения, к которым не предъявляется особых требований, а кроме того, им намного проще управлять, чем кластером», — подчеркнул Кличе.

Технологии непрерывных вычислений для платформы Windows могут положить начало новой тенденции. Рынок систем высокой готовности растет очень высокими темпами. Согласно прогнозам исследовательской компании Harvard Research Group, объем продаж на этом рынке увеличится с 52,5 млрд. долл. в 2001 году до 84,2 млрд. долл. в 2005-м.

Вдобавок потребность в ориентированных на Web интерфейсах для критически важных систем и расширение использования Windows-приложений корпоративного уровня могут стимулировать спрос на этот новый класс отказоустойчивых вычислительных систем на базе Windows. «Сейчас, когда люди обмениваются заказами и документами по электронной почте, становится понятно, что необходимо поддерживать более высокий уровень готовности, чем раньше», — заметил Боб Бесаутелф, аналитик Harvard Research.

Системы непрерывных вычислений первоначально работали только на серверах старшего класса, таких как Compaq Himalaya и Stratus Continuum, где используются собственные аппаратные разработки этих компаний и операционные системы; их стоимость составляла от сотен тысяч до нескольких миллионов долларов. С другой стороны, решения на платформе Windows, предлагаемые компаниями Stratus и Marathon Technologies, стоят от 20 тыс. долл., что делает их привлекательной альтернативой (здесь и далее приведены примерные цены в США. — Прим. ред.).

Чаще всего в такого рода аппаратном «фундаменте» нуждаются приложения, которые не допускают даже кратковременных простоев, случающихся при восстановлении кластера после сбоя. Кроме того, оно необходимо в организациях, где нет квалифицированных специалистов, способных обслуживать кластер. Например, информационная система службы 911 округа Сан-Диего отслеживает местонахождение дежурных машин и автоматически направляет ближайшую из них к месту вызова. В этом случае неприемлем простой системы даже в течение двух минут, которые необходимы для восстановления после сбоя. «Две минуты для человека с сердечным приступом могут отделять жизнь от смерти», — заметил Дуг Болтон, аналитик по вопросам ИТ службы экстренной помощи. В депо установлен сервер ftServer стоимостью около 100 тыс. долл. Установка и настройка, по словам Болтона, заняли 20 часов, что существенно меньше, чем требовали кластерные системы.

Для InSight Telecommunications, предоставляющей спутниковые и волоконно-оптические каналы связи вещательным компаниям, вопрос о непрерывности работы — это вопрос сохранения своего реноме. InSight использует свое программное обеспечение для управления и планирования ресурсов. Как подчеркнул Кит Бакли, директор InSight, широковещательные сети требуют немедленного ответа и не могут ждать, пока перезагрузится сервер. «Если поступит вызов от NBC News и мы не сможем его обслужить, вряд ли к нам обратятся еще раз», — подчеркнул он.

InSight использует серверы Dell PowerEdge вместе со специализированными программным обеспечением и PCI-платой Endurance компании Marathon, обеспечивающими отказоустойчивость. В то время как Stratus продает полную интегрированную систему, технология Marathon предусматривает использование четырех стандартных ПК-серверов, два из которых функционируют как вычислительные устройства, а два — как устройства ввода/вывода, связанные выделенным высокоскоростным соединением. Marathon поддерживает серверы компаний IBM, Hewlett-Packard, Compaq и Dell. «Для нас крайне важным был тот факт, что Marathon предоставляет возможность нам самим определять, какое именно аппаратное обеспечение мы хотим получить», — заметил Бакли. В итоге компания заплатила менее 75 тыс. долл., в том числе около 46 тыс. долл. за компьютеры Dell.

Скрытые расходы

Представители Marathon и Stratus утверждают, что общая стоимость владения их компьютерными системами меньше, чем кластерными, но аналитики считают, что ИТ-менеджерам следует самостоятельно просчитать эти расходы. Оба производителя указывают на затраты на программное обеспечение кластеризации, тестирование отказоустойчивости, обучение персонала и обслуживания как на факторы приобретения их решений, а не кластерных систем. Обе компании также подчеркивают, что подписанные ими соглашения с Microsoft предусматривают приобретение только одной лицензии на Windows или Exchange Server на систему. Что же касается другого программного обеспечения, то здесь пользователям следует провести собственные маркетинговые исследования.

Затраты на полностью развернутую систему могут выйти далеко за пределы 20-30 тыс. долл. стартовой цены. И, как правило, при покупке системы Stratus заказчик получает контракт на службу мониторинга, и этот контракт ежегодно приводит к увеличению расходов примерно на 20% начальной стоимости системы. «Мы привыкли к такому обслуживанию во время работы с мэйнфреймами Stratus», — подчеркнул Кличе. Как считают аналитики, на рынке массовых Windows-серверов многие могут отказаться от подобного подхода.

Донна Скотт, аналитик компании Gartner, отметила, что в таких приложениях системы, как Exchange Server 2000, которые поддерживают кластеризацию в режиме «активный — активный», резервные системы могут выполнять и другие задачи до тех пор, пока не возник сбой. В архитектуре непрерывных вычислений такого себе позволить нельзя. «Но согласитесь, никому не понравится, если ресурсы будут простаивать», — сказала она.

Хотя эта технология не нова, ее реализации применительно к Windows пока находятся на начальном этапе развития. С момента установки системы Stratus в июне в округе Сан-Диего столкнулись с двумя ошибками. В первом случае пришлось модернизировать программируемую флэш-память, а во втором — заменять микропрограммное обеспечение. Каждый раз система, тем не менее, продолжала работать без прерывания. Решение Marathon для Windows NT Server впервые было выпущено в 1997 году; несмотря на то, что таких систем было продано 1700 единиц, оборот этого сегмента рынка серверов высокой готовности еще крайне невелик.

Системы работают со стандартным вариантом Windows, однако аппаратная архитектура по-прежнему является внутренней разработкой. Stratus реализует в ftServers свой собственный уровень аппаратной абстракции HAL (hardware abstraction layer) для Windows и поддерживает только те адаптеры, для которых существуют должным образом проверенные драйверы устройств. «Вы не можете просто так взять, да и установить дополнительную плату PCI», — сказал Кличе. Но Болтон считает, что такой подход себя оправдывает. «За счет использования только протестированных драйверов, я думаю, они смогли решить множество вопросов, с которыми мои коллеги до сих пор сталкиваются при работе с Windows 2000», — отметил он. Marathon оставляет вопрос выбора системных компонентов на усмотрение независимых интеграторов.

При том что решения Stratus и Marathon используют свои собственные программные инструменты управления, ни одна из них не имеет основанной на SNMP информационной базы Management Information Base для поддержки интероперабельности с ПО управления корпоративной сетью; обе компании утверждают, что они работают над решением этого вопроса.

Еще одно ограничение — масштабируемость. Технология Marathon не поддерживает SMP-архитектуры. Семейство серверов Stratus ftServer предлагает ограниченное число конфигураций, в том числе, SMP-системы, содержащие до четырех процессоров.

«Если проанализировать, где устанавливаются такие системы, то станет ясно, что это в первую очередь организации, в которых отсутствует инфраструктура, использующая преимущества балансировки нагрузки и кластеризации в архитектурах интерфейсного и промежуточного слоя», — считает Том Мантер, аналитик компании Aberdeen Group.

Эти системы в первую очередь предназначены для таких сред, где цена простоя чрезвычайно высока. Для очень многих областей применения кластерные системы, время восстановления после сбоя которых исчисляется минутами, являются вполне адекватным решением.

«Если такие системы действительно будут работать так, как обещают, я, пожалуй, подумаю о том, чтобы использовать ftServer для работы с другими Windows-приложениями, которые сейчас не работают на отказоустойчивых серверах», — отметил Кличе.


Три устойчивых к сбоям архитектуры

В архитектуре Windows Server Cluster первичная система выполняет всю обработку, в то время как страховочная система находится в резерве (в кластерной архитектуре «активный-активный» резервный сервер может использоваться для другой работы, пока в нем не возникнет необходимость). Программное обеспечение кластеризации использует выделенное «горячее» соединение между машинами для мониторинга операций и инициирования процедуры восстановления. Устройства могут совместно использовать общую шину SCSI для доступа к избыточным массивам памяти. При возникновении сбоя обработка приостанавливается до тех пор, пока система восстановления после сбоя не загрузит приложения и не произойдет возврат в работоспособное состояние. В типичных случаях на восстановление уходит от двух минут и более.

В архитектуре Assured Availability Architecture компании Marathon используется специализированная плата PCI и программное обеспечение, поддерживающее межсоединение четырех серверов. Два из них действуют как вычислительные процессоры и два — как процессоры ввода/вывода. Их взаимодействие осуществляется по высокоскоростной шине. Специальное программное обеспечение и соединители позволяют системы обрабатывать процессы параллельно. При возникновении сбоя обработка без прерывания передается на резервный сервер.

Архитектура двухрежимной системы FTP-серверов компании Stratus включает в себя два вычислительных процессора и два модуля ввода/вывода в одном серверном корпусе. Специальная встроенная управляемая приложениями интегральная схема поддерживает модули при помощи частной высокоскоростной объединительной панели. Все процессы выполняются параллельно, что гарантирует непрерывную работу при возникновении сбоя. Необязательный модуль третьего процессора обеспечивает устойчивость к сбоям в случае сбоя единого процессорного модуля.