`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Что для вас является метрикой простоя серверной инфраструктуры?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Кластеризация серверов или Связанные одной цепью

0 
 

Не знаю как у кого, но у меня слово «кластер» всегда вызывает некоторый трепет и уважение. Как будто есть в нем какая-то неизвестная, магическая сила. Возможно, лингвисты это объяснят обыкновенной фонетической конструкцией слова, т. е. «удачным» расположением согласных с рычащим «р» в конце, созвучным с «гангстер» и «бластер». Но, скорее всего, причину моего столь трепетного отношения к этому слову следует искать в той эпохе, когда впервые на устах передовой технической интеллигенции появилось словосочетание «кластер серверов».

Именно тогда, в середине семидесятых, в эру противостояния двух супердержав, во времена «холодной войны» и секретных физиков родилась идея кластеризации. В то время возрастали требования к скорости вычислений в области ядерных и аэрокосмических исследований. Необходимость быстрого получения результатов была обусловлена гонкой вооружений. И хотя на стоимость создания суперЭВМ практически не обращали внимания, но все-гаки заметили, что иногда требуемую вычислительную мощь системы можно получить не только путем создания новых «электронных мозгов», но и с помощью объединения существующих.

Одной из первых компаний, которая всерьез занялась проблемами кластеризации, была Tandem. Ее серверы Nonstop Himalaya еще два десятилетия назад можно было объединять в кластеры. В начале 80-х компания Digital Equipment представила VAXCluster с операционной системой OpenVMS. В 1993 г. DEC существенно обогатила свое ноу-хау в области кластеризации, выпустив основанный на Unix пакет DECAdvantage. В том же году IBM разработала систему High-Availability Cluster Multi-Processing (НАСМР) для собственной разновидности Unix — AIX. Сейчас системы для организации кластеров из Unix-машин предлагают около десятка компаний, в их числе Data General, Hewlett-Packard, Pyramid Technology, Sequent Computer Systems, Sun Microsystems.

В настоящее время кластеризация является не только прерогативой мэйнфреймов или компьютеров VAX под VMS. В кластеры уже можно объединять ПК-серверы, работающие под Windows NT и IntranetWare. Наверное, с точки зрения закоренелого администратора-«юниксоида», кластеры стали ширпотребом. Но это теперь возможно благодаря тому, что объемы жизненно важной для предприятий информации достигли такой критической массы, когда их обработка и, главное, обеспечение сохранности стали одним из залогов успешной работы. И поэтому сегодня каждая организация, чтобы достичь высокой отказоустойчивости и масштабируемости корпоративно сервера, может найти решение, которое будет ей г карману и не потребует значительных интеллектуальных усилий по поддержанию и наладке подобной cистемы.

Сейчас кластеры вместе с массовыми параллельными вычислениями (Massively Parallel Processing МРР) и симметричной многопроцессорностью (Syrr metrical Multiprocessing — SMP) образуют технологическое трио, призванное значительно увеличить производительность. функциональные возможности степень надежности систем клиент-сервер.

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

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

Одним из основных понятий многопроцессорных архитектур является узел — вычислительная система, состоящая из одного или нескольких процессоров, имеющая оперативную память и систему ввода/вы-вода. Узел характеризуется тем, что на нем работает единственная копия операционной системы (ОС).

СИММЕТРИЧНАЯ МНОГОПРОЦЕССОРНАЯ АРХИТЕКТУРА

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

Типичные SMP-архитектуры в качестве аппаратной реализации механизма поддержки когерентности используют шину слежения (snoopy bus). Каждый процессор имеет свою собственную локальную кэш-па-иять, где он хранит копию небольшой части основной памяти, доступ к которой наиболее вероятен. Для того нтобы все кэши оставались когерентными, каждый ЦПУ «подглядывает» за шиной, осуществляя поиск тех операций считывания и записи между другими процессорами и основной памятью, которые влияют на содержимое их собственных кэшей. Если, например, процессор В запрашивает ту часть памяти, которая обрабатывается процессором А, то А перехватывает этот запрос и помещает свои значения области памяти на шину, где В их считывает. Когда А записывает измененное значение обратно из своего кэша в память то все другие процессоры «видят», как эта запись проходит по шине, и удаляют устаревшие значения из своих кэшей.

Сегодня существуют варианты SMP-узла с несколькими шинами данных, однако это приводит к усложнению архитектуры и повышению стоимости системы.

SMP-узлы очень удобны для программистов: ОС почти автоматически масштабирует приложения, давая им возможность использовать наращиваемые ресурсы. Само приложение не должно меняться при добавлении процессоров и не обязано следить за тем, на каких ЦПУ оно работает. Временная задержка доступа от любого ЦПУ до всех частей памяти и системы ввода/вывода одна и та же Разработчик оперирует с однородным адресным пространством. Все это приводит к тому, что SMP-архитектуры разных производителей выглядят, в основном, одинаково: упрощается переносимость ПО между SMP-системами, а это -одно из основных достоинств таких платформ.

МАССОВЫЙ ПАРАЛЛЕЛИЗМ

Узлы в архитектуре МРР, как правило, состоят из одного ЦПУ. небольшой памяти и нескольких устройств ввода/вывода В каждом узле работает своя копия ОС, а узлы объединяются между собой специализированным соединением. Взаимосвязи между узлами не требуют аппаратно поддерживаемой когерентности, так как каждый из них имеет собственную ОС и. следовательно, свое уникальное адресное пространство физической памяти Когерентность реализуется программными средствами с использованием техники передачи сообщений.

Кластеризация серверов или Связанные одной цепью

Симметричная многопроцессорная архитектура

Задержки, которые присущи программной поддержке когерентности на основе сообщений, обычно в сотни и тысячи раз больше, чем те, которые получаются в SMP-системах с аппаратными средствами С другой стороны, их реализация значительно дешевле. В некотором смысле в МРР-узлах задержкой приходится жертвовать, чтобы подсоединить большее число процессоров (сотни и даже тысячи).

Современное направление развития МРР-систем заключается в увеличении мощности узла путем подсоединения дополнительных процессоров и, по существу. превращения его в SMP-структуру.

Следует также отметить, что вовсе не обязательно, чтобы МРР-система имела распределенное ОЗУ. при котором каждый процессорный узел оснащен локальной памятью. Так, компьютеры SPP1000/XA и SPP1200/XA — пример систем с массовым параллелизмом, память которых физически распределена между гиперузлами, но логически является общей для всей ЭВМ. Тем не менее большинство МРР-компьютеров имеют как логически, так и физически распределенную память.

КЛАСТЕР

Кластер состоит из двух или более узлов, удовлетворяющих следующим требованиям:

  • каждый узел работает со своей копией ОС;

  • каждый узел работает со своей копией приложения;

  • узлы делят общий пул других ресурсов, например таких, как накопители на дисках.

Главное отличие между кластерными SMP-системами и традиционными МРР-системами заключается в том, что в последних узлы не делят ресурсы для хранения.

Кластеры являются самым дешевым способом увеличения производительности компьютеров Фактически кластер представляет собой набор из нескольких ЭВМ, соединенных через некоторую коммуникационную инфраструктуру в качестве которой может выступать обычная компьютерная сеть, однако из соображений повышения производительности желательно иметь высокоскоростные соединения (FDDI, ATM и т. п.). Кластеры могут быть образованы как из различных компьютеров (гетерогенные), так и из одинаковых (гомогенные).

В кластерных системах для организации взаимодействия между процессами, выполняющимися на разных компьютерах при решении одной задачи, применяются различные модели обмена сообщениями. Однако задача распараллеливания в таких системах с распределенной между отдельными компьютерами памятью является гораздо более сложной, чем в модели общего поля памяти, как, например, в SMP-серверах. К этому следует добавить чисто аппаратные проблемы — наличие задержек при обменах сообщениями и повышение скорости передачи данных. Поэтому спектр задач которые могут эффективно решаться на кластерных системах, достаточно ограничен по сравнению с симметричными системами.

Кроме того, кластеры безнадежно проигрывают технологиям SMP и МРР в скорости. Преимущества первых станут действительно неоспоримыми, когда эта технология будет объединена с параллельной обработкой, и множественные запросы и задачи, связанные с различными процессорами, будут выполняться одновременно. Параллельная обработка особенно важна для многочисленных приложений реального времени в таких отраслях, как банковское дело.

Успех гарантирован в том случае, если пропускная способность выйдет на уровень от 200 до 300 Mbps. Следует отметить, что в прошлом нормой считался показатель в 20-40 Mbps с интерфейсом SCSI для связи с запоминающим устройством, но приложения в этих отраслях плохо работали на кластерах.

Еще одним препятствием при переходе на кластерную технологию может стать перенос ПО. разработанного для одной машины, на кластер. Это грозит перепрограммированием приложений. Возможно, многие из них, рассчитанные на одну SMP- или МРР-машину. переписать будет просто, но наверняка некоторые придется создавать практически заново. Однако если на одной SMP-машине развернут параллельный сервер, переход к кластерам не составит труда, и приложения будут работать также, как и на одной машине.

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КЛАСТЕРНЫХ ТЕХНОЛОГИЙ

Многие производители кластерного ПО считают что отрасли в первую очередь необходимы гетерогенные кластеры. Лидером этого движения выступает IBM, которая пытается объединить разработчиков ПО вокруг своего API (Application Programming Interface) Phoenix для операционных систем Unix и Windows NT.

Среди производителей Unix-систем активно движется вперед компания Sun. В начале этого года она представила свои кластерные API под кодовым названием Full Moon — итог напряженной пятилетней работы. целью которой было сделать операционную систему Solaris действительно устойчивой к сбоям.

Компании, обладающие большим опытом в построении кластеров, также не остаются в стороне. Например. во время выставки Internet World, прошедшей в Лос-Анджелесе в прошлом году, представители Digital Equipment продемонстрировали усовершенствованные NT-кластеры с работающими на них приложениями. Компания NCR начала выпуск версии кластерного программного обеспечения LifeKeeper, совместимого с интерфейсом WolfPack от Microsoft. AT&T Global Information Solutions сегодня предлагает подобные отказоустойчивые решения, объединяющие два узла для серверов Globalist NT. И этот список можно существенно дополнить.

Кластеризация серверов или Связанные одной цепью

Архитектура с массовым параллелизмом

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

Microsoft и Novell: игры в «волчьей» стае

Условное название пакета кластеризации компании Novell — Wolf Mountain, а компании Microsoft — WolfPack. И хотя пользователи и аналитики утверждают, что первая разработка намного превосходит по своим возможностям вторую, но именно между этими проектами разгорелась в последние годы настоящая война.

Но давайте обо всем по порядку.

В декабре 1996 г. производители серверов и партнеры Microsoft — Compaq, Digital, HP, NCR и Tandem — получили бета-версию Wolfpack. Однако в предложенной технологии были обнаружены серьезные недоработки. и поэтому окончательный выход продукта неоднократно откладывался.

Наконец, осенью прошлого года пакет Microsoft Cluster Server (ранее — Wolfpack) все-таки появился и в него вошло следующее программное обеспечение — кластер, состоящий из двух серверов начального уровня, программа для распределения нагрузки и подсистема хранения данных.

Таким образом, начался первый этап (Phase О) внедрения кластерных технологий в Windows NT. Он позволил объединить в кластер лишь два сервера. Следует отметить, что аналогичной функцией обладало ПО System Fault Tolerance (SFT) III for NetWare компании Novell, выпущенное более четырех лет назад. На втором этапе (начало которого уже также неоднократно переносилось) WolfPack будет объединять 16 узлов.

В Novell вначале планировали, что ПО Wolf Mountain позволит объединять до четырех серверов В него будет также включена возможность работы с кластерными Java-приложениями, использование 64-разрядной унифицированной файловой системы, поддержка межсоединений узлов, основанных на технологиях TCP/IP и ATM, и, кроме того, он позволит включать в кластеры компьютеры под управлением операционной системы NetWare и серверы NT.

Впервые Novell продемонстрировала предварительные результаты своих кластерных разработок в марте прошлого года, представив на конференции BrainShare технологию Wolf Mountain.

«Хотя окончательная версия Orion (ранее — Wolf Mountain) выйдет примерно через год после WolfPack, по своим возможностям она превзойдет технологию Microsoft, — уверен Майкл Брайант, директор компании Novell по маркетингу систем кластеризации. — Orion обеспечит работу 16 серверов на базе lntel-процессоров как единой системы. Благодаря этому управлять серверами и приложениями станет легче, улучшится доступ пользователей к сетевым службам».

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

С «волками» жить — по-волчьи выть

Ситуация с программным обеспечением для кластерных технологий, которая сложилась между компаниями Novell и Microsoft s 1997 г. приобрела черты сюжета детективного романа. Весной прошлого ведущие инженеры Novell Джефф Мерки, Ларри Энгус и Даррен Мейджор, занимавшиеся кластерными технологиями, ушли из фирмы и организовали новую компанию, специализирующуюся на разработке кластерной технологии для конкурирующей платформы Windows NT.

Более того, Джефф Мерки, покинувший Novell чтобы стать исполнительным директором Mountain Group (WMG), утверждает, что вместе с ним в новую фирму ушли почти 70 сотрудников Novell. Объясняя причины, побудившие его и других исслед ователей оставить компанию и организовать собственную фирму, Джефф Мерки заявил: «Наши интересы намного шире рынка NetWare».

Кластеризация серверов или Связанные одной цепью

Кластерная архитектура с разделением дисков

Первого мая прошлого года новая компания объявила о выходе Tapestry for Windows NT — программного обеспечения, предназначенного для улучшения масштабируемости Windows NT при совместной работе с Microsoft Wolfpack. Это ПО также позволило создавать гетерогенные кластерные системы на базе процессоров Intel, функционирующие под управлением операционных систем Windows NT IntranetWare и Unix. Джефф Мерки заявил, то никаких соглашений с Novell по поставке кластерного ПО не заключачось, зато компания уже успела установить партнерские отношения с Microsoft.

В результате этих событий компания Novell подала иск в окружной суд штата Юта на руководителей Wolf Mountain Group (впоследствии это название было заменено на Timpanogos Research Group — TRG). Им были предъявлены обвинения в нарушении прав на интеллектуальную собственность и на торговую марку (использование названия Wolf Mountain), а также в незаконном присвоении коммерческих секретов, нарушении условий контракта и невыполнении обязательств в качестве сотрудников Novell.

В последних числах января сего года окружной судья счел доводы представителей Novell вполне убедительными и запретил вышеуказанным людям вести разработки любого кластерного ПО, которое можно рассматривать как конкурирующую с Novell технологию. Данное ограничение носит временный характер, срок его действия — 9 месяцев.

В планы TRG входило создание унифицированного объектного каталога и протокола обмена данными между кластерами. Однако, согласно официальным судебным документам, универсальная 64-разрядная операционная система TRG под кодовым названием Manos «не разработана главой TRG Джеффом Мерки, а скопирована им у Novell».

По мнению некоторых аналитиков из International Data Согр., кластерная технология Novell (кодовое название Orion) «по количеству возможностей превосходит почти все конкурирующие продукты», однако они сомневаются в том что вышеупомянутая тяжба положительно повлияет на развитие кластерных технологий в целом. По их мнению, чем больше инструментов окажется на рынке, тем лучше. Если бы Novell стана сотрудничать с TRG. Опоп мота бы появиться очень скоро, а так. как уже отмечалось выше Orion должна выйти в конце нынешнего года в качестве надстройки к NetWare 5.

АРХИТЕКТУРА ВИРТУАЛЬНЫХ СОЕДИНЕНИЙ

Однако нельзя не порадоваться тому, что все-таки иногда разум берет верх над корыстными интересами и амбициями. Так, представители Intel, Microsoft и Compaq Computer объявили о создании стандарта кластерных соединений. Если компании сумеют договориться с производителями сетевых интерфейсных плат, операционных систем и приложений баз данных, то для создания больших кластеров на основе ПК-серверов появится надежный фундамент — стандарты.

Компании объявили о завершении разработки архитектуры виртуальных соединений (Virtual Interconnect Architecture — VIA). Цель этой инициативы состоит в стандартизации интерфейсов между различными серверами на основе процессоров Intel в одном кластере.

Кластеризация серверов или Связанные одной цепью

Кластерная архитектура без разделения ресурсов

В спецификации VIA определяются нормативные аппаратные и программные интерфейсы для объединения вычислительных узлов в кластеры. В формулировке спецификации представлена новая концепция так называемых системных сетей (System Area Network-SAN), опирающаяся на тезис о том, что различия между локальными и глобальными сетями, а также объединенными в кластер узлами не играют никакой роли для приложений. Детали сотрудничества трех компаний впервые были оговорены в марте прошлого года.

Спецификация VIA позволит производителям ОС поддерживать кластерные архитектуры, включая в состав своих продуктов набор соответствующих драйверов.

Представители трех компаний пообещали, что спецификация не будет зависеть от средств передачи данных, процессора и операционной системы. Аппаратный интерфейс связи узлов должен быть совместим с сетями ATM, Ethernet, а также с устройствами, поддерживающими соединения Fibre Channel.

Среди компаний, вовлеченных в продвижение спецификации VIA, стоит отметить Digital Equipment, Data General, GigaNet, Hewlett-Packard Hitachi Informix Software, NEC, Novell, SAP, Samsung Electronics, Siemens Nixdorf, Tandem Computers, Toshiba и Unisys.

Многие аналитики считают, что с помощью архитектуры VIA можно создавать не только кластеры, но и большие SMP-серверы на базе сравнительно дешевых компьютеров с процессорами Intel. Считается, что именно такие архитектуры помогут компании Intel получить наибольшую прибыль на рынке мощных многопроцессорных систем.

Но, к сожалению, технология внедряется не так быстро, как хотелось бы. В то время как 40 поставщиков компьютеров уже приняли решение о поддержке архитектуры VIA разработчики баз данных планируют включить ее в новые версии своих продуктов не ранее 1999 г. Пока не собираются также использовать эту архитектуру в своих операционных системах Novell, Santa Cruz Operation и даже один из участников разработки — компания Microsoft.

Тем временем корпорация Intel предложила еще одну новую спецификацию под названием I2O (Intelligent Input/ Output — интеллектуальный ввод/вывод). для работы над которой также необходимо сотрудничество между производителями периферийных устройств и ОС. Эта технология будет применяться в узлах с целью освободить ЦПУ память и шину передачи данных от большей части операций по обслуживанию ввода/вывода и возложить их на подсистему I/O. Однако пока неизвестно, будет ли этот продукт совместим с VIA. Таким образом. на сегодняшний день проблем в технологиях кластеризации остается немало, и их своевременное решение будет зависеть от согласованных действий многих компаний.

0 
 

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT