Потребность в таких системах возникла совсем недавно, с взрывным развитием Internet/intranet-технологии, для которой необходимы системы высокой готовности. Собственно этим и объясняется столь сильный интерес к новой технологии Woflpack. Однако кроме создания кластеров "из персоналок", возникает потребность объединять в кластер и рабочие станции, типа SPARCstation. SunSoft, просчитав эту потребность, также собирается выпустить недорогое программное обеспечение для объединения в кластер рабочих станций Sun. Таким образом, станет возможной кластеризация практически всех компьютерных систем.
Основная идея кластерной технологии - объединение нескольких компьютеров в единую систему - кластер, которая эффективно использовала бы возможности всех входящих в нее устройств. Простейший пример - объединение двух серверов и разделяемой файловой библиотеки. Такой кластер позволяет почти вдвое увеличить быстродействие системы (если правильно организовать доступ к библиотеке), так как программы будут вычисляться параллельно на различных компьютерах. В этом случае кластерное ПО должно равномерно распределять нагрузку между серверами, чтобы наиболее эффективно использовать возможности кластера.
Кроме того, кластеризация увеличивает и готовность системы, так как в случае выхода из строя одного сервера кластера все вычисления передаются на другой. При этом кластер не дает сбоя, но его производительность уменьшается. В таком режиме кластерное ПО должно своевременно восстановить все аварийно остановленные программы на работающем сервере, причем желательно с сохранением выполняемых вычислений и обрабатываемых данных. Таким образом, кластер постоянно готов к обслуживанию нового пользователя, но не повышает отказоустойчивости каждого конкретного сервера. То есть работающая программа может быть прервана с той же вероятностью, что и раньше, а вероятность обслуживания нового пользователя возрастет. Таким образом, объединение компьютеров в кластер имеет следующие преимущества:
Собственно, кластерные системы отличаются от отказоустойчивых тем, что они более эффективно используют возможности оборудования. Если в отказоустойчивых системах на компьютере горячего резерва не выполняются почти никакие действия, так как он полностью повторяет все действия основного сервера, то в кластерной системе функционируют оба устройства, а если одно выйдет из строя, то другое будет работать за двоих. Но активное использование горячего резерва не позволяет обеспечить непрерывности вычислений, так как в случае сбоя одного из компьютеров кластера приходится восстанавливать работающие на нем программы.
Классическая конфигурация кластерной системы следующая: несколько серверов, подключенных к единой файловой библиотеке (например по SCSI-шине), которые также соединены между собой по обычной сети (допустим, Ethernet). Некоторые серверы имеют и дополнительную сеть для внутрикластерного обмена информацией (положим, кластеры Digital или Tandem). Как правило, кластеры со специальным каналом позволяют одному компьютеру обращаться к ячейкам памяти другого (такие технологии, как Memory Channel от Digital). Подобная технология дает возможность наиболее эффективно использовать функции кластеризации, так как допускает распараллеливания одной программы сразу на нескольких процессорах.
На этом рынке Hewlett-Packard предлагает два своих кластера: MC/ServiceGuard и MC/LockManager. Первая технология назначает каждому серверу кластера свое дисковое пространство в разделяемой библиотеке. Причем в этом дисковом пространстве каждый сервер хранит пакеты обрабатываемых программ. В состав пакета входят:
Такая организация исполнения программ позволяет хранить всю информацию о запущенных приложениях на диске, и в случае выхода сервера из строя просто передавать его дисковое пространство в библиотеке на другие серверы. Работающие серверы, таким образом, получают всю необходимую информацию для загрузки и выполнения приостановленных программ. Причем сохраняются даже сетевые адреса, что позволяет не устанавливать новый сеанс связи, а использовать старый. Кроме того, пользователь может определить последовательность "разбегания" пакетов в случае остановки одного сервера, т. е. установить, сколько пакетов и на какой сервер передается. Второй продукт HP - MC/LockManager - предназначен для работы с Oracle Parallel Server. Он отличается от описанного выше тем, что все серверы кластера работают с единой файловой библиотекой.
На сегодняшний день Hewlett-Packard продает кластеры, объединяющие до 16 узлов или до 192 процессоров PA8000. К 1998 году компания собирается увеличить число серверов в кластере до 128 узлов.
Другой компанией, которая давно занимается кластерной технологией, является Digital Equipment Corporation (DEC). Именно она в середине 80-х объединила серверы в кластер. Digital предложила для кластеризации специальную технологию Memory Channel, которая позволяет процессору одного кластера получить доступ к памяти другого. Таким образом, появляется возможность строить не просто системы повышенной готовности, но и распараллеливать работу одной программы сразу по нескольким серверам. Это позволяет более точно распределять нагрузку на все серверы кластера. Основное же преимущество технологии Digital заключается в том, что на серверах этой компании реализована операционная система Windows NT, благодаря чему Digital-кластеры становятся очень привлекательными для покупателей именно технологии Wolfpack. Новый сервер Digital, поддерживающий Windows NT, включает новую версию Memory Channel для шины PCI и технологию фирмы Sequent для неоднородного доступа к памяти NUMA. Это решение предоставит пользователям NT практически неограниченные возможности масштабирования, производительности и готовности серверов, но, к сожалению, за весьма приличную сумму.
Собственно, сам разработчик технологии NUMA - Sequent - также предлагает кластеры, построенные из компьютеров на базе Pentium Pro. В таком сервере может быть установлено до 252 процессоров Pentium Pro, объединенных в группы по четыре (Quad), которые обмениваются информацией со скоростью до 1 Гбайт в секунду. Эти серверы могут объединяться в кластеры до восьми серверов. Таким образом можно объединить тысячи процессоров Pentium Pro в единую систему.
Следует отметить, что технология NUMA - это не чистая SMP-архитектура. Например, процессоры Pentium Pro могут объединяться только в системы по четыре процессора (собственно поэтому Sequent и избрала в качестве основного конструктивного элемента плату Quad). Технология NUMA становится очень популярной, и ее поддерживают различные производители, такие как Hewlett-Packard (серверы класса S и X) и Digital.
Что же касается альянса Tandem, Hewlett-Packard, Sequent и Microsoft, который собственно и разрабатывает технологию Wolfpack, то, скорее всего, они все-таки выпустят этот пакет, но к тому времени уже может оказаться, что инициативу перехватит Digital. Однако у Microsoft есть одно большое преимущество - ее технология может быть достаточно дешевой и поэтому позволит создавать недорогие кластеры фактически из персональных компьютеров. Будем надеяться, что так и произойдет.
Intel, Microsoft и Compaq готовят кластерный стандарт
Компании Intel, Microsoft и Compaq вырабатывают единый стандарт построения кластерных систем на базе процессоров Intel. Утверждение такого стандарта поможет ускорить развитие распределенных системных архитектур на основе недорогих процессоров. Эту работу предполагается завершить к концу текущего квартала. Компании Intel, Microsoft и Compaq должны привлечь около 40 производителей к разработке спецификации Via, которая позволит поставщикам ПО поддерживать кластерные системы путем добавления в свои операционные системы единого набора драйверов.
Однако другие производители, такие как Sun Microsystems, готовы вести жесткую борьбу с этой коалицией. Так, компания Sun объявила о выходе ПО Full Moon и API для работы с кластерами Solaris. Кроме того, в нынешнем году фирма собирается обеспечить поддержку двух-, четырех- и восьмиузловых кластеров, для которых в 1998 году будет разработана единая файловая система и доступ к периферии, а также глобальная поддержка сети.
В 1999 году Sun предложит средства восстановления для кластеров, а также обеспечит поддержку отказоустойчивости для систем Solaris. Это, по мнению аналитиков, поможет компании конкурировать с такими ветеранами кластерной технологии, как IBM, Digital и Hewlett-Packard.
Однако пока стандарт не принят, Digital и HP продолжают работу над расширением масштабируемости традиционных систем с симметричной организацией процессоров (symmetrical multiprocessing, SMP). Сейчас есть кластеры, которые поддерживают до 32 процессоров. По официальным данным, в этом году компания Digital собирается выпустить сервер WildFire с расширенной версией технологии Memory Channel и архитектурой распределенного доступа к памяти (non-uniform memory access, NUMA), который повысит скорость выполнения приложений под OpenVMS. По информации, полученной от представителей Digital, эта архитектура будет использовать промежуточное ПО под названием Galaxies, которое позволит минимизировать присущие NUMA задержки и обеспечит работу существующих ОС и приложений без внесения дополнительных модификаций.
Аналитики полагают, что технология Digital способна оказать значительное влияние на будущее Windows NT, так как эта операционная система может работать на новом SMP-сервере Digital. Это позволит обойти существующие ограничения по масштабируемости, так как другие ОС должны быть модернизированы для поддержки кластеризации.
Не желая отставать, HP собирается выпустить новый SMP-сервер на базе суперкомпьютерной технологии, купленной ею вместе с компанией Convex. Система, названная Lancelot, обеспечит встроенную поддержку операционной системы HP-UX и других приложений Unix.
Путем использования кластерных систем на базе стандартных процессоров Intel можно было бы, не в пример другим способам, дешево создавать крупные SMP-серверы, однако различные препятствия, например задержка выхода API Wolfpack, по-прежнему не позволяют точно предсказать, когда такие системы будут доступны покупателям.
InfoWorld, США