Открыть сервис

Microsoft Cluster Server

Microsoft Cluster Server (MSCS) — программный продукт корпорации Microsoft, предназначенный для обеспечения высокой доступности и отказоустойчивости серверных приложений и служб путём объединения нескольких физических серверов в кластер. Впервые выпущен в 1997 году как дополнение к Windows NT 4.0 Enterprise Edition, впоследствии стал встроенным компонентом серверных операционных систем Windows (Windows 2000 Advanced Server, Windows Server 2003/2008/2012/2016/2019/2022). В современной терминологии технология известна как Microsoft Failover Cluster (отказоустойчивый кластер), однако аббревиатура MSCS продолжает использоваться для обозначения архитектурного решения.

История

Разработка кластерной технологии в Microsoft началась в середине 1990-х годов в ответ на потребности корпоративных заказчиков, которым требовалась отказоустойчивость для критически важных приложений (баз данных, файловых серверов). Первая версия, Microsoft Cluster Server 1.0, вышла в 1997 году и поддерживала кластеры из двух узлов, работающих под управлением Windows NT 4.0 Enterprise Edition. Основным сценарием использования была поддержка SQL Server и Exchange Server в конфигурации active/passive.

В Windows 2000 Advanced Server и Datacenter Server технология была переименована в Cluster Service, а в Windows Server 2003 — в Failover Clustering. Начиная с Windows Server 2008, кластеризация стала поддерживать до 16 узлов, а также появилась возможность использования кластера без общего дискового хранилища (cluster without shared storage). В Windows Server 2012 и более поздних версиях функциональность была значительно расширена: добавлена поддержка Hyper-V, виртуальных дисков, а также упрощено управление через PowerShell.

Архитектура и принципы работы

Кластер MSCS представляет собой группу независимых серверов (узлов), которые совместно управляют общими ресурсами. Основные компоненты архитектуры:

  • Узлы кластера — физические или виртуальные серверы, каждый из которых работает под управлением Windows Server.
  • Кворум — специальный ресурс (диск, файловый ресурс или облачный свидетель), обеспечивающий согласованность состояния кластера и предотвращающий «расщепление мозга» (split-brain), когда узлы одновременно пытаются взять управление на себя.
  • Общие ресурсы — диски, файловые серверы, IP-адреса, сетевые имена, приложения и службы, которые могут переключаться между узлами.
  • Cluster Service — служба, управляющая состоянием кластера, отслеживающая доступность узлов и инициирующая переключение (failover).

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

При отказе одного из узлов (аппаратный сбой, остановка службы, потеря сетевого соединения) остальные узлы через механизм «сердцебиения» (heartbeat) обнаруживают проблему и в течение нескольких секунд переключают ресурсы на себя. Для клиентов этот процесс практически незаметен, однако для приложений с длительными транзакциями могут потребоваться механизмы восстановления.

Классификация и типы кластеров

MSCS поддерживает несколько типов кластеров, различающихся по назначению:

  • Отказоустойчивый кластер (Failover Cluster) — обеспечивает высокую доступность путём автоматического переключения ресурсов при сбое. Используется для SQL Server, Exchange, файловых служб.
  • Кластер с балансировкой нагрузки (Network Load Balancing, NLB) — распределяет входящий трафик между несколькими узлами, работающими с одинаковыми приложениями. NLB применяется для веб-серверов IIS, служб терминалов и других stateless-приложений.
  • Кластер для высокопроизводительных вычислений (HPC Cluster) — используется для параллельных вычислений, основан на Windows HPC Server (позже — Microsoft HPC Pack).

По конфигурации хранилища кластеры делятся на:

  • Кластеры с общим хранилищем (shared storage) — узлы подключаются к общему дисковому массиву (SAN, iSCSI, Fibre Channel).
  • Кластеры без общего хранилища (cluster without shared storage) — данные реплицируются между узлами с помощью DFS Replication или Storage Replica.

Применение

Основные сценарии использования MSCS:

  • Базы данных — обеспечение отказоустойчивости Microsoft SQL Server (включая Always On Failover Cluster Instances).
  • Почтовые службыкластеризация Microsoft Exchange Server.
  • Файловые серверы — организация высокодоступных файловых ресурсов (Scale-Out File Server в Windows Server 2012+).
  • Виртуализация — отказоустойчивость виртуальных машин Hyper-V.
  • Бизнес-приложения — кластеризация SAP, Oracle (на Windows) и других корпоративных систем.

Преимущества и ограничения

К преимуществам MSCS относят: встроенность в Windows Server (не требуется дополнительное лицензирование), относительно простую настройку через мастер создания кластера, поддержку до 64 узлов в современных версиях, а также интеграцию с Active Directory и PowerShell.

Ограничения включают: зависимость от аппаратной совместимости (оборудование должно быть сертифицировано Microsoft для кластеризации), невозможность защиты от сбоев приложений без дополнительных механизмов (например, агентов), а также необходимость квалифицированного администрирования. Кроме того, классический MSCS не обеспечивает защиту от катастроф на уровне целого дата-центра — для этого используется геокластеризация (stretch cluster) с репликацией на большие расстояния.

См. также

  • Отказоустойчивость
  • Кластер (группа компьютеров)
  • Windows Server

Источники

  • Microsoft Docs: Failover Clustering in Windows Server.
  • Microsoft Press: «Microsoft Windows Server 2008: The Complete Reference».
  • Таненбаум Э., ван Стеен М. «Распределённые системы. Принципы и парадигмы».

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →