`

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

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

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

Человек года

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

Продукт года

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

 

Windows как платформа для вычислительных кластеров

Статья опубликована в №45 (613) от 27 ноября

08
голосов

Если у вас сохранилось представление, что вычислительные кластеры – это удел избранных, то вы живете вчерашним днем. Сегодня они – совершенно привычное явление, и лидеры индустрии прикладывают максимум усилий, чтобы сделать их еще доступнее. Среди последних и Microsoft, предложившая около двух лет назад свою платформу для их построения – стандартную и привычную всем, кто имел дело с Windows. И эту инициативу уже поддержали многие поставщики решений, в том числе IBM и HP.

Windows как платформа для вычислительных кластеров
Правильное проектирование сетевой инфраструктуры – важный этап построения вычислительного кластера

Так уж исторически сложилось, что изначально два типа кластеров – высокой доступности (High Availability Cluster) и вычислительные (High Performance Computing Cluster) – развивались параллельно, занимая собственные ниши, благодаря своим особенностям и находясь в заоблачных ценовых категориях. Однако совершенствование технологий постепенно меняло эту ситуацию, а дополнительным фактором популяризации кластерных решений стало появление на рынке ОС общего назначения, таких как Microsoft Windows и Linux. Начиная с Windows NT 4.0 Microsoft сосредоточила свои усилия на средствах поддержки именно отказоустойчивых кластеров, которые, очевидно, более востребованны в корпоративной среде. К 2000 г. данные технологии стали доступны для массового рынка в виде соответствующих служб в стандартной поставке серверных редакций Windows 2000. Традиционно основное внимание уделялось упрощению развертывания и администрирования, снижению TCO, обеспечению эффективного взаимодействия с различными приложениями и аппаратной базой. Но вычислительные кластеры оставались вне зоны внимания Microsoft до 2005 г., когда на рынок была выпущена ОС Windows Compute Cluster Server 2003 (WCCS 2003). Сегодня сложно сказать, чем была вызвана такая задержка, но скорее всего Microsoft ориентировалась на реальные запросы своих клиентов. К этому моменту рынок уже достаточно насытился различными решениями других производителей, и, чтобы завоевать сердца и кошельки заказчиков, корпорация пошла проторенным и, как показывает опыт, беспроигрышным путем – снабдив WCCS 2003 массой вспомогательных технологий, позволяющих эффективно эксплуатировать вычислительные кластеры с минимальными затратами. Об успешности данного подхода косвенно свидетельствует и тот факт, что продукт не стал тупиковой веткой или всего лишь подсистемой в ОС, а «вырос» во вполне зрелую самостоятельную линейку, которая дополнится летом 2008 г. новой ОС Windows HPC Server 2008, сегодня уже доступной в бета-версии. Таким образом, сейчас мы имеем возможность не только оценить те или иные функции WCCS 2003, но и посмотреть, как они разовьются в Windows HPC Server 2008.

Технологически Windows Compute Cluster Server 2003 и ее наследница Windows HPC Server 2008 базируются на стандартных версиях Windows Server 2003/2008, что позволяет использовать все те преимущества, которые дает серверная платформа в части развертывания, администрирования, мониторинга и взаимодействия с другими системами в корпоративных сетях с инфраструктурой Microsoft. В комплект поставки продукта входят два диска, на первом из которых находится «слегка модифицированная» версия Windows Server 2003 x64 Standard Edition, а на втором – пакет, называемый Compute Cluster Pack. Упомянутая модификация позволяет существенно снизить стоимость решения, поскольку ограничивает ОС только одной ролью – узла вычислительного кластера. Но при этом сохраняются все прочие возможности, характерные для стандартной 64-битовой редакции Windows Server 2003: поддержка до четырех процессоров (напомним, в лицензионных соглашениях Microsoft «процессором» считается физический сокет, а не отдельные ядра), благодаря чему можно строить мощные многоядерные вычислители на базе современных процессоров с небольшой стоимостью, и до 64 ГБ оперативной памяти, которых должно хватить для самых сложных задач. Компоненты, входящие в Compute Cluster Pack, – это набор сервисов, утилит, протоколов (в первую очередь, MS-MPI), собственно, и обеспечивающий роль «вычислительный кластер» для базовой ОС. Такое разделение сделано умышленно. Для специально разработанных вычислительных задач, конечно, будет использоваться стандартная поставка WCCS 2003, но для ускорения вычислительных решений на «внешних» серверных продуктах (например, SQL Server, Excel Services) понадобятся стандартные редакции Windows Server 2003 – ведь WCCS 2003, напомним, ограничена только одной ролью. В таком случае в кластер можно добавить узлы под управлением обычных 64-битовых ОС, на которых будут развернуты требуемые серверы приложений путем простой установки на них Compute Cluster Pack.

Этап планирования кластера включает в себя определение двух ключевых особенностей архитектуры – физический тип вычислительной сети и назначение узлам конкретных ролей. Сетевая инфраструктура является одним из основных аспектов производительности. Хотя особых ограничений нет, все узлы могут работать в общей сети организации, для максимального эффекта рекомендуется разделять публичную, внутреннюю (частную) и так называемую MS-MPI сети. Первая обеспечивает связь главного узла с корпоративной сетью, через которую осуществляется взаимодействие с внешними приложениями, использующими ресурсы кластера, а также администрирование и прохождение запросов узлов кластера к другим ресурсам. Посредством второй организуется взаимодействие главного узла кластера с остальными для предварительной подготовки, развертывания, администрирования, мониторинга и т. п. Наконец, сеть MS-MPI может быть совмещена с внутренней, но с точки зрения производительности рекомендуется отдельная ее реализация на наиболее скоростных сетевых технологиях, например 10 GbE. Следовательно, идеальным можно считать такой набор аппаратного обеспечения, в котором главный узел кластера имеет три сетевых интерфейса, подключенных, соответственно, к публичной, внутренней и MS-MPI сетям, а остальные – по два, только для внутренней и MS-MPI.

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

После этапа проектирования сетевой архитектуры распределяются роли узлов кластера. Для WCCS 2003 их, как следует из сказанного выше, всего две – главный узел и рядовые вычислители. Однако в Windows HPC Server 2008 к ним добавлена еще одна – WCF Broker. Главный узел отвечает за основные задачи по запуску и управлению выполнением распределенных приложений на кластере, а также полностью обслуживает инфраструктуру вычислителей. Для этого используется Job Scheduler (компонент Compute Cluster Pack), который ставит задания на исполнение на определенных узлах, отслеживает работоспособность последних, оценивает эффективность и проектирует нагрузку на узлы в реальном времени путем переноса задач согласно текущей нагрузке.

Для развертывания новых узлов используются RIS (а для Windows HPC Server 2008 – Windows Deployment Services, WDS) и средства поддержки сетевой инфраструктуры – NAT (с применением Internet Connection Sharing) для связи вычислителей с публичной сетью, DHCP/DNS, а для Windows HPC Server 2008 – еще и служба обновления. Также на главном узле находится база данных под управлением SQL Server, в которой Job Scheduler хранит параметры задач и узлов. В WCCS 2003 применяется только MSDE, но в Windows HPC Server 2008 это может быть также полновесный SQL Server разных редакций, в том числе и Enterprise – в данном случае поддерживаются кластеризация главного узла (недоступная в WCCS 2003) и инструменты отчетности, позволяющие анализировать различные аспекты функционирования кластера. Кроме того, главный узел предоставляет ресурсы общих сетевых папок, через которые отдельные процессы той или иной задачи могут обмениваться промежуточными данными и результатами работы.

Как мы видим, главный узел кластера подвержен серьезным нагрузкам, поэтому для него должен использоваться наиболее производительный узел. Соответствующая роль назначается в процессе установки пакета Compute Cluster Pack, обычно на первом же узле, тогда выбирается и сетевая топологии будущего кластера. Все это выполняется с помощью мастера, который позволяет администратору установить необходимые параметры, а также выполнить ряд дополнительных операций, таких как настройка сетевых служб – WDS, NAT, DHCP, DNS и т. п.

Роль рядового вычислительного узла также может быть назначена при непосредственной установке Compute Cluster Pack, но чаще используются средства предварительной подготовки – создается WIM-образ эталонной системы, после чего все последующие развертываются по внутренней сети в автоматическом режиме средствами RIS или WDS (в зависимости от версии главного узла – 2003 или 2008 соответственно). Для этих целей годятся штатные серверы или рабочие станции, а на производительность в наибольшей степени влияет, конечно же, процессор.

Роль WCF Broker, добавленная в Windows HPC Server 2008, призвана упростить взаимодействие узлов кластера с приложениями, построенными по принципу SOA. Фактически, получив запрос от SOA-приложения, главный узел распределяет ресурсы и передает эту информацию WCF Broker, который затем запускает соответствующие процессы и поддерживает коммуникации с приложением в манере XML-сервисов.

Стоит отметить, что уже в процессе реальной эксплуатации кластеров WCCS 2003 был обнаружен некоторый архитектурный недочет – сравнительно низкая утилизация пропускной способности сети со стороны протокола MS-MPI. Поэтому в Windows HPC Server 2008 был использован своего рода «трюк» под названием Network Direct, по сути, модифицирующий процесс работы с сетью за счет обхода WinSocs и стека TCP/IP запросами MS-MPI – они напрямую передаются на аппаратный уровень, что обеспечивает максимальную утилизацию сети (особенно высокоскоростной, вроде 10 GbE) при обмене сообщениями между вычислительными процессами. Кроме этого, в Windows HPC Server 2008 (и в обычном Windows Server 2008) может быть применена технология NUMA, а новый протокол SMB v2 и сам по себе позволяет значительно поднять производительность при работе с сетевыми папками.

Windows как платформа для вычислительных кластеров
Администратору доступно фактически готовое руководство по развертыванию кластера, основанное на практическом опыте

Средства администрирования и мониторинга кластера – это визитная карточка вычислительной платформы от Microsoft и, особенно, Windows HPC Server 2008. Они могут быть установлены из пакета Compute Cluster Pack и на главный узел кластера, и на любую рабочую станцию в корпоративной сети. При этом они доступны в виде как привычных административных консолей в стиле Microsoft System Center, так и утилит командной строки на базе PowerShell. В первом случае администратору предлагается исчерпывающее представление сформированной инфраструктуры с группировкой объектов по типам и списком рекомендованных операций, составленным на основе лучших практик.

Кроме того, функции управления кластером могут быть полностью интегрированы в корпоративную систему мониторинга под управлением Microsoft System Center Operations Manager 2007 – к WCCS 2003 и Windows HPC Server 2008 бесплатно поставляются соответствующие пакеты.

Итак, хотя WCCS 2003 и не хватает звезд с неба, она всего за два года нашла свою нишу и присутствует даже в списке 500 самых производительных решений (хотя такая задача разработчиками не ставилась). А учитывая характер изменений в Windows HPC Server 2008, направленных именно на повышение быстродействия, можно предположить, что популярность данной платформы будет расти. Кстати, вычислительные кластеры на платформе Microsoft уже развернуты и в Украине: два из них успешно эксплуатируются в академической среде и еще несколько – в производстве, например при создании видео.

Полную версию этой статьи вы можете прочитать в "Компьютерном обозрении" № 45 от 27 ноября 2007 г.

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

08
голосов

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

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

Кластер под Windows?... Куда мир катится?...

Мир-то катится, но виндовс на HPC как был неудачной шуткой, так и остался. 1% в top500 -- ценой невероятных потуг Microsoft Corp.

--
Michael Shigorin

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT