Титаны кластерного фронта: Решения для построения кластеров от Microsoft и Oracle. Отказоустойчивая кластеризация - общие сведения

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

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

Разработка вычислительных кластеров не является сильной стороной Microsoft. Об этом свидетельствует, в том числе, тот факт, что разработки компании не попали в список Top-500 суперкомпьютеров. Поэтому совершенно логично, что в линейке Windows Server 2012 отсутствует редакция HPC (High-performance computing -высокопроизводительные вычисления).

Кроме того, учитывая особенности высокопроизводительных вычислений, платформа Windows Azure кажется более перспективной. Поэтому компания Microsoft сосредоточила свое внимание на кластерах высокой доступности.

Кластеры в Windows.

Впервые поддержка кластеров была реализована компанией Microsoft еще в операционной системе в Windows NT 4 Server Enterprise Edition в виде технологии Microsoft Cluster Service (MSCS). В операционной системе Windows Server 2008 она превратилась в компонент Failover Clustering. По сути это кластеры с обработкой отказа или высокодоступные кластеры, хотя иногда их не вполне корректно называют отказоустойчивыми.

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

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

С момента первой реализации, поддержка кластеров в Windows существенно изменилась. Была реализована поддержка файловых и сетевых служб, позже SQL Server (в операционной системе Windows Server 2000), Exchange Server (в Windows Server 2003), и другие стандартные службы и роли, включая Hyper-V (в операционной системе Windows Server 2008). Была улучшена масштабируемость (до 64 узлов в Windows Server 2012), список кластеризуемых сервисов был расширен.

Поддержка виртуализации, а также позиционирование Windows Server как облачной операционной системы, стали поводом для дальнейшего развития поддержки кластеров, поскольку высокая плотность вычислений предъявляет высокие требования к надежности и доступности инфраструктуры. Поэтому, начиная с операционной системы Windows Server 2008, именно в этой области сосредоточена основная масса усовершенствований.

В операционной системе Windows Server 2008 R2 реализованы общие тома кластера Hyper-V (CSV), позволяющие узлам одновременно обращаться к одной файловой системе NTFS. В результате несколько кластерных виртуальных машин могут использовать один адрес LUN и мигрировать с узла на узел независимо.

В Windows Server 2012 кластерная поддержка Hyper-V была усовершенствована. Была добавлена возможность управления на уровне целого кластера приоритетами виртуальных машин, определяющих порядок перераспределения памяти, восстановления вирутальных машин в случае выхода из строя узлов или запланированной массовой миграции. Были расширены возможности мониторинга - в случае сбоя контролируемой службы появилась возможность перезапуска не только самой службы, но и всей виртуальной машины. Есть возможность осуществления миграции на другой, менее загруженный узел. Реализованы и другие, не менее интересные нововведения, касающиеся кластеризации.

Кластеры в Windows Server 2012.

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

SMB 3.0

Новая версия протокола SMB 3.0 используется для сетевого обмена данными. Этот протокол востребован при выполнении чтения, записи и других файловых операций на удаленных ресурсах. В новой версии реализовано большое количество усовершенствований, которые позволяют оптимизировать работу SQL Server, Hyper-V и файловых кластеров. Обратим внимание на следующие обновления:

  • прозрачная отказоустойчивость . Это новшество обеспечивает непрерывность выполнения операций. При сбое одного из узлов файлового кластера текущие операции автоматически передаются другому узлу. Благодаря этому нововведению стала возможной реализация схемы Active-Active с поддержкой до 8 узлов.
  • масштабирование. Благодаря новой реализации общих томов кластера (версия 2.0) существует возможность одновременного доступа к файлам через все узлы кластера, за счет чего достигается агрегация пропускной способности и осуществляется балансировка нагрузки.
  • SMB Direct. Реализована поддержка сетевых адаптеров с технологией RDMA. Технология RDMA (удаленный прямой доступ к памяти) позволяет передавать данные непосредственно в память приложения, существенно освобождая центральный процессор.
  • SMB Multichannel. Позволяет агрегировать пропускную способность и повышает отказоустойчивость при наличии нескольких сетевых путей между сервером с поддержкой SMB 3.0 и клиентом.

Необходимо сказать, что для использования этих возможностей поддержка SMB 3.0 должна присутствовать на обоих концах соединения. Компания Microsoft рекомендует использование серверов и клиентов одного поколения (в случае с Windows Server 2012 такой клиентской платформой является Windows 8). К сожалению, на сегодня Windows 7 поддерживает только SMB версии 2.1.

Storage Spaces.

Технология Storage Spaces реализована впервые в операционных системах Windows Server 2012 и Windows 8. Реализована поддержка новой файловой системы ReFS, которая обеспечивает функции повышения отказоустойчивости. Есть возможность назначения дисков в пуле для горячей замены (в случае отказа других носителей или для быстрой замены исчерпавшего свой ресурс SSD). Кроме того, расширены возможности тонкой настройки с использованием PowerShell.

По сути, технология Storage Spaces является программной реализацией RAID, расширенной за счет большого числа дополнительных функций. Во-первых, накопители с прямым доступом должны быть объединены в пулы. В принципе накопители могут быть любых типов и мощностей, однако для организации стабильной работы необходимо четкое понимание принципов функционирования технологии.

  • простой (является аналогом RAID 0);
  • зеркало (двухстороннее зеркало является аналогом RAID1, трехстороннее зеркало представляет собой более сложную схему наподобие RAID 1E)
  • с контролем четности (является аналогом RAID 5. Данный вариант обеспечивает минимальный перерасход пространства при минимальной отказоустойчивости).

Технология Storage Spaces не является абсолютным новшеством. Похожие возможности были давно реализованы в Windows Server, например в форме динамических дисков. Технология Storage Spaces позволяет сделать использование всех этих возможностей более удобными и обеспечить новый уровень использования. Среди прочих преимуществ Storage Spaces необходимо отметить тонкую инициализацию (thin provisioning), которая дает возможность назначать виртуальным дискам размеры сверх доступных в реальности из расчета на добавление в соответствующий пул новых накопителей впоследствии.

Один из наиболее непростых вопросов, связанных с технологией Storage Spaces - это производительность. Как правило, программные реализации RAID уступают по производительности аппаратным вариантам. Однако, если речь идет о файловом сервере, то Storage Spaces получает в свое распоряжение большой объем оперативной памяти и мощный процессор, поэтому необходимо тестирование с учетом различных видов нагрузки. С этой точки зрения особую ценность приобретают возможности тонкой настройки с использованием PowerShell.

Технология Storage Spaces предлагает отказ от RAID-контроллеров и дорогих систем хранения, перенеся из логику на уровень операционной системы. Эта идея раскрывает все свои достоинства и оказывается достаточно привлекательной вместе с еще одним новшеством.

Scale-Out File Server (SOFS).

Еще одним новшеством является режим кластеризуемой роли File Server в Windows Server 2012, который получил название Scale-Out File Server. Теперь реализована поддержка двух типов кластеризации, названия которых полностью звучат как File Sever for General Use и Scale-Out File Server (SOFS) for application data. Каждая из технологий имеет свои сферы применения, а также свои достоинства и недостатки.

Всецелевой файловый сервер представляет собой хорошо известный тип кластера Active-Passive. В свою очередь SOFS представляет собой кластер Active-Active, являясь действительно отказоустойчивой конфигурацией. Для совместного доступа к соответствующим папкам используется опция Continuously Available.

Помимо отличных характеристик отказоустойчивости это обеспечивает повышение пропускной способности при условии рационального проектирования сетевой архитектуры. Проксирующая файловая система CSV 2.0 (CSVFS) позволяет уменьшить влияние CHKDSK, позволяя утилите выполнять необходимые операции, сохраняя при этом возможность работы с томом активных приложений. Реализовано кэширование чтения с CSV. Использование CSV обеспечивает простоту и удобство развертывания и управления. Пользователю нужно создать обычный кластер, настроить том CSV и активировать роль файлового сервера в режиме Scale-Out File Server for application data.

Благодаря простоте и функциональности предложенного решения сформировался новый класс оборудования «кластер-в-коробке» (Сluster-in-a-Box, CiB). Как правило, это шасси с двумя блейд-серверами и дисковым массивом SAS JBOD с поддержкой Storage Spaces. Здесь важно, чтобы SAS JBOD были двухпортовыми, и имелся SAS HBA для реализации перекрестного подключения.

Такая организация системы ориентирована именно на поддержку SOFS. Учитывая, что iSCSI target стандартно интегрирован в Windows Server 2012 и также может быть кластеризована, таким образом может реализовать «самодельную» систему хранения данных на базе всецелевой операционной системы.

Однако следует иметь ввиду, что владельцем CSV по-прежнему является один из узлов, который отвечает за все операции с метаданными. При большом количестве метаданных может наблюдаться снижение производительности, поэтому для SOFS не рекомендуется использовать сценарий Information Worker, тогда как Hyper-V и SQL Server идеально подходят для этого, в том числе благодаря функциям агрегации пропускной способности.

Другие новшества технологий кластеризации Windows.

Выше мы перечислили только самые важные и крупные новшества в области кластеризации в Windows Server 2012. Другие менее крупные нововведения, однако, тоже появились не случайно.

Была расширена поддержка виртуализации за счет существенного упрощения создания гостевых кластеров (из виртуальных машин). В отличие от Windows Server 2008 R2, где для этого нужно было предоставить iSCSI Target в общее пользование виртуальных машин, в операционной системе Windows Server 2012 появилась функция, позволяющая виртуализировать FC-контроллер (по аналогии с сетевыми адаптерами), за счет чего виртуальные машины получают возможность непосредственного доступ к LUN. Реализован и более простой вариант с использованием общей сетевой папки SMB 3.0 для гостевых Windows Server 2012.

Одной из важных, но нетривиальных задач является установка программных обновлений в кластере. При этом может потребоваться перезагрузка узлов, поэтому процедура должна контролироваться. В операционной системе Windows Server 2012 предлагается инструмент Cluster-Aware Updating, который работает следующим образом: один из узлов назначается координатором и следит за наличием обновлений, загружает их на остальные узлы и выполняет поочередное обновление узлов, начиная с тех, которые загружены меньше всего. Благодаря этому доступность кластера сохраняется на максимально возможном уровне в течение всего процесса обновления.

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

Новшества в Windows Server 2012 R2.

Операционная система Windows Server 2012 R2 не является простым обновлением Windows Server 2012, а представляет собой полноценную новую операционную систему. Новшества, реализованные в Windows Server 2012 R2 переводят некоторые возможности серверной платформы на качественно новый уровень. В первую очередь это касается SOFC и Hyper-V.

Высокодоступные виртуальные машины.

Упрощена процедура создания гостевых кластеров, поскольку теперь появилась возможность использовать в качестве общего хранилища обычные VHDX, которые внутри виртуальной машины будут представлены как Shared SAS-диски. При этом сами VHDX должны быть размещены на CSV или в общих папках SMB 3.0. При этом в виртуальных машинах могут использоваться как Windows Server 2012 R2, так и Windows Server 2012 (с обновленными интеграционными компонентами).

Опция DrainOnShutdown призвана избавить системных администраторов от ошибок и лишней работы. Функция активирована по умолчанию и при плановых перезагрузках или выключениях заранее переводит узел в такой режим обслуживания при котором эвакуируются все кластеризованные роли. При этом происходит миграция активных виртуальных машин на другие узлы кластера Hyper-V.

Также в новой операционной системе Windows Server 2012 R2 Hyper-V производит мониторинг сетевых интерфейсов в виртуальных машинах и в случае возникновения проблемы запускает процесс их миграции на узел, где доступна внешняя сеть.

Кворум.

Кроме динамического кворума в Windows Server 2012 R2 реализован еще и динамический диск-свидетель (witness). При изменении числа узлов его голос может быть автоматически учтен, так, чтобы общее число голосов оставалось нечетным. В случае, если сам диск окажется недоступным, его голос будет просто обнулен. Такая схема позволяет полностью положиться на автоматические механизмы, отказавшись от моделей кворума.

Увеличена надежность работы кластеров, размещенных на двух площадках. Часто при такой реализации на каждой площадке находится ровно половина узлов, поэтому нарушения коммуникации между площадками может возникнуть проблема с формированием кворума. Хотя с большинством подобных ситуаций успешно справляется механизм динамического кворума, в Windows Server 2012 R2 существует возможность назначить одной из площадок низкий приоритет, для того, чтобы в случае сбоя кластер всегда функционировал на основной площадке. В случае, если кластер был запущен с принудительным кворумом, то при восстановлении связи с удаленной площадкой службы кластера будут перезапущены в автоматическом режиме и весь кластер будет вновь объединен.

CSV 2.1

Существенные изменения коснулись и реализации CSV. Теперь роли владельцев томов равномерно распределяются по узлам в автоматическом режиме, в соответствии с изменением их числа. Увеличена отказоустойчивость CSV благодаря тому, что на каждом узле кластера запускается по два экземпляра серверной службы. Один используется для обслуживания клиентского SMB-трафика, другой обеспечивает коммуникацию между узлами. При этом обязательно производится мониторинг службы и в случае сбоя роль владельца CSV мигрирует на другой узел.

Целый ряд новшеств в CSV обеспечивает более эффективное использование SOFC и Storage Spaces. Добавлена поддержка файловой системы ReFS, которая обладает более совершенной, чем NTFS внутренней организацией. Скорее всего постепенно эта файловая система займет ведущее положение в продуктах компании Microsoft. Также в Windows Server 2012 R2 реализован механизм дедупликации, который ранее был прерогативой всецелевого файлового сервера. Активация дедупликации приводит к отключению CSV Block Cache, однако в некоторых случаях она может быть достаточно эффективной. Тома CSV могут создаваться на дисковых пространствах с контролем четности.

В Windows Server 2012 R2 возможность комбинировать накопители различных типов приобрела особый смысл с многоуровневыми пространствами. Появилась возможность формировать два уровня быстрый (на основе SSD) и емкий (на основе жестких дисках) и при создании виртуального диска выделять определенный объем из каждого из них. Далее в соответствии с некоторым расписанием содержимое виртуального диска будет анализироваться и размещаться блоками по 1 МБ на более быстрых или медленных носителях в зависимости от востребованности. Другим применением многоуровневых пространств является реализация кэша с обратной записью на SSD. В моменты пиковых нагрузок запись осуществляется на быстрые твердотельные накопители, а позже холодные данные перемещаются на более медленные жесткие диски.

Новшества, касающиеся CSV и Storage Spaces, являются наиболее существенными в Windows Server 2012 R2. На их основе можно разворачивать не просто надежные файловые серверы, а мощные и гибкие системы хранения данных с прекрасными возможностями масштабирования и отличной отказоустойчивостью, предоставляющие в распоряжение пользователя широкий спектр современных инструментов.

Уже на этапе планирования будущей виртуальной инфраструктуры следует задуматься об обеспечении высокой доступности ваших виртуальных машин. Если в обычной ситуации временная недоступность одного из серверов еще может быть приемлема, то в случае остановки хоста Hyper-V недоступной окажется значительная часть инфраструктуры. В связи с чем резко вырастает сложность администрирования - остановить или перезагрузить хост в рабочее время практически невозможно, а в случае отказа оборудования или программного сбоя получим ЧП уровня предприятия.

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

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

В данном материале мы будем рассматривать наиболее простую конфигурацию отказоустойчивого кластера, состоящего из двух узлов (нод) SRV12R2-NODE1 и SRV12R2-NODE2, каждый из которых работает под управлением Windows Server 2012 R2. Обязательным условием для этих серверов является применение процессоров одного производителя, только Intel или только AMD, в противном случае миграция виртуальных машин между узлами будет невозможна. Каждый узел должен быть подключен к двум сетям: сети предприятия LAN и сети хранения данных SAN.

Вторым обязательным условием для создания кластера является наличие развернутой Active Directory, в нашей схеме она представлена контроллером домена SRV12R2-DC1.

Хранилище выполнено по технологии iSCSI и может быть реализовано на любой подходящей платформе, в данном случае это еще один сервер на Windows Server 2012 R2 - SRV12R2-STOR. Сервер хранилища может быть подключен к сети предприятия и являться членом домена, но это необязательное условие. Пропускная способность сети хранения данных должна быть не ниже 1 Гбит/с.

Будем считать, что на оба узла уже установлена операционная система, они введены в домен и сетевые подключения настроены. Откроем Мастер добавления ролей и компонентов и добавим роль Hyper-V .

Следующим шагом добавим компоненту Отказоустойчивая кластеризация .

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

Миграцию виртуальных машин оставляем выключенной .

Остальные параметры оставляем без изменения. Установка роли Hyper-V потребует перезагрузку, после чего аналогичным образом настраиваем второй узел.

Затем перейдем к серверу хранилища, как настроить iSCSI-хранилище на базе Windows Server 2012 мы рассказывали в , но это непринципиально, вы можете использовать любой сервер цели iSCSI. Для нормальной работы кластера нам потребуется создать минимум два виртуальных диска: диск свидетеля кворума и диск для хранения виртуальных машин. Диск-свидетель - это служебный ресурс кластера, в рамках данной статьи мы не будем касаться его роли и механизма работы, для него достаточно выделить минимальный размер, в нашем случае 1ГБ.

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

И сопоставьте данной цели созданные виртуальные диски.

Настроив хранилище, вернемся на один из узлов и подключим диски из хранилища. Помните, что если сервер хранилища подключен также к локальной сети, то при подключении к цели iSCSI укажите для доступа сеть хранения данных .

Подключенные диски инициализируем и форматируем.

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

После чего откроем Диспетчер Hyper-V и перейдем к настройке виртуальных коммутаторов. Их название на обоих узлах должно полностью совпадать .

Теперь у нас все готово к созданию кластера. Запустим оснастку Диспетчер отказоустойчивых кластеров и выберем действие Проверить конфигурацию .

В настройках мастера добавим настроенные нами узлы и выберем выполнение всех тестов.

Проверки занимают ощутимое время, при возникновении каких-либо ошибок их необходимо исправить и повторить проверку.

Если существенных ошибок не обнаружено работа мастера завершится и он предложит вам создать на выбранных узлах кластер.

Однако, если проверка выдала предупреждения, мы советуем изучить отчет и выяснить на что влияет данное предупреждение и что нужно сделать для его устранения. В нашем случае мастер предупреждал нас об отсутствии избыточности в сетевых подключениях кластера, по умолчанию кластер не использует сети iSCSI, что нетрудно исправить позднее.

При создании кластера для него создается виртуальный объект, обладающий сетевым именем и адресом. Укажем их в открывшемся Мастере создания кластеров .

Больше вопросов не последует и мастер сообщит нам, что кластер создан, выдав при этом предупреждение об отсутствии диска-свидетеля.

Закроем мастер и развернем дерево слева до уровня Хранилище - Диски , в доступных действиях справа выберем Добавить диск и укажем подключаемые диски в открывшемся окне, в нашем случае их два.

Затем щелкнем правой кнопкой мыши на объекте кластера в дереве слева и выберем Дополнительные действия - Настроить параметры кворума в кластере .

Далее последовательно выбираем: Выбрать свидетель кворума - Настроить диск-свидетель и указываем созданный для этих целей диск.

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

Для того, чтобы диск мог использоваться сразу несколькими участниками кластера на нем создается CSVFS - реализуемая поверх NTFS кластерная файловая система, впервые появившаяся в Windows Server 2008 R2 и позволяющая использовать такие функции как Динамическая (Живая) миграция, т.е. передачу виртуальной машины между узлами кластера без остановки ее работы.

Общие хранилища становятся доступны на всех узлах кластера в расположении C:\ClusterStorage\VolumeN . Обратите внимание, что это не просто папки на системном диске, а точки монтирования общих томов кластера.

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

На этом настройка кластера закончена. Для работы с кластеризованными виртуальными машинами следует использовать Диспетчер отказоустойчивости кластеров , а не Диспетчер Hyper-V , который предназначен для управления виртуалками расположенными локально.

Чтобы создать виртуальную машину перейдите в раздел Роли в меню правой кнопки мыши выберите Виртуальные машины - Создать виртуальную машину , это же можно сделать и через панель Действия справа.

Прежде всего выберите узел, на котором будет создана виртуальная машина. Каждая виртуалка работает на определенном узле кластера, мигрируя на другие узлы при остановке или отказе своей ноды.

После выбора узла откроется стандартный Мастер создания виртуальной машины, работа с ним не представляет сложности, поэтому остановимся только на значимых моментах. В качестве расположения виртуальной машины обязательно укажите один из общих томов кластера C:\ClusterStorage\VolumeN .

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

После создания виртуальной машины перейдите в ее Параметры и в пункте Процессоры - Совместимость установите флажок Выполнить перенос на физический компьютер с другой версией процессора , это позволит выполнять миграцию между узлами с разными моделями процессоров одного производителя . Миграция с Intel на AMD или наоборот невозможна .

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

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

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

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

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

На этом настройка виртуальной машины закончена, можем запускать и работать с ней.

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

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

Завершение работы приостанавливается до тех пор, пока не будут переданы все виртуальные машины.

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

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

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

Кластер Hyper-V не обеспечивает отказоустойчивости виртуальным машинам, отказ узла приводит к отказу всех размещенных на нем машин, но он позволяет обеспечить вашим службам высокую доступность, автоматически восстанавливая их работу и обеспечивая минимально возможное время простоя. Также он позволяет значительно облегчить администрирование виртуальной инфраструктуры позволяя перемещать виртуальные машины между узлами без прерывания их работы.

  • Теги:

Please enable JavaScript to view the

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

Виды кластеров

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

  • Кластеры высокой готовности или отказоустойчивые кластеры (high-availability clusters или failover clusters) используют избыточные узлы для обеспечения работы в случае отказа одного из узлов.
  • Кластеры балансировки нагрузки (load-balancing clusters) служат для распределения запросов от клиентов по нескольким серверам, образующим кластер.
  • Вычислительные кластеры (compute clusters), как следует из названия, используются в вычислительных целях, когда задачу можно разделить на несколько подзадач, каждая из которых может выполняться на отдельном узле. Отдельно выделяют высокопроизводительные кластеры (HPC - high performance computing clusters), которые составляют около 82% систем в рейтинге суперкомпьютеров Top500.

Системы распределенных вычислений (gird) иногда относят к отдельному типу кластеров, который может состоять из территориально разнесенных серверов с отличающимися операционными системами и аппаратной конфигурацией. В случае грид-вычислений взаимодействия между узлами происходят значительно реже, чем в вычислительных кластерах. В грид-системах могут быть объединены HPC-кластеры, обычные рабочие станции и другие устройства.

Такую систему можно рассматривать как обобщение понятия «кластер». ластеры могут быть сконфигурированы в режиме работы active/active, в этом случае все узлы обрабатывают запросы пользователей и ни один из них не простаивает в режиме ожидания, как это происходит в варианте active/passive.

Oracle RAC и Network Load Balancing являются примерами active/ active кластера. Failover Cluster в Windows Server служит примером active/passive кластера. Для организации active/active кластера требуются более изощренные механизмы, которые позволяют нескольким узлам обращаться к одному ресурсу и синхронизовать изменения между всеми узлами. Для организации кластера требуется, чтобы узлы были объединены в сеть, для чего наиболее часто используется либо традиционный Ethernet, либо InfiniBand.

Программные решения могут быть довольно чувствительны к задержкам - так, например, для Oracle RAC задержки не должны превышать 15 мс. В качестве технологий хранения могут выступать Fibre Channel, iSCSI или NFS файловые сервера. Однако оставим аппаратные технологии за рамками статьи и перейдем к рассмотрению решений на уровне операционной системы (на примере Windows Server 2008 R2) и технологиям, которые позволяют организовать кластер для конкретной базы данных (OracleDatabase 11g), но на любой поддерживаемой ОС.

Windows Clustering

У Microsoft существуют решения для реализации каждого из трех типов кластеров. В состав Windows Server 2008 R2 входят две технологии: Network Load Balancing (NLB) Cluster и Failover Cluster. Существует отдельная редакция Windows Server 2008 HPC Edition для организации высокопроизводительных вычислительных сред. Эта редакция лицензируется только для запуска HPC-приложений, то есть на таком сервере нельзя запускать базы данных, web- или почтовые сервера.

NLB-кластер используется для фильтрации и распределения TCP/IPтрафика между узлами. Такой тип кластера предназначен для работы с сетевыми приложениями - например, IIS, VPN или межсетевым экраном.

Могут возникать сложности с приложениями, которые полага ются на сессионные данные, при перенаправлении клиента на другой узел, на котором этих данных нет. В NLB-кластер можно включать до тридцати двух узлов на x64-редакциях, и до шестнадцати - на x86.

Failoverclustering - это кластеризации с переходом по отказу, хотя довольно часто термин переводят как «отказоустойчивые кластеры».

Узлы кластера объединены программно и физически с помощью LAN- или WAN-сети, для multi-site кластера в Windows Server 2008 убрано требование к общей задержке 500 мс, и добавлена возможность гибко настраивать heartbeat. В случае сбоя или планового отключения сервера кластеризованные ресурсы переносятся на другой узел. В Enterprise edition в кластер можно объединять до шестнадцати узлов, при этом пятнадцать из них будут простаивать до тех пор, пока не произойдет сбой. Приложения без поддержки кластеров (cluster-unaware) не взаимодействуют со службами кластера и могут быть переключены на другой узел только в случае аппаратного сбоя.

Приложения с поддержкой кластеров (cluster-aware), разработанные с использованием ClusterAPI, могут быть защищены от программных и аппаратных сбоев.

Развертывание failover-кластера

Процедуру установки кластера можно разделить на четыре этапа. На первом этапе необходимо сконфигурировать аппаратную часть, которая должна соответствовать The Microsoft Support Policy for Windows Server 2008 Failover Clusters. Все узлы кластера должны состоять из одинаковых или сходных компонентов. Все узлы кластера должны иметь доступ к хранилищу, созданному с использованием FibreChannel, iSCSI или Serial Attached SCSI. От хранилищ, работающих с Windows Server 2008, требуется поддержка persistent reservations.

На втором этапе на каждый узел требуется добавить компонент Failover Clustering - например, через Server Manager. Эту задачу можно выполнять с использованием учетной записи, обладающей административными правами на каждом узле. Серверы должны принадлежать к одному домену. Желательно, чтобы все узлы кластера были с одинаковой ролью, причем лучше использовать роль member server, так как роль domain controller чревата возможными проблемами с DNS и Exchange.

Третий не обязательный, но желательный этап заключается в проверке конфигурации. Проверка запускается через оснастку Failover Cluster Management. Если для проверки конфигурации указан только один узел, то часть проверок будет пропущена.

На четвертом этапе создается кластер. Для этого из Failover Cluster Management запускается мастер Create Cluster, в котором указываются серверы, включаемые в кластер, имя кластера и дополнительные настройки IP-адреса. Если серверы подключены к сетям, которые не будут использоваться для общения в рамках кластера (например, подключение только для обмена данными с хранилищем), то в свойствах этой сети в Failover Cluster Management необходимо установить параметр «Do not allow the cluster to use this network».

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

Для этого необходимо запустить High Availability Wizard, который можно найти в Services and Applications оснастки Failover Cluster Management.

Cluster Shared Volumes

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

Еще одна проблема, возникающая из-за того, что LUN является минимальной единицей обхода отказа, заключается в том, что при сбое одного приложения, находящегося на LUN, приходится переключать все приложения, которые хранятся на этом LUN, на другой сервер. Во всех приложениях (включая Hyper-V до второго релиза Server 2008) это удавалось обходить за счет многочисленных LUN, на каждом из которых хранились данные только одного приложения. В Server 2008 R2 появилось решение для этих проблем, но предназначенное для работы только с Hyper-V и CSV (Cluster Shared Volumes).

CSV позволяет размещать на общем хранилище виртуальные машины, запускаемые на разных узлах кластера - тем самым разбивается зависимость между ресурсами приложения (в данном случае виртуальными машинами) и дисковыми ресурсами. В качестве файловой системы CSV использует обычную NTFS. Для включения CSV необходимо в Failover Cluster Manage выполнить команду Enable Cluster Shared Volumes. Отключить поддержку CSV можно только через консоль:

Get-Cluster | %{$_.EnableSharedVolumes = "Disabled"}

Для использования этой команды должен быть загружен Failover Clusters, модуль PowerShell. Использование CSV совместно с live migration позволяет перемещать виртуальные машины между физическими серверами в считанные миллисекунды, без обрыва сетевых соединений и совершенно прозрачно для пользователей. Стоит отметить, что копировать любые данные (например, готовые виртуальные машины) на общие диски, использующие CSV, следует через узел-координатор.

Несмотря на то, что общий диск доступен со всех узлов кластера, перед записью данных на диск узлы запрашивают разрешение у узлакоординатора. При этом, если запись требует изменений на уровне файловой системы (например, смена атрибутов файла или увеличение его размера), то записью занимается сам узел-координатор.

Oracle RAC

Oracle Real Application Clusters (RAC) - это дополнительная опция Oracle Database, которая впервые появилась в Oracle Database 9i под названием OPS (Oracle Parallel Server). Опция предоставляет возможность нескольким экземплярам совместно обращаться к одной базе данных. Базой данных в Oracle Database называет ся совокупность файлов данных, журнальных файлов, файлов параметров и некоторых других типов файлов. Для того, чтобы пользовательские процессы могли получить доступ к этим данным, должен быть запущен экземпляр. Экземпляр (instance) в свою очередь состоит из структур памяти (SGA) и фоновых процессов. В отсутствии RAC получить доступ к базе данных может строго один экземпляр.

Опция RAC не поставляется с Enterprise Edition и приобретается отдельно. Стоит отметить, что при этом RAC идет в составе Standard Edition, но данная редакция обладает большим количеством ограничений по сравнению с Enterprise Edition, что ставит под сомнение целесообразность ее использования.

Oracle Grid Infrastructure

Для работы Oracle RAC требуется Oracle Clusterware (или стороннее ПО) для объединения серверов в кластер. Для более гибкого управления ресурсами узлы такого кластера могут быть организованы в пулы (с версии 11g R2 поддерживается два варианта управления - на основании политик для пулов или, в случае их отсутствия, администратором).

Во втором релизе 11g Oracle Clusterware был объединен с ASM под общим названием Oracle Grid Infrastructure, хотя оба компонента и продолжают устанавливаться по различным путям.

Automatic Storage Management (ASM) - менеджер томов и файловая система, которые могут работать как в кластере, так и с singleinstance базой данных. ASM разбивает файлы на ASM Allocation Unit.

Размер Allocation Unit определяется параметром AU_SIZE, который задается на уровне дисковой группы и составляет 1, 2, 4, 8, 16, 32 или 64 MB. Далее Allocation Units распределяются по ASM-дискам для балансировки нагрузки или зеркалирования. Избыточность может быть реализована, как средствами ASM, так и аппаратно.

ASM-диски могут быть объединены в Failure Group (то есть группу дисков, которые могут выйти из строя одновременно - например, диски, подсоединенные к одному контролеру), при этом зеркалирование осуществляется на диски, принадлежащие разным Failure Group. При добавлении или удалении дисков ASM автоматически осуществляет разбалансировку, скорость которой задается администратором.

На ASM могут помещаться только файлы, относящиеся к базе данных Oracle, такие как управляющие и журнальные файлы, файлы данных или резервные копии RMAN. Экземпляр базы данных не может взаимодействовать напрямую с файлами, которые размещены на ASM. Для обеспечения доступа к данным дисковая группа должна быть предварительно смонтирована локальным ASM-экземпляром.

Развертывание Oracle RAC

Рассмотрим этапы установки различных компонентов, необходимых для функционирования Oracle RAC в режиме active/active кластера с двумя узлами. В качестве дистрибутива будем рассматривать последнюю на момент написания статьи версию Oracle Database 11g Release 2. В качестве операционной системы возьмем Oracle Enterprise Linux 5. Oracle Enterprise Linux - операционная система, базирующаяся на RedHat Enterprise Linux. Ее основные отличия - цена лицензии, техническая поддержка от Oracle и дополнительные пакеты, которые могут использоваться приложениями Oracle.

Подготовка ОС к установке Oracle стандартна и заключается в создании пользователей и групп, задании переменных окружения и параметров ядра. Параметры для конкретной версии ОС и БД можно найти в Installation Guide, который поставляется вместе с дистрибутивом.

На узлах должен быть настроен доступ к внешним общим дискам, на которых будут храниться файлы базы данных и файлы Oracle Clusterware. К последним относятся votingdisk (файл, определяющий участников кластера) и Oracle Cluster Registry (содержит конфигурационную информацию - например, какие экземпляры и сервисы запущены на конкретном узле). Рекомендуется создавать нечетное количество votingdisk. Для создания и настройки ASMдисков желательно использовать ASMLib, которую надо установить на всех узлах:

# rpm -Uvh oracleasm-support-2.1.3-1.el4.x86_64.rpm

rpm -Uvh oracleasmlib-2.0.4-1.el4.x86_64.rpm

rpm -Uvh oracleasm-2.6.9-55.0.12.ELsmp-2.0.3-1.x86_64.rpm

Кроме интерфейса для взаимодействия с хранилищем на узлах желательно настроить три сети - Interconnect, External и Backup.
Необходимо настроить IP-адресацию (вручную или с использованием Oracl e GNS) и DNS для разрешения всех имен (или только GNS).

Вначале осуществляется установка Grid Infrastructure. Для этого загружаем и распаковываем дистрибутив, затем запускаем установщик. В процессе установки необходимо указать имя кластера; указать узлы, которые будут входить в кластер; указать назначение сетевых интерфейсов; настроить хранилище.

В конце нужно выполнить с правами root скрипты orainstRoot.sh и root.sh. Первым на всех узлах выполняется скрипт orainstRoot.sh, причем запуск на следующем узле осуществляется только после завершения работы скрипта на предыдущем. После выполнения orainstRoot.sh последовательно на каждом узле выполняется root.sh. Проверить успешность установки можно с помощью команды:

/u01/grid/bin/crsctl check cluster –all

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

Кроме active/active-кластера в версии 11g R2 существуют две возможности для создания active/passive-кластера. Одна из них - Oracle RACOneNode. Другой вариант не требует лицензии для RAC и реализуется средствами Oracle Clusterware. В этом случае вначале создается общее хранилище; затем устанавливается Grid Infrastructure, с использованием ASM_CRS и SCAN; а после этого на узлы устанавливается база данных в варианте Standalone. Далее создаются ресурсы и скрипты, которые позволяют запускать экземпляр на другом узле в случае недоступности первого.

Заключение

Oracle RAC совместно с Oracle Grid Infrastructure позволяют реализовать разнообразные сценарии построения кластеров. Гибкость настройки и широта возможностей компенсируются ценой такого решения.

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

Ссылки по теме

  • High Availability решения от Microsoft: microsoft.com/windowsserver2008/en/us/high-availability.aspx ;
  • Подборка ссылок на документацию и ресурсы по Failover Clustering и NLB: blogs.msdn.com/b/clustering/archive/2009/08/21/9878286.aspx (блог - Clusteringand HighAvailability содержит много полезной информации);
  • Документация и дистрибутивы Oracle RAC: oracle.com/technetwork/database/clustering/overview/index.html ;
  • Документация и дистрибутивы Oracle Clusterware и Oracle Grid Infrastructure: oracle.com/technetwork/database/clusterware/overview/index.html ;
  • Настройка Oracle Clusterware для защиты Single Instance Oracle Database 11g:

Введение

Кластер серверов – это группа независимых серверов под управлением службы кластеров, работающих совместно как единая система. Кластеры серверов создаются путем объединения нескольких серверов на базе Windows® 2000 Advanced Server и Windows 2000 Datacenter Server для совместной работы, обеспечивая тем самым высокий уровень доступности, масштабируемости и управляемости для ресурсов и приложений.

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

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

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

Основные преимущества, получаемые при использовании службы кластеров:

  • Высокая доступность. В случае отказа какого-либо узла служба кластеров передает управление ресурсами, такими как, например, жесткие диски и сетевые адреса, действующему узлу кластера. Когда происходит программный или аппаратный сбой, программное обеспечение кластера перезапускает завершившееся с ошибкой приложение на действующем узле, или перемещает всю нагрузку отказавшего узла на оставшиеся действующие узлы. При этом пользователи могут заметить лишь кратковременную задержку в обслуживании.
  • Возврат после отказа. Служба кластеров автоматически перераспределяет рабочую нагрузку в кластере, когда отказавший узел вновь становится доступным.
  • Управляемость. Администратор кластера – это оснастка, которую Вы можете использовать для управления кластером как единой системой, а также для управления приложениями. Администратор кластера обеспечивает прозрачное представление работы приложений так, как если бы они выполнялись на одном сервере. Вы можете перемещать приложения на различные серверы в пределах кластера, перетаскивая объекты кластера мышью. Таким же образом можно перемещать данные. Этот способ может использоваться для ручного распределения рабочей нагрузки серверов, а также для разгрузки сервера и его последующей остановки с целью проведения планового технического обслуживания. Кроме того, Администратор кластера позволяет удаленно производить наблюдение за состоянием кластера, всех его узлов и ресурсов.
  • Масштабируемость. Для того чтобы производительность кластера всегда могла соответствовать возрастающим требованиям, служба кластеров располагает возможностями масштабирования. Если общая производительность кластера становится недостаточной для обработки нагрузки, создаваемой кластерными приложениями, в кластер могут быть добавлены дополнительные узлы.

Этот документ содержит инструкции по установке службы кластеров на серверах, работающих под управлением Windows 2000 Advanced Server и Windows 2000 Datacenter Server, и описывает процесс установки службы кластеров на серверы кластерных узлов. Данное руководство не описывает установку и настройку кластерных приложений, а лишь помогает Вам пройти через весь процесс установки простого двухузлового кластера.

Системные требования для создания кластера серверов

Следующие контрольные списки помогут Вам произвести подготовку к установке. Пошаговые инструкции по установке будут представлены далее после этих списков.

Требования к программному обеспечению

  • Операционная система Microsoft Windows 2000 Advanced Server или Windows 2000 Datacenter Server, установленная на всех серверах кластера.
  • Установленная служба разрешения имен, такая как Domain Naming System (DNS), Windows Internet Naming System (WINS), HOSTS и т. д.
  • Сервер терминалов для удаленного администрирования кластера. Данное требование не является обязательным, а рекомендуется лишь для обеспечения удобства управления кластером.

Требования к аппаратному обеспечению

  • Требования, предъявляемые к аппаратному обеспечению узла кластера, аналогичны требованиям для установки операционных систем Windows 2000 Advanced Server или Windows 2000 Datacenter Server. Эти требования можно найти на странице поиска каталога Microsoft.
  • Оборудование кластера должно быть сертифицировано и указано в списке совместимого аппаратного обеспечения (HCL) каталога Microsoft для службы кластеров. Последнюю версию этого списка можно на странице поиска Windows 2000 Hardware Compatibility List каталога Microsoft, выбрав категорию поиска «Cluster».

Два компьютера, удовлетворяющих требованиям списка HCL, каждый из которых имеет:

  • Жесткий диск с загрузочным системным разделом и установленной операционной системой Windows 2000 Advanced Server или Windows 2000 Datacenter Server. Этот диск не должен быть подключен к шине общего запоминающего устройства, рассмотренного ниже.
  • Отдельный PCI-контроллер устройств оптического канала (Fibre Channel) или SCSI для подключения внешнего общего запоминающего устройства. Этот контроллер должен присутствовать в дополнение к контроллеру загрузочного диска.
  • Два сетевых PCI адаптера, установленных на каждом компьютере кластера.
  • Перечисленное в списке HCL внешнее дисковое запоминающее устройство, подключенное ко всем узлам кластера. Оно будет выступать в качестве диска кластера. Рекомендуется конфигурация с использованием аппаратных RAID-массивов.
  • Кабели для подключения общего запоминающего устройства ко всем компьютерам. Для получения инструкций по конфигурированию запоминающих устройств обратитесь к документации производителя. Если подключение производится к шине SCSI, Вы можете обратиться к приложению А для дополнительной информации.
  • Все оборудование на компьютерах кластера должно быть полностью идентичным. Это упростит процесс конфигурирования и избавит Вас от потенциальных проблем с совместимостью.

Требования к настройке сетевой конфигурации

  • Уникальное NetBIOS имя для кластера.
  • Пять уникальных статических IP-адресов: два адреса для сетевых адаптеров частной сети, два – для сетевых адаптеров публичной сети, и один адрес для кластера.
  • Доменная учетная запись для службы кластеров (все узлы кластера должны быть членами одного домена)
  • Каждый узел должен иметь два сетевых адаптера – один для подключения к публичной сети, один – для внутрикластерного взаимодействия узлов. Конфигурация с использованием одного сетевого адаптера для одновременного подключения к публичной и частной сети не поддерживается. Наличие отдельного сетевого адаптера для частной сети необходимо для соответствия требованиям HCL.

Требования к дискам общего запоминающего устройства

  • Все диски общего запоминающего устройства, включая диск кворума, должны быть физически подключены к общей шине.
  • Все диски, подключенные к общей шине, должны быть доступны для каждого узла. Это можно проверить на этапе установки и конфигурирования хост-адаптера. Для подробных инструкций обратитесь к документации производителя адаптера.
  • Устройствам SCSI должны быть назначены целевые уникальные номера SCSI ID, кроме этого на шине SCSI должны быть правильно установлены терминаторы, в соответствии с инструкциями производителя. 1
  • Все диски общего запоминающего устройства должны быть настроены как базовые диски (не динамические)
  • Все разделы дисков общего запоминающего устройства должны быть отформатированы в файловой системе NTFS.

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

Установка кластера

Общий обзор установки

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

Таблица 1 поможет Вам определить, какие узлы и запоминающие устройства должны быть включены на каждом этапе установки.

Это руководство описывает создание двухузлового кластера. Тем не менее, если Вы устанавливаете кластер с более чем двумя узлами, Вы можете использовать значение столбца «Узел 2» для определения состояния остальных узлов.

Таблица 1. Последовательность включения устройств при установке кластера

Шаг Узел 1 Узел 2 Устройство хранения Комментарий
Установка параметров сети Вкл. Вкл. Выкл. Убедитесь, что все устройства хранения, подключенные к общей шине, выключены. Включите все узлы.
Настройка общих дисков Вкл. Выкл. Вкл. Выключите все узлы. Включите общее запоминающее устройство, затем включите первый узел.
Проверка конфигурации общих дисков Выкл. Вкл. Вкл. Выключите первый узел, включите второй узел. При необходимости повторите для узлов 3 и 4.
Конфигурирование первого узла Вкл. Выкл. Вкл. Выключите все узлы; включите первый узел.
Конфигурирование второго узла Вкл. Вкл. Вкл. После успешной конфигурации первого узла включите второй узел. При необходимости повторите для узлов 3 и 4.
Завершение установки Вкл. Вкл. Вкл. К этому моменту все узлы должны быть включены.

Перед установкой программного обеспечения кластеров необходимо выполнить следующие шаги:

  • Установить на каждый компьютер кластера операционную систему Windows 2000 Advanced Server или Windows 2000 Datacenter Server.
  • Настроить сетевые параметры.
  • Настроить диски общего запоминающего устройства.

Выполните эти шаги на каждом узле кластера прежде, чем приступать к установке службы кластеров на первом узле.

Для конфигурирования службы кластеров на сервере под управлением Windows 2000 Ваша учетная запись должна иметь права администратора на каждом узле. Все узлы кластера должны быть одновременно либо рядовыми серверами, либо контроллерами одного и того же домена. Смешанное использование рядовых серверов и контроллеров домена в кластере недопустимо.

Установка операционной системы Windows 2000

Для установки Windows 2000 на каждом узле кластера обратитесь к документации, которую Вы получили в комплекте с операционной системой.

В этом документе используется структура имен из руководства "Step-by-Step Guide to a Common Infrastructure for Windows 2000 Server Deployment" . Однако, Вы можете использовать любые имена.

Прежде, чем начинать установку службы кластеров, Вы должны выполнить вход систему под учетной записью администратора

Настройка сетевых параметров

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

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

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

Убедитесь, что все сетевые адаптеры правильно подключены физически: адаптеры частной сети подключены только к другим адаптерам частной сети, и адаптеры публичной сети подключены к коммутаторам публичной сети. Схема подключения изображена на Рисунке 1. Выполните такую проверку на каждом узле кластера, прежде чем переходить к настройке дисков общего запоминающего устройства.

Рисунок 1: Пример двухузлового кластера

Конфигурирование сетевого адаптера частной сети

Выполните эти шаги на первом узле Вашего кластера.

  1. Мое сетевое окружение и выберите команду Свойства .
  2. Щелкните правой кнопкой мыши на значке .

Примечание: Какой сетевой адаптер будет обслуживать частную сеть, а какой публичную, зависит от физического подключения сетевых кабелей. В данном документе мы будем предполагать, что первый адаптер (Подключение по локальной сети) подключен к публичной сети, а второй адаптер (Подключение по локальной сети 2) подключен к частной сети кластера. В Вашем случае это может быть не так.

  1. Состояние. Окно Состояние Подключение по локальной сети 2 показывает состояние подключения и его скорость. Если подключение находится в отключенном состоянии, проверьте кабели и правильность соединения. Устраните проблему, прежде чем продолжить. Нажмите кнопку Закрыть .
  2. Снова щелкните правой кнопкой мыши на значке Подключение по локальной сети 2 , выберите команду Свойства и нажмите кнопку Настроить .
  3. Выберите вкладку Дополнительно. Появится окно, изображенное на Рисунке 2.
  4. Для сетевых адаптеров частной сети скорость работы должна быть выставлена вручную вместо значения, используемого по умолчанию. Укажите скорость Вашей сети в раскрывающемся списке. Не используйте значения «Auto Sense» или «Auto Select» для выбора скорости, поскольку некоторые сетевые адаптеры могут сбрасывать пакеты во время определения скорости соединения. Для задания скорости сетевого адаптера укажите фактическое значение для параметра Тип подключения или Скорость .

Рисунок 2: Дополнительные настройки сетевого адаптера

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

  1. Выберите Протокол Интернета (TCP/IP) в списке компонентов, используемых подключением.
  2. Нажмите кнопку Свойства .
  3. Установите переключатель в положение Использовать следующий IP-адрес и введите адрес 10.1.1.1 . (Для второго узла используйте адрес 10.1.1.2 ).
  4. Задайте маску подсети: 255.0.0.0 .
  5. Нажмите кнопку Дополнительно и выберите вкладку WINS. Установите значение переключателя в положение Отключить NetBIOS через TCP/IP . Нажмите OK для возврата в предыдущее меню. Выполняйте этот шаг только для адаптера частной сети.

Ваше диалоговое окно должно выглядеть, как изображено на Рисунке 3.

Рисунок 3: IP-адрес подключения к частной сети

Конфигурирование сетевого адаптера публичной сети

Примечание: Если в публичной сети работает DHCP-сервер, IP-адрес для сетевого адаптера публичной сети может назначаться автоматически. Однако для адаптеров узлов кластера этот способ использовать не рекомендуется. Мы настоятельно рекомендуем назначать постоянные IP-адреса для всех публичных и частных сетевых адаптеров узлов. В противном случае при отказе DHCP-сервера доступ к узлам кластера может оказаться невозможным. Если же Вы вынуждены использовать DHCP для сетевых адаптеров публичной сети, используйте длительные сроки аренды адресов – это даст гарантию того, что динамически назначенный адрес останется действительным, даже если DHCP-сервер окажется временно недоступным. Адаптерам частной сети всегда назначайте постоянные IP-адреса. Помните, что служба кластеров может распознавать только один сетевой интерфейс в каждой подсети. Если Вам нужна помощь в вопросах назначения сетевых адресов в Windows 2000, обратитесь к встроенной справке операционной системы.

Переименование сетевых подключений

Для ясности мы рекомендуем изменить названия сетевых подключений. Например, Вы можете изменить название подключения Подключение по локальной сети 2 на . Такой метод поможет Вам проще идентифицировать сети и правильно назначать их роли.

  1. Щелкните правой кнопкой мыши на значке 2.
  2. В контекстном меню выберите команду Переименовать .
  3. Введите Подключение к частной сети кластера в текстовом поле и нажмите клавишу ВВОД .
  4. Повторите шаги 1-3 и измените название подключения Подключение по локальной сети на Подключение к публичной сети.

Рисунок 4: Переименованные сетевые подключения

  1. Переименованные сетевые подключения должны выглядеть, как показано на Рисунке 4. Закройте окно Сеть и удаленный доступ к сети . Новые названия сетевых подключений автоматически реплицируются на другие узлы кластера при их включении.

Проверка сетевых соединений и разрешений имен

Для проверки работы настроенного сетевого оборудования, выполните следующие шаги для всех сетевых адаптеров каждого узла. Для этого Вы должны знать IP-адреса всех сетевых адаптеров в кластере. Вы можете получить эту информацию, выполнив команду ipconfig на каждом узле:

  1. Нажмите кнопку Пуск, выберите команду Выполнить и наберите команду cmd в текстовом окне. Нажмите OK .
  2. Наберите команду ipconfig /all и нажмите клавишу ВВОД . Вы увидите информацию о настройке IP-протокола для каждого сетевого адаптера на локальной машине.
  3. В случае, если у Вас еще не открыто окно командной строки, выполните шаг 1.
  4. Наберите команду ping ipaddress где ipaddress – это IP-адрес соответствующего сетевого адаптера на другом узле. Предположим для примера, что сетевые адаптеры имеют следующие IP-адреса:
Номер узла Имя сетевого подключения IP-адрес сетевого адаптера
1 Подключение к публичной сети 172.16.12.12
1 Подключение к частной сети кластера 10.1.1.1
2 Подключение к публичной сети 172.16.12.14
2 Подключение к частной сети кластера 10.1.1.2

В этом примере Вам нужно выполнить команды ping 172.16.12.14 и ping 10.1.1.2 с узла 1, и выполнить команды ping 172.16.12.12 и ping 10.1.1.1 с узла 2.

Чтобы проверить разрешение имен, выполните команду ping , используя в качестве аргумента имя компьютера вместо его IP-адреса. Например, чтобы проверить разрешение имени для первого узла кластера с именем hq-res-dc01, выполните команду ping hq-res-dc01 с любого клиентского компьютера.

Проверка принадлежности к домену

Все узлы кластера должны являться членами одного домена и иметь возможности сетевого взаимодействия с контроллером домена и DNS-сервером. Узлы могут быть сконфигурированы как рядовые сервера домена или как контроллеры одного и того же домена. Если Вы решите сделать один из узлов контроллером домена, то все остальные узлы кластера также должны быть сконфигурированы как контроллеры этого же домена. В этом руководстве предполагается, что все узлы являются контроллерами домена.

Примечание: Для получения ссылок на дополнительную документацию по настройке доменов, служб DNS и DHCP в Windows 2000 смотрите раздел Связанные ресурсы в конце этого документа.

  1. Щелкните правой кнопкой мыши Мой компьютер и выберите команду Свойства .
  2. Выберите вкладку Сетевая идентификация . В диалоговом окне Свойства системы Вы увидите полное имя компьютера и домена. В нашем примере домен называется reskit.com .
  3. Если Вы сконфигурировали узел в качестве рядового сервера, то на этом этапе Вы можете присоединить его к домену. Нажмите кнопку Свойства и следуйте инструкциям для присоединения компьютера к домену.
  4. Закройте окна Свойства системы и Мой компьютер .

Создание учетной записи службы кластеров

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

  1. Нажмите кнопку Пуск , выберите команду Программы / Администрирование , запустите оснастку .
  2. Разверните категорию reskit.com , если она еще не развернута
  3. В списке выберите Users .
  4. Щелкните правой кнопкой мыши на Users , выберите в контекстном меню Создать , выберите Пользователь .
  5. Введите имя для учетной записи службы кластера, как показано на Рисунке 5, и нажмите кнопку Далее.

Рисунок 5: Добавление пользователя Cluster

  1. Установите флажки Запретить смену пароля пользователем и Срок действия пароля не ограничен . Нажмите кнопку Далее и кнопку Готово , чтобы создать пользователя.

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

  1. Щелкните правой клавишей мыши на пользователе Cluster в правой панели оснастки Active Directory – пользователи и компьютеры .
  2. В контекстном меню выберите команду Добавить участников в группу .
  3. Выберите группу Администраторы и нажмите OK . Теперь новая учетная запись имеет привилегии администратора на локальном компьютере.
  4. Закройте оснастку Active Directory – пользователи и компьютеры .

Настройка дисков общего запоминающего устройства

Предупреждение: Убедитесь, что, по крайней мере, на одном из узлов кластера установлена операционная система Windows 2000 Advanced Server или Windows 2000 Datacenter Server, а также настроена и работает служба кластеров. Только после этого можно загружать операционную систему Windows 2000 на остальных узлах. Если эти условия не будут выполнены, диски кластера могут быть повреждены.

Чтобы приступить к настройке дисков общего запоминающего устройства, выключите все узлы. После этого включите общее запоминающее устройство, затем включите узел 1.

Диск кворума

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

  • Создайте небольшой раздел (размером как минимум 50 Мб), чтобы использовать его в качестве диска кворума. Обычно мы рекомендуем создавать диск кворума размером в 500 Мб.
  • Выделите отдельный диск для ресурса кворума. Поскольку в случае выхода из строя диска кворума произойдет сбой работы всего кластера, мы настоятельно рекомендуем использовать аппаратный дисковый RAID-массив.

В процессе установки службы кластеров Вы будете должны назначить букву диску кворума. В нашем примере мы будем использовать букву Q .

Конфигурирование дисков общего запоминающего устройства

  1. Щелкните правой кнопкой мыши Мой компьютер , выберите команду Управление . В открывшемся окне раскройте категорию Запоминающие устройства .
  2. Выберите команду Управление дисками .
  3. Убедитесь, что все диски общего запоминающего устройства отформатированы в системе NTFS и имеют статус Основной . Если Вы подключите новый диск, автоматически запустится Мастер подписывания и обновления дисков . Когда мастер запустится, нажмите кнопку Обновить, чтобы продолжить его работу, после этого диск будет определен как Динамический . Чтобы преобразовать диск в базовый, щелкните правой кнопкой мыши на Диск # (где # – номер диска, с которым Вы работаете) и выберите команду Возвратить к базовому диску .

Щелкните правой кнопкой мыши область Не распределен рядом с соответствующим диском.

  1. Выберите команду Создать раздел
  2. Запустится Мастер создания раздела . Дважды нажмите кнопку Далее .
  3. Введите желаемый размер раздела в мегабайтах и нажмите кнопку Далее .
  4. Нажмите кнопку Далее , приняв предложенную по умолчанию букву диска
  5. Нажмите кнопку Далее для форматирования и создания раздела.

Назначение букв дискам

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

Примечание: Точки подключения – это функциональная возможность файловой системы, которая позволяет Вам устанавливать файловую систему, используя существующие каталоги, без назначения буквы диска. Точки подключения не поддерживаются кластерами. Любой внешний диск, используемый в качестве ресурса кластера, должен быть разбит на NTFS разделы, и этим разделам должны быть назначены буквы диска.

  1. Щелкните правой кнопкой мыши требуемый раздел и выберите команду Изменение буквы диска и пути диска .
  2. Выберите новую букву диска.
  3. Повторите шаги 1 и 2 для всех дисков общего запоминающего устройства.

Рисунок 6: Разделы дисков с назначенными буквами

  1. По окончании процедуры окно оснастки Управление компьютером должно выглядеть, как изображено на Рисунке 6. Закройте оснастку Управление компьютером .
  1. Нажмите кнопку Пуск , выберите Программы / Стандартные , и запустите программу «Блокнот» .
  2. Наберите несколько слов и сохраните файл под именем test.txt , выбрав команду Сохранить как из меню Файл . Закройте Блокнот .
  3. Дважды щелкните мышью на значке Мои документы .
  4. Щелкните правой кнопкой мыши на файле test.txt и в контекстном меню выберите команду Копировать .
  5. Закройте окно.
  6. Откройте Мой компьютер .
  7. Дважды щелкните мышью на разделе диска общего запоминающего устройства.
  8. Щелкните правой кнопкой мыши и выберите команду Вставить .
  9. На диске общего запоминающего устройства должна появиться копия файла test.txt .
  10. Дважды щелкните мышью на файле test.txt , чтобы открыть его с диска общего запоминающего устройства. Закройте файл.
  11. Выделите файл и нажмите клавишу Del , чтобы удалить файл с диска кластера.

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

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