Компьютерология - Информационный ресурс

Объединение компьютеров в кластер windows 10. Настольный кластер. Установка Cluster Service Software

Свой первый “кластер” из одноплатных компьютеров я построил почти сразу после того, как микрокомпьютер Orange Pi PC начал набирать популярность. “Кластером” это можно было назвать с большой натяжкой, ибо с формальной точки зрения это была всего лишь локальная сеть из четырёх плат, которые “видели” друг друга и могли выходить в Интернет.

Устройство участвовало в проекте SETI@home и даже успело что-то насчитать. Но, к сожалению, никто не прилетел забрать меня с этой планеты.
Однако, за всё время возни с проводами, разъёмами и microSD-картами я многому научился. Так, например, я выяснил, что не стоит доверять заявленной мощности блока питания, что было бы неплохо распределять нагрузку в плане потребления, да и сечение провода имеет значение.

И да, пришлось “колхозить” систему управления питанием, ибо одновременный старт пяти одноплатников может потребовать стартовый ток порядка 8-10а (5*2)! Это немало, особенно для БП, сделанных в подвалах страны, где мы так любим заказывать всякие… интересные гаджеты.

Начну, пожалуй, с неё. Задача свелась к относительно простым действиям - через заданный промежуток времени последовательно включить 4 канала, по которым подаётся 5 вольт. Самый простой способ реализовать задуманное - Arduino (коих у каждого уважающего себя гика в избытке) и вот такая чудо-плата с Али с 4мя реле.

И знаете, оно даже заработало.

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

Так что в один прекрасный день я просто заменил блок реле на транзисторные ключи на основе IRL520.

Это решило вопрос с помехами, но поскольку mosfet управляет “нулём”, пришлось отказаться от латунных ножек в стойке, дабы не соединить случайно землю плат.

И вот, решение отлично тиражируется и уже два кластера работают стабильно без всяких сюрпризов. Just as planned.

Но, вернёмся к тиражируемости. Зачем покупать блоки питания за ощутимую сумму, когда буквально под ногами есть много доступных ATX ?
Мало того, на них есть все напряжения (5,12,3.3), зачатки самодиагностики и возможность программного управления.

Ну тут я особо распинаться не буду - статья про управление ATX через Ардуино .

Ну что, все таблетки подъедены, марки тоже наклеены? Пора объединить это всё воедино.

Будет один головной узел, который соединяется с внешним миром по WiFi и отдаёт " интернеты" в кластер. Он будет питаться от дежурного напряжения ATX.

Фактически, за раздачу инета отвечает TBNG .
Так что при желании узлы кластера можно спрятать за TOR.

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

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

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

Вот она в процессе сборки

Вот один из первых эскизов расположения компонент кластера. Сделан на листке в клетку и увековечен через Office Lens телефоном.

Вся конструкция помещается на листе текстолита, купленного по случаю.

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

Тут проглядывается управляющая Arduino. Она соединена с головной Orange Pi Pc по i2c через конвертер уровней.

Ну а вот финальный (текущий вариант).

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

Не буду утомлять техническими подробностями - выглядит примерно так:

1
2
3
4
5
6
7
8
#!/usr/bin/env sh

echo "Starting ATX board..."
/home/zno/i2creobus/i2catx_tool.py --start
echo "Setting initial fan values..."
/home/zno/i2creobus/i2creobus_tool.py --fan 0 --set 60
/home/zno/i2creobus/i2creobus_tool.py --fan 1 --set 60
/home/zno/i2creobus/i2creobus_tool.py --fan 2 --set 60

Поскольку узлов у нас уже целых 10, берём на вооружение Ansible, который поможет, например, правильно выключить все узлы. Или запустить на каждом монитор температуры.

1
2
3
4
5
6
7
8
---

- hosts: workers
roles:
- webmon_stop
- webmon_remove
- webmon_install
- webmon_start

Меня часто в пренебрежительном тоне обвиняют, мол это просто локальная сеть одноплатников (как я уже упоминал в самом начале). Мне, в целом, насрать на чужое мнение, но пожалуй, добавим гламура и организуем docker swarm cluster.
Задача весьма простая и выполняется меньше чем за 10 минут. Потом запустим на головной ноде экземпляр Portainer , и вуаля!

Теперь можно реально масштабировать задачи. Так, в данный момент в кластере работает майнер криптовалюты Verium Reserve. И, довольно успешно. Надеюсь, ближайший туземун окупит съеденное электричество;) Ну или сократить количество вовлеченных узлов и майнить что-нибудь ещё типа Turtle Coin.

Если хочется полезной нагрузки - в кластер можно закинуть Hadoop или устроить балансировку веб-серверов. Готовых образов в интернете много, да и обучающего материала достаточно. Ну а если образ (docker image) отсутствует - всегда можно собрать свой.

Чему меня это научило? В целом, “стек” технологий очень широкий. Судите сами - Docker, Ansible, Python, прокачка Arduino (прости господи, ни к ночи будет сказано), ну и шелл конечно же. А так же KiCad и работа с подрядчиком:).

Что можно сделать лучше? Многое. По софтовой части было бы неплохо переписать управляющие утилиты на Go. По железной - make it more steampunkish - КДПВ в начале отлично задирает планку. Так что есть, над чем работать.

Роли исполняли:

  • Головной узел - Orange Pi PC с usb wifi.
  • Рабочие узлы - Orange Pi PC2 x 10.
  • Сеть - 100 мбит TP-link@16ports.
  • Мозг - Клон Arduino на базе Atmega8 + конвертер уровней.
  • Сердце - контроллер питания АТХ с блоком питания.
  • Софт (душа) - Docker, Ansible, Python 3, немного шелла и чуть чуть лени.
  • Потраченное время - бесценно.

В процессе экспериментов пострадала пара плат Orange Pi PC2 из-за перепутанного питания (очень красиво горят), ещё одна PC2 лишилась Ethernet (это отдельная история, в которой я не понимаю физики процесса).

Вот вроде бы и вся история “по верхам”. Если кто-то считает её интересной - задавайте вопросы в комментариях. И голосуйте там же за вопросы (плюсуйте - у каждого коммента есть кнопка для этого). Наиболее интересные вопросы будут освещены в новых заметках.
Спасибо, что дочитали до конца.

В первую очередь определитесь с тем, какие компоненты и ресурсы потребуются. Вам нужен будет один главный узел, минимум десяток идентичных вычислительных узлов, свитч Ethernet, блок распределения питания и стойка. Определите мощность проводки и охлаждения, а также площадь пространства, которые вам потребуются. Также определитесь, какие IP адреса вы хотите использовать для узлов, какое ПО вы поставите и какие технологии потребуются для создания параллельных вычислительных мощностей (подробнее об этом ниже).

  • Хотя «железо» стоит дорого, все приведенные в статье программы распространяются бесплатно, и большинство из них - с открытым исходным кодом.
  • Если вы хотите узнать, насколько быстрым теоретически может быть ваш суперкомпьютер, используйте этот инструмент:

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

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

    Установите свитч Ethernet рядом со стойкой. Стоит сразу же сконфигурировать свитч: установите размер джамбо-кадров 9000 байт, установите статический IP адрес, который вы выбрали на шаге 1 и выключите ненужные протоколы, такие как SMTP.

    Установите распределитель питания (PDU, или Power Distribution Unit). В зависимости от того, какую максимальную нагрузку выдают ноды в вашей сети, вам может потребоваться 220 вольт для высокопроизводительного компьютера.

  • Когда все установлено, переходите к конфигурированию. Linux по факту является основной системой для высокопроизводительных (HPC) кластеров – он не только идеально подходит в качестве окружения для научных вычислений, но вам еще и не придется платить за установку системы на сотни и даже тысячи узлов. Представьте, во сколько обошлась бы установка Windows на все ноды!

    • Начните с установки последней версии BIOS для материнской платы и ПО от производителя, которое должно быть одинаковым для всех серверов.
    • Установите предпочитаемый дистрибутив Linux на все ноды, а на главный узел - дистрибутив с графическим интерфейсом. Популярные системы: CentOS, OpenSuse, Scientific Linux, RedHat и SLES.
    • Автор очень рекомендует использовать Rocks Cluster Distribution. В дополнение к установке всех необходимых для кластера программ и инструментов, Rocks реализует отличный метод для быстрого "переноса" множества копий системы на аналогичные сервера с использованием PXE boot и процедуры "Kick Start" от Red Hat.
  • Установите интерфейс передачи сообщений, менеджер ресурсов и другие необходимые библиотеки. Если вы не поставили Rocks на предыдущем шаге, вам придется вручную устанавливать необходимое программное обеспечение, чтобы настроить логику параллельных вычислений.

    • Для начала вам понадобится портативная система для работы с bash, например, Torque Resource Manager, который позволяет разделять и распределять задачи на несколько машин.
    • Добавьте к Torque еще Maui Cluster Scheduler, чтобы закончить установку.
    • Дальше вам нужно установить интерфейс передачи сообщений, который необходим для того, чтобы индивидуальные процессы в каждой отдельной ноде использовали общие данные. OpenMP - самый простой вариант.
    • Не забудьте о многопоточных математических библиотеках и компиляторах, которые будут «собирать» ваши программы для распределенных вычислений. Я уже говорил, что вам стоит просто поставить Rocks?
  • Соедините компьютеры в сеть. Главная нода посылает задачи для вычисления на подчиненные ноды, которые в свою очередь должны вернуть результат обратно, а также отправлять сообщения друг другу. И чем быстрее все это происходит, тем лучше.

    • Используйте частную Ethernet сеть, чтобы соединить все ноды в кластер.
    • Главная нода может также работать в качестве NFS, PXE, DHCP, TFTP и NTP сервера при подключении к Ethernet.
    • Вы должны отделить эту сеть от публичных, чтобы быть уверенным, что пакеты не перекрываются другими в LAN.
  • Протестируйте кластер. Последнее, что вам стоит сделать перед тем, как дать доступ пользователям к компьютерным мощностям - протестировать производительность. HPL (High Performance Lynpack) benchmark - популярный вариант для измерения скорости вычислений в кластере. Вам нужно скомпилировать ПО из исходников с самой высокой степенью оптимизации, которую позволяет ваш компилятор для той архитектуры, которую вы выбрали.

    • Вы должны, конечно, компилировать со всеми возможными настройками оптимизации, которые доступны для платформы, которую вы выбрали. Например, при использовании AMD CPU компилируйте в Open64 и уровнем оптимизации -0.
    • Сравните полученные результаты с TOP500.org, чтобы сопоставить свой кластер с 500 самыми быстрыми суперкомпьютерами в мире!
  • тБВПФБФШ ОБ ПДОПК НБЫЙОЕ ХЦЕ ОЕ НПДОП
    ЙМЙ ДЕМБЕН ЛМБУФЕТ Ч ДПНБЫОЙИ ХУМПЧЙСИ.

    1. чЧЕДЕОЙЕ

    нОПЗЙЕ ЙЪ ЧБУ ЙНЕАФ Ч МПЛБМШОПК УЕФЙ ОЕУЛПМШЛП Linux НБЫЙО, У РТБЛФЙЮЕУЛЙ ЧУЕЗДБ УЧПВПДОЩН РТПГЕУУПТПН. фБЛЦЕ НОПЗЙЕ УМЩЫБМЙ П УЙУФЕНБИ, Ч ЛПФПТЩИ НБЫЙОЩ ПВЯЕДЕОСАФУС Ч ПДЙО УХРЕТЛПНРШАФЕТ. оП ТЕБМШОП НБМП ЛФП РТПВПЧБМ РТПЧПДЙФШ ФБЛЙЕ ЬЛУРЕТЙНЕОФЩ Х УЕВС ОБ ТБВПФЕ ЙМЙ ДПНБ. дБЧБКФЕ РПРТПВХЕН ЧНЕУФЕ УПВТБФШ ОЕВПМШЫПК ЛМБУФЕТ. рПУФТПЙЧ ЛМБУФЕТ ЧЩ УНПЦЕФЕ ТЕБМШОП ХУЛПТЙФШ ЧЩРПМОЕОЙЕ ЮБУФЙ ЪБДБЮ. оБРТЙНЕТ ЛПНРЙМСГЙА ЙМЙ ПДОПЧТЕНЕООХА ТБВПФХ ОЕУЛПМШЛЙИ ТЕУХТУПЕНЛЙИ РТПГЕУУПЧ. ч ЬФПК УФБФШЕ С РПУФБТБАУШ ТБУУЛБЪБФШ ЧБН ЛБЛ НПЦОП ВЕЪ ПУПВЩИ ХУЙМЙК ПВЯЕДЕОЙФШ НБЫЙОЩ УЧПЕК МПЛБМШОПК УЕФЙ Ч ЕДЙОЩК ЛМБУФЕТ ОБ ВБЪЕ MOSIX.

    2. лБЛ,ЮФП Й ЗДЕ.

    MOSIX - ЬФП РБФЮ ДМС СДТБ Linux У ЛПНРМЕЛФПН ХФЙМЙФ, ЛПФПТЩК РПЪЧПМСЕФ РТПГЕУУБН У ЧБЫЕК НБЫЙОЩ РЕТЕИПДЙФШ (НЙЗТЙТПЧБФШ) ОБ ДТХЗЙЕ ХЪМЩ МПЛБМШОПК УЕФЙ. чЪСФШ ЕЗП НПЦОП РП БДТЕУХ HTTP://www.mosix.cs.huji.ac.il Б ТБУРТПУФТБОСЕФУС ПО Ч ЙУИПДОЩИ ЛПДБИ РПД МЙГЕОЪЙЕК GPL. рБФЮЙ УХЭЕУФЧХАФ ДМС ЧУЕИ СДЕТ ЙЪ УФБВЙМШОПК ЧЕФЛЙ Linux.

    3. хУФБОПЧЛБ РТПЗТБННОПЗП ПВЕУРЕЮЕОЙС.

    ч ОБЮБМЕ ХУФБОПЧЛЙ ИПЮХ РПТЕЛПНЕОДПЧБФШ ЧБН ЪБВЙТБФШ У ХЪМБ MOSIX ОЕ ФПМШЛП ЕЗП, ОП Й УПРХФУФЧХАЭЙЕ ХФЙМЙФЩ - mproc, mexec Й ДТ.
    ч БТИЙЧЕ MOSIX ЕУФШ ХУФБОПЧПЮОЩК УЛТЙРФ mosix_install. оЕ ЪБВХДШФЕ Ч ПВСЪБФЕМШОПН РПТСДЛЕ ТБУРБЛПЧБФШ ЙУИПДОЩЕ ЛПДЩ СДТБ Ч /usr/src/linux-*.*.*, ОБРТЙНЕТ ЛБЛ УДЕМБМ С - Ч /usr/src/linux-2.2.13 ДБМЕЕ ЪБРХУЛБЕФЕ mosix_install Й ПФЧЕЮБЕФЕ ОБ ЧУЕ ЕЗП ЧПРТПУЩ, ХЛБЪБЧ ЕНХ УЧПК НЕОЕДЦЕТ ЪБЗТХЪЛЙ (LILO), РХФШ Л ЙУИПДОЙЛБН СДТБ Й ХТПЧОЙ ЪБРХУЛБ.
    рТЙ ОБУФТПКЛЕ СДТБ ЧЛМАЮЙФЕ ПРГЙЙ CONFIG_MOSIX, CONFIG_BINFMT_ELF Й CONFIG_PROC_FS. чУЕ ЬФЙ ПРГЙЙ РПДТПВОП ПРЙУБОЩ Ч ТХЛПЧПДУФЧЕ РП ХУФБОПЧЛЕ MOSIX.
    хУФБОПЧЙМЙ? оХ ЮФП ЦЕ - РЕТЕЗТХЦБКФЕ ЧБЫ Linux У ОПЧЩН СДТПН, ОБЪЧБОЙЕ ЛПФПТПЗП ПЮЕОШ ВХДЕФ РПИПЦЕ ОБ mosix-2.2.13.

    4. оБУФТПКЛБ

    йЪОБЮБМШОП ХУФБОПЧМЕООЩК MOSIX УПЧЕТЫЕООП ОЕ ЪОБЕФ, ЛБЛЙЕ Х ЧБУ НБЫЙОЩ Ч УЕФЙ Й У ЛЕН ЕНХ УПЕДЕОСФУС. оХ Б ОБУФТБЙЧБЕФУС ЬФП ПЮЕОШ РТПУФП. еУМЙ ЧЩ ФПМШЛП РПУФБЧЙМЙ mosix Й ЕУМЙ ЧБЫ ДЙУФТЙВХФЙЧ - SuSE ЙМЙ RedHat - УПЧНЕУФЙНЩК, ФП ЪБИПДЙФЕ Ч ЛБФБМПЗ /etc/rc.d/init.d Й ДБЧБКФЕ ЛПНБОДХ mosix start. рТЙ РЕТЧПН ЪБРХУЛЕ ЬФПФ УЛТЙРФ РТПУЙФ ЧБУ ОБУФТПЙФШ MOSIX Й ЪБРХУЛБЕФ ФЕЛУФПЧЩК ТЕДБЛФПТ ДМС УПЪДБОЙС ЖБКМБ /etc/mosix.map, Ч ЛПФПТПН ОБИПДЙФУС УРЙУПЛ ХЪМПЧ ЧБЫЕЗП ЛМБУФЕТБ. фХДБ РТПРЙУЩЧБЕН: Ч УМХЮБЕ, ЕУМЙ Х ЧБУ ЧУЕЗП ДЧЕ-ФТЙ НБЫЙОЩ Й ЙИ IP-БДТЕУБ УМЕДХАФ
    ДТХЗ ЪБ ДТХЗПН РП ОПНЕТБГЙЙ РЙЫЕН ФБЛ:



    1 10.152.1.1 5

    зДЕ РЕТЧЩК РБТБНЕФТ ПВПЪОБЮБЕФ ОПНЕТ ОБЮБМШОПЗП ХЪМБ, ЧФПТПК - IP БДТЕУ РЕТЧПЗП ХЪМБ Й РПУМЕДОЙК - ЛПМЙЮЕУФЧП ХЪМПЧ У ФЕЛХЭЕЗП. ф.Е. УЕКЮБУ Х ОБУ Ч ЛМБУФЕТЕ ПМХЮБЕФУС РСФШ ХЪМПЧ, IP БДТЕУБ ЛПФПТЩК ЪБЛБОЮЙЧБАФУС ОБ 1, 2, 3, 4 Й 5.
    йМЙ ДТХЗПК РТЙНЕТ:

    оПНЕТ ХЪМБ IP ЛПМЙЮЕУФЧП ХЪМПЧ У ФЕЛХЭЕЗП
    ______________________________________
    1 10.152.1.1 1
    2 10.150.1.55 2
    4 10.150.1.223 1

    ч ЬФПК ЛПОЖЙЗХТБГЙЙ НЩ РПМХЮЙН УМЕДХАЭЙК ТБУЛМБД:
    IP 1-ПЗП ХЪМБ 10.150.1.1
    IP 2-ПЗП ХЪМБ 10.150.1.55
    IP 3-ПЗП ХЪМБ 10.150.1.56
    IP 4-ПЗП ХЪМБ 10.150.1.223
    фЕРЕТШ ОХЦОП ОБ ЧУЕИ НБЫЙОБИ ВХДХЭЕЗП ЛМБУФЕТБ ХУФБОПЧЙФШ MOSIX Й УПЪДБФШ ЧЕЪДЕ ПДЙОБЛПЧЩК ЛПОЖЙЗХТБГЙПООЩК ЖБКМ /etc/mosix.map .

    фЕРЕТШ РПУМЕ РЕТЕЪБРХУЛБ mosix ЧБЫБ НБЫЙОБ ХЦЕ ВХДЕФ ТБВПФБФШ Ч ЛМБУФЕТЕ, ЮФП НПЦОП ХЧЙДЕФШ ЪБРХУФЙЧ НПОЙФПТ ЛПНБОДПК mon. ч УМХЮБЕ, ЕУМЙ ЧЩ ХЧЙДЙФЕ Ч НПОЙФПТЕ ФПМШЛП УЧПА НБЫЙОХ ЙМЙ ЧППВЭЕ ОЕ ХЧЙДЙФЕ ОЙЛПЗП, ФП, ЛБЛ ЗПЧПТЙФУС - ОБДП ТЩФШ. уЛПТЕЕ ЧУЕЗП Х ЧБУ ПЫЙВЛБ ЙНЕООП Ч /etc/mosix.map.
    оХ ЧПФ, ХЧЙДЙМЙ, ОП ОЕ РПВЕДЙМЙ. юФП ДБМШЫЕ? б ДБМШЫЕ ПЮЕОШ РТПУФП:-) - ОХЦОП УПВТБФШ ХФЙМЙФЩ ДМС ТБВПФЩ У ЙЪНЕОЕООЩН /proc ЙЪ РБЛЕФБ mproc. ч ЮБУФОПУФЙ Ч ЬФПН РБЛЕФЕ ЙДЕФ ОЕРМПИБС НПДЙЖЙЛБГЙС top - mtop, Ч ЛПФПТЩК ДПВБЧЙМЙ ЧПЪНПЦОПУФШ ПФПВТБЦЕОЙС ХЪМБ(node), УПТФЙТПЧЛЙ РП ХЪМБН, РЕТЕОПУБ РТПГЕУУБ У ФЕЛХЭЕЗП ХЪМБ ОБ ДТХЗПК Й ХУФБОПЧМЕОЙС НЙОЙНБМШОПК ЪБЗТХЪЛЙ РТПГЕУУПТБ ХЪМБ, РПУМЕ ЛПФПТПК РТПГЕУУЩ ОБЮЙОБАФ НЙЗТЙТПЧБФШ ОБ ДТХЗЙЕ MOSIX - ХЪМЩ.
    ъБРХУЛБЕН mtop, ЧЩВЙТБЕН РПОТБЧЙЧЫЙКУС ОЕ УРСЭЙК РТПГЕУУ (ТЕЛПНЕОДХА ЪБРХУФЙФШ bzip) Й УНЕМП ДБЧЙН ЛМБЧЙЫХ "g" ОБ ЧБЫЕК ЛМБЧЙБФХТЕ, РПУМЕ ЮЕЗП ЧЧПДЙН ОБ ЪБРТПУ PID ЧЩВТБООПЗП Ч ЛБЮЕУФЧЕ ЦЕТФЧЩ РТПГЕУУБ Й ЪБФЕН - ОПНЕТ ХЪМБ, ЛХДБ НЩ ИПФЙН ЕЗП ПФРТБЧЙФШ. б ХЦЕ РПУМЕ ЬФПЗП ЧОЙНБФЕМШОП РПУНПФТЙФЕ ОБ ТЕЪХМШФБФЩ, ПФПВТБЦБЕНЩЕ ЛПНБОДПК mon - ФБ НБЫЙОБ ДПМЦОБ ОБЮБФШ ВТБФШ ОБ УЕВС ОБЗТХЪЛХ ЧЩВТБООПЗП РТПГЕУУБ.
    б УПВУФЧЕООП mtop - Ч РПМЕ #N ПФПВТБЦБФШ ОПНЕТ ХЪМБ, ЗДЕ ПО ЧЩРПМОСЕФУС.
    оП ЬФП ЕЭЕ ОЕ ЧУЕ - ЧЕДШ ЧБН РТБЧДБ ОЕ ИПЮЕФУС ПФРТБЧМСФШ ОБ ДТХЗЙЕ ХЪМЩ РТПГЕУУЩ ЧТХЮОХА? нОЕ ОЕ ЪБИПФЕМПУШ. х MOSIX ЕУФШ ОЕРМПИБС ЧУФТПЕООБС ВБМБОУЙТПЧЛБ ЧОХФТЙ ЛМБУФЕТБ, ЛПФПТБС РПЪЧПМСЕФ ВПМЕЕ-НЕОЕЕ ТБЧОПНЕТОП ТБУРТЕДЕМСФШ ОБЗТХЪЛХ ОБ ЧУЕ ХЪМЩ. оХ Б ЧПФ ЪДЕУШ ОБН РТЙДЕФУС РПФТХДЙФУС. дМС ОБЮБМБ С ТБУУЛБЦХ, ЛБЛ УДЕМБФШ ФПОЛХА ОБУФТПКЛХ (tune) ДМС ДЧХИ ХЪМПЧ ЛМБУФЕТБ? Ч РТПГЕУУЕ ЛПФПТПК MOSIX РПМХЮБЕФ ЙОЖПТНБГЙА П УЛПТПУФСИ РТПГЕУУПТПЧ Й УЕФЙ:
    ъБРПНОЙФЕ ТБЪ Й ОБЧУЕЗДБ - tune НПЦОП ЧЩРПМОСФШ ФПМШЛП Ч single-mode. йОБЮЕ ЧЩ МЙВП РПМХЮЙФЕ ОЕ УПЧУЕН ЛПТТЕЛФОЩК ТЕЪХМШФБФ, МЙВП ЧБЫБ НБЫЙОБ НПЦЕФ РТПУФП ЪБЧЙУОХФШ.
    йФБЛ, ЧЩРПМОСЕН tune. рПУМЕ РЕТЕЧПДБ ПРЕТБГЙПООПК УЙУФЕНЩ Ч single - mode ОБРТЙНЕТ ЛПНБОДПК init 1 ЙМЙ init S ЪБРХУЛБЕН УЛТЙРФ prep_tune, ЛПФПТЩК РПДОЙНЕФ cЕФЕЧЩЕ
    ЙОФЕТЖЕКУЩ Й ЪБРХУФЙФ MOSIX. рПУМЕ ЬФПЗП ОБ ПДОПК ЙЪ НБЫЙО ЪБРХУЛБЕН tune, ЧЧПДЙН ЕНХ ОПНЕТ ДТХЗПЗП ХЪМБ ДМС ОБУФТПКЛЙ Й ЦДЕН ТЕЪХМШФБФБ - ХФЙМЙФБ ДПМЦОБ ЧЩДБФШ ЪБРТПУ ОБ ЧЧПД ЫЕУФЙ ЮЙУЕМ, РПМХЮЕООЩИ ПФ ЧЩРПМОЕОЙС ЛПНБОДЩ tune -a <ХЪЕМ> ОБ ДТХЗПН ХЪМЕ. уПВУФЧЕООП ПРЕТБГЙА РТЙДЕФУС РПЧФПТЙФШ ОБ ДТХЗПН ХЪМЕ ЛПНБОДПК tune -a <ХЪЕМ>, Б ТЕЪХМШФБФ ЙЪ ЫЕУФЙ ЮЙУЕМ ЧЧЕУФЙ ОБ РЕТЧЩК ХЪЕМ. рПУМЕ РПДПВОПЗП ФАОЙОЗБ Ч ЧБЫЕК УЙУФЕНЕ ДПМЦЕО РПСЧЙФУС ЖБКМ /etc/overheads, УПДЕТЦБЭЙК ЙОЖПТНБГЙА ДМС MOSIX Ч ЧЙДЕ ОЕЛЙИ ЮЙУМПЧЩИ ДБООЩИ. ч УМХЮБЕ, ЕУМЙ РП ЛБЛЙН-ФП РТЙЮЙОБН tune ОЕ УНПЗ УДЕМБФШ ЕЗП, РТПУФП УЛПРЙТХКФЕ ЙЪ ФЕЛХЭЕЗП ЛБФБМПЗБ ЖБКМ mosix.cost Ч /etc/overheads. ьФП РПНПЦЕФ;-).
    рТЙ ФАОЙОЗЕ ЛМБУФЕТБ ЙЪ ВПМЕЕ ЮЕН ДЧХИ НБЫЙО ОХЦОП ЙУРПМШЪПЧБФШ ХФЙМЙФХ, ЛПФПТБС ФБЛЦЕ РПУФБЧМСЕФУС У MOSIX - tune_kernel. дБООБС ХФЙМЙФБ РПЪЧПМСЕФ
    ЧБН Ч ВПМЕЕ РТПУФПН Й РТЙЧЩЮОПН ЧЙДЕ ОБУФТПЙФШ ЛМБУФЕТ, ПФЧЕФЙЧ ОБ ОЕУЛПМШЛП ЧПРТПУПЧ Й РТПЧЕДС ФАОЙОЗ У ДЧХНС НБЫЙОБНЙ ЛМБУФЕТБ.
    лУФБФЙ, РП УПВУФЧЕООПНХ ПРЩФХ НПЗХ УЛБЪБФШ, ЮФП РТЙ ОБУФТПКЛЕ ЛМБУФЕТБ С ТЕЛПНЕОДХА ЧБН ОЕ ЪБЗТХЦБФШ УЕФШ, Б ОБПВПТПФ - РТЙПУФБОПЧЙФШ ЧУЕ БЛФЙЧОЩЕ ПРЕТБГЙЙ Ч МПЛБМШОПК УЕФЙ.

    5. хРТБЧМЕОЙЕ ЛМБУФЕТПН

    дМС ХРТБЧМЕОЙС ХЪМПН ЛМБУФЕТБ УХЭЕУФЧХЕФ ОЕВПМШЫПК ОБВПТ ЛПНБОД, УТЕДЙ ЛПФПТЩИ:

    mosctl - ЛПОФТПМШ ОБД ХЪМПН. рПЪЧПМСЕФ ЙЪНЕОСФШ РБТБНЕФТЩ ХЪМБ - ФБЛЙЕ, ЛБЛ block, stay, lstay, delay Й Ф.Д
    дБЧБКФЕ ТБУУНПФТЙН ОЕУЛПМШЛП РБТБНЕФТПЧ ЬФПК ХФЙМЙФЩ:
    stay - РПЪЧПМСЕФ ПУФБОБЧМЙЧБФШ НЙЗТБГЙА РТПГЕУУПЧ ОБ ДТХЗЙЕ ХЪМЩ У ФЕЛХЭЕК НБЫЙОЩ. пФНЕОСЕФУС РБТБНЕФТПН nostay ЙМЙ -stay
    lstay - ЪБРТЕЭБЕФ ФПМШЛП МПЛБМШОЩН РТПГЕУУБН НЙЗТБГЙА, Б РТПГЕУУЩ У ДТХЗЙИ НБЫЙО НПЗХФ РТПДПМЦБФШ ЬФП ДЕМБФШ. пФНЕОСЕФУС РБТБНЕФТПН nolstay ЙМЙ -lstay.
    block - ЪБРТЕЭБЕФ ХДБМЕООЩН/ЗПУФЕЧЩН РТПГЕУУБН ЧЩРПМОСФУС ОБ ЬФПН ХЪМЕ. пФНЕОСЕФУС РБТБНЕФТПН noblock ЙМЙ -block.
    bring - ЧПЪЧТБЭБЕФ ПВТБФОП ЧУЕ РТПГЕУУЩ У ФЕЛХЭЕЗП ХЪМБ ЧЩРПМОСЕНЩЕ ОБ ДТХЗЙИ НБЫЙОБИ ЛМБУФЕТБ. ьФПФ РБТБНЕФТ НПЦЕФ ОЕ УТБВБФЩЧБФШ, РПЛБ НЙЗТЙТПЧБЧЫЙК РТПГЕУУ ОЕ РПМХЮЙФ РТЕТЩЧБОЙЕ ПФ УЙУФЕНЩ.
    setdelay ХУФБОБЧМЙЧБЕФ ЧТЕНС, РПУМЕ ЛПФПТПЗП РТПГЕУУ ОБЮЙОБЕФ НЙЗТЙТПЧБФШ.
    чЕДШ УПЗМБУЙФЕУШ - Ч УМХЮБЕ, ЕУМЙ ЧТЕНС ЧЩРПМОЕОЙС РТПГЕУУБ НЕОШЫЕ УЕЛХОДЩ УНЩУМ РЕТЕОПУЙФШ ЕЗП ОБ ДТХЗЙЕ НБЫЙОЩ УЕФЙ ЙУЮЕЪБЕФ. йНЕООП ЬФП ЧТЕНС Й ЧЩУФБЧМСЕФУС ХФЙМЙФПК mosctl У РБТБНЕФТПН setdecay. рТЙНЕТ:
    mosctl setdecay 1 500 200
    ХУФБОБЧМЙЧБЕФ ЧТЕНС РЕТЕИПДБ ОБ ДТХЗЙЕ ХЪМЩ 500 НЙММЙУЕЛХОД Ч УМХЮБЕ, ЕУМЙ РТПГЕУУ ЪБРХЭЕО ЛБЛ slow Й 200 НЙМЙУЕЛХОД ДМС fast РТПГЕУУПЧ. пВТБФЙФЕ ЧОЙНБОЙЕ, ЮФП РБТБНЕФТ slow ЧУЕЗДБ ДПМЦЕО ВЩФШ ВПМШЫЕ ЙМЙ ТБЧЕО РБТБНЕФТХ fast.

    mosrun - ЪБРХУЛБЕФ РТЙМПЦЕОЙЕ Ч ЛМБУФЕТЕ. ОБРТЙНЕТ mosrun -e -j5 make ЪБРХУФЙФ make ОБ 5-ПН ХЪМЕ ЛМБУФЕТБ, РТЙ ЬФПН ЧУЕ ЕЗП ДПЮЕТОЙЕ РТПГЕУУЩ ВХДХФ ФБЛЦЕ ЧЩРПМОСФУС ОБ 5-ПН ХЪМЕ. рТБЧДБ ЪДЕУШ ЕУФШ ПДЙО ОАБОУ, РТЙ ЮЕН ДПЧПМШОП УХЭЕУФЧЕООЩК:
    Ч УМХЮБЕ, ЕУМЙ ДПЮЕТОЙЕ РТПГЕУУЩ ЧЩРПМОСАФУС ВЩУФТЕЕ ЮЕН ХУФБОПЧМЕООБС ХФЙМЙФПК mosctl ЪБДЕТЦЛБ (delay) ФП РТПГЕУУ ОЕ ВХДЕФ НЙЗТЙТПЧБФШ ОБ ДТХЗЙЕ ХЪМЩ ЛМБУФЕТБ. Х mosrun ЕЭЕ ДПЧПМШОП НОПЗП ТБЪМЙЮОЩИ ЙОФЕТЕУОЩИ РБТБНЕФТПЧ, ОП РПДТПВОП ХЪОБФШ
    П ОЙИ ЧЩ УНПЦЕФЕ ЙЪ ТХЛПЧПДУФЧБ РП ЬФПК ХФЙМЙФЕ. (man mosrun)

    mon - ЛБЛ НЩ ХЦЕ ЪОБЕН, ЬФП НПОЙФПТ ЛМБУФЕТБ, ЛПФПТЩК Ч РУЕЧДПЗТБЖЙЮЕУЛПН ЧЙДЕ ПФПВТБЦБЕФ ЪБЗТХЪЛХ ЛБЦДПЗП ТБВПЮЕЗП ХЪМБ ЧБЫЕЗП ЛМБУФЕТБ, ЛПМЙЮЕУФЧП УЧПВПДОПК Й ЪБОСФПК РБНСФЙ ХЪМПЧ Й ЧЩДБЕФ НОПЗП ДТХЗПК, ОЕ НЕОЕЕ ЙОФЕТЕУОПК ЙОЖПТНБГЙЙ.

    mtop - НПДЙЖЙГЙТПЧБООБС ДМС ЙУРПМШЪПЧБОЙС ОБ ХЪМБИ ЛМБУФЕТБ ЧЕТУЙС ЛПНБОДЩ top. пФПВТБЦБЕФ ОБ ЬЛТБОЕ ДЙОБНЙЮЕУЛХА ЙОЖПТНБГЙА П РТПГЕУУБИ, ЪБРХЭЕООЩИ ОБ ДБООПН ХЪМЕ, Й ХЪМБИ, ЛХДБ НЙЗТЙТПЧБМЙ ЧБЫЙ РТПГЕУУЩ.

    mps - ФПЦЕ НПДЙЖЙГЙТПЧБООБС ЧЕТУЙС ЛПНБОДЩ ps. дПВБЧМЕОП ЕЭЕ ПДОП РПМЕ - ОПНЕТ ХЪМБ, ОБ ЛПФПТЩК НЙЗТЙТПЧБМ РТПГЕУУ.

    чПФ ОБ НПК ЧЪЗМСД Й ЧУЕ ПУОПЧОЩЕ ХФЙМЙФЩ. оБ УБНПН ДЕМЕ ЛПОЕЫОП НПЦОП ПВПКФЙУШ ДБЦЕ ВЕЪ ОЙИ. оБРТЙНЕТ ЙУРПМШЪХС ДМС ЛПОФТПМС ОБД ЛМБУФЕТПН /proc/mosix.
    фБН ЛТПНЕ ФПЗП, ЮФП НПЦОП ОБКФЙ ПУОПЧОХА ЙОЖПТНБГЙА П ОБУФТПКЛБИ ХЪМБ, РТПГЕУУБИ ЪБРХЭЕООЩИ У ДТХЗЙИ ХЪМПЧ Й Ф.Д.,Б ФБЛЦЕ РПНЕОСФШ ЮБУФШ РБТБНЕФТПЧ.

    6. ьЛУРЕТЕНЕОФЙТХЕН.

    л УПЦБМЕОЙА, НОЕ ОЕ ХДБМПУШ ЪБУФБЧЙФШ ЧЩРПМОСФУС ЛБЛПК-ФП ПДЙО РТПГЕУУ ПДОПЧТЕНЕООП ОБ ОЕУЛПМШЛЙИ ХЪМБИ. нБЛУЙНХН, ЮЕЗП С ДПУФЙЗ Ч РТПГЕУУЕ ЬЛУРЕТЙНЕОФПЧ У ЛМБУФЕТПН-ЙУРПМШЪПЧБОЙЕ ДМС ЧЩРПМОЕОЙС ТЕУХТУПЕНЛЙИ РТПГЕУУПЧ ОБ ДТХЗПН ХЪМЕ.
    дБЧБКФЕ ТБУУНПФТЙН ПДЙО ЙЪ РТЙНЕТПЧ:
    дПРХУФЙН, ЮФП Х ОБУ Ч ЛМБУФЕТЕ ТБВПФБАФ ДЧЕ НБЫЙОЩ (ДЧБ ХЪМБ), ПДЙО ЙЪ ЛПФПТЩИ У ОПНЕТПН 1 (366 Celeron), ДТХЗПК - У ОПНЕТПН 5(PIII450). ьЛУРЕТЙНЕОФЙТПЧБФШ НЩ ВХДЕН ОБ 5-ПН ХЪМЕ. 1-К ХЪЕМ Ч ЬФП ЧТЕНС РТПУФБЙЧБМ. ;-)
    йФБЛ, ЪБРХУЛБЕН ОБ 5-Н ХЪМЕ ХФЙМЙФХ crark ДМС РПДВПТБ РБТПМС Л rar БТИЙЧХ.еУМЙ ЛФП ЙЪ ЧБУ РТПВПЧБМ ТБВПФБФШ У РПДПВОЩНЙ ХФЙМЙФБНЙ, ФП ПО ДПМЦЕО ЪОБФШ, ЮФП РТПГЕУУ РПДВПТБ РБТПМС "ЛХЫБЕФ" ДП 99 РТПГЕОФПЧ РТПГЕУУПТБ. оХ ЮФП ЦЕ - РПУМЕ ЪБРХУЛБ НЩ ОБВМАДБЕН, ЮФП РТПГЕУУ ПУФБЕФУС ОБ ЬФПН, 5-ПН ХЪМЕ. тБЪХНОП - ЧЕДШ ЙНЕООП Х ЬФПЗП ХЪМБ РТПЙЪЧПДЙФЕМШОПУФШ РТЕЧЩЫБЕФ 1-К ХЪЕМ РПЮФЙ Ч ДЧБ ТБЪБ.
    дБМЕЕ НЩ РТПУФП ЪБРХУФЙМЙ УВПТЛХ kde 2.0. уНПФТЙН ФБВМЙГХ РТПГЕУУПЧ Й ЧЙДЙН, ЮФП crark ХУРЕЫОП НЙЗТЙТПЧБМ ОБ 1-К ХЪЕМ, ПУЧПВПДЙЧ РТПГЕУУПТ Й РБНСФШ (ДБ, ДБ - РБНСФШ ФПЮОП ФБЛЦЕ ПУЧПВПЦДБЕФУС) ДМС make. б ЛБЛ ФПМШЛП make ЪБЛПОЮЙМ УЧПА ТБВПФХ - crark ЧЕТОХМУС ПВТБФОП, ОБ ТПДОПК ЕНХ 5-К ХЪЕМ.
    йОФЕТЕУОЩК ЬЖЖЕЛФ РПМХЮБЕФУС, ЕУМЙ crark ЪБРХУЛБФШ ОБ ВПМЕЕ НЕДМЕООПН 1-Н ХЪМЕ.
    фБН НЩ ОБВМАДБЕН РТБЛФЙЮЕУЛЙ РТПФЙЧПРПМПЦОЩК ТЕЪХМШФБФ - РТПГЕУУ УТБЪХ-ЦЕ НЙЗТЙТХЕФ ОБ 5-К, ВПМЕЕ ВЩУФТЩК ХЪЕМ. рТЙ ЬФПН ПО ЧПЪЧТБЭБЕФУС ПВТБФОП, ЛПЗДБ ИПЪСЙО РСФПЗП ЛПНРШАФЕТБ ОБЮЙОБЕФ ЛБЛЙЕ-ФП ДЕКУФЧЙС У УЙУФЕНПК.

    7. йУРПМШЪПЧБОЙЕ

    дБЧБКФЕ Ч ЛПОГЕ ТБЪВЕТЕНУС, ЪБЮЕН Й ЛБЛ НЩ НПЦЕН ЙУРПМШЪПЧБФШ ЛМБУФЕТ Ч УЧПЕК РПЧУЕДОЕЧОПК ЦЙЪОЙ.
    дМС ОБЮБМБ ОХЦОП ТБЪ Й ОБЧУЕЗДБ ЪБРПНОЙФШ - ЛМБУФЕТ ЧЩЗПДЕО ФПМШЛП Ч ФПН УМХЮБЕ, ЛПЗДБ Ч ЧБЫЕК УЕФЙ ЕУФШ ЬООПЕ ЛПМЙЮЕУФЧП НБЫЙО, ЛПФПТЩЕ ЮБУФЕОШЛП РТПУФБЙЧБАФ Й ЧЩ ИПФЙФЕ ЙУРПМШЪПЧБФШ ЙИ ТЕУХТУЩ ОБРТЙНЕТ ДМС УВПТЛЙ KDE ЙМЙ ДМС МАВЩИ УЕТШЕЪОЩИ РТПГЕУУПЧ. чЕДШ ВМБЗПДБТС ЛМБУФЕТХ ЙЪ 10 НБЫЙО НПЦОП ПДОПЧТЕНЕООП
    ЛПНРЙМЙТПЧБФШ ДП 10 ФСЦЕМЩИ РТПЗТБНН ОБ ФПН-ЦЕ C++. йМЙ РПДВЙТБФШ ЛБЛПК-ФП РБТПМШ,
    ОЕ РТЕЛТБЭБС ОЙ ОБ УЕЛХОДХ ЬФПЗП РТПГЕУУБ ОЕЪБЧЙУЙНП ПФ ОБЗТХЪЛЙ ОБ ЧБЫ ЛПНРШАФЕТ.
    дБ Й ЧППВЭЕ - ЬФП РТПУФП ЙОФЕТЕУОП;-).

    8. ъБЛМАЮЕОЙЕ

    ч ЪБЛМАЮЕОЙЕ ИПЮХ УЛБЪБФШ, ЮФП Ч ЬФПК УФБФШЕ ОЕ ТБУУНПФТЕОЩ ЧУЕ ЧПЪНПЦОПУФЙ MOSIX, Ф.Л. С РТПУФП ДП ОЙИ ЕЭЕ ОЕ ДПВТБМУС. еУМЙ ДПВЕТХУШ - ЦДЙФЕ РТПДПМЦЕОЙС. :-)

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

    Для чего нужен кластер

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

    Возможности Win2k3

    Вообще говоря, одни кластеры предназначены для повышения доступности данных,
    другие - для обеспечения максимальной производительности. В контексте статьи нас
    будут интересовать MPP (Massive Parallel Processing) - кластеры, в
    которых однотипные приложения выполняются на нескольких компьютерах, обеспечивая
    масштабируемость сервисов. Существует несколько технологий, позволяющих
    распределять нагрузку между несколькими серверами: перенаправление трафика ,
    трансляция адресов , DNS Round Robin , использование специальных
    программ
    , работающих на прикладном уровне, вроде веб-акселераторов. В
    Win2k3, в отличие от Win2k, поддержка кластеризации заложена изначально и
    поддерживается два типа кластеров, отличающихся приложениями и спецификой
    данных:

    1. Кластеры NLB (Network Load Balancing) - обеспечивают
    масштабируемость и высокую доступность служб и приложений на базе протоколов TCP
    и UDP, объединяя в один кластер до 32 серверов с одинаковым набором данных, на
    которых выполняются одни и те же приложения. Каждый запрос выполняется как
    отдельная транзакция. Применяются для работы с наборами редко изменяющихся
    данных, вроде WWW, ISA, службами терминалов и другими подобными сервисами.

    2. Кластеры серверов – могут объединять до восьми узлов, их главная
    задача - обеспечение доступности приложений при сбое. Состоят из активных и
    пассивных узлов. Пассивный узел большую часть времени простаивает, играя роль
    резерва основного узла. Для отдельных приложений есть возможность настроить
    несколько активных серверов, распределяя нагрузку между ними. Оба узла
    подключены к единому хранилищу данных. Кластер серверов используется для работы
    с большими объемами часто изменяющихся данных (почтовые, файловые и
    SQL-серверы). Причем такой кластер не может состоять из узлов, работающих под
    управлением различных вариантов Win2k3: Enterprise или Datacenter (версии Web и
    Standart кластеры серверов не поддерживают).

    В Microsoft Application Center 2000 (и только) имелся еще один вид
    кластера - CLB (Component Load Balancing) , предоставляющий возможность
    распределения приложений COM+ между несколькими серверами.

    NLB-кластеры

    При использовании балансировки нагрузки на каждом из хостов создается
    виртуальный сетевой адаптер со своим независимым от реального IP и МАС-адресом.
    Этот виртуальный интерфейс представляет кластер как единый узел, клиенты
    обращаются к нему именно по виртуальному адресу. Все запросы получаются каждым
    узлом кластера, но обрабатываются только одним. На всех узлах запускается
    служба балансировки сетевой нагрузки (Network Load Balancing Service)
    ,
    которая, используя специальный алгоритм, не требующий обмена данными между
    узлами, принимает решение, нужно ли тому или иному узлу обрабатывать запрос или
    нет. Узлы обмениваются heartbeat-сообщениями , показывающими их
    доступность. Если хост прекращает выдачу heartbeat или появляется новый узел,
    остальные узлы начинают процесс схождения (convergence) , заново
    перераспределяя нагрузку. Балансировка может быть реализована в одном из двух
    режимов:

    1) unicast – одноадресная рассылка, когда вместо физического МАС
    используется МАС виртуального адаптера кластера. В этом случае узлы кластера не
    могут обмениваться между собой данными, используя МАС-адреса, только через IP
    (или второй адаптер, не связанный с кластером);

    В пределах одного кластера следует использовать только один из этих режимов.

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

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

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

    Настройка NLB-кластера

    Для организации NLB-кластеров дополнительное ПО не требуется, все
    производится имеющимися средствами Win2k3. Для создания, поддержки и мониторинга
    NLB-кластеров используют компонент «Диспетчер балансировки сетевой нагрузки»
    (Network Load Balancing Manager)
    , который находится во вкладке
    «Администрирование» «Панели управления» (команда NLBMgr). Так как компонент
    «Балансировка нагрузки сети» ставится как стандартный сетевой драйвер Windows,
    установку NLB можно выполнять и при помощи компонента «Сетевые подключения», в
    котором доступен соответствующий пункт. Но лучше использовать только первый
    вариант, одновременное задействование диспетчера NLB и «Сетевых подключений»
    может привести к непредсказуемым результатам.

    Диспетчер NLB позволяет настраивать и управлять из одного места работой сразу
    нескольких кластеров и узлов.

    Возможна также установка NLB-кластера на компьютере с одним сетевым
    адаптером, связанным с компонентом «Балансировка нагрузки сети», но в этом
    случае при режиме unicast диспетчер NLB на этом компьютере не может быть
    использован для управления другими узлами, а сами узлы не могут обмениваться
    друг с другом информацией.

    Теперь вызываем диспетчер NLB. Кластеров у нас пока нет, поэтому появившееся
    окно не содержит никакой информации. Выбираем в меню «Кластер» пункт «Новый» и
    начинаем заполнять поля в окне «Параметры кластера». В поле «Настройка
    IP-параметров кластера» вводим значение виртуального IP-адреса кластера, маску
    подсети и полное имя. Значение виртуального МАС-адреса устанавливается
    автоматически. Чуть ниже выбираем режим работы кластера: одноадресный или
    многоадресный. Обрати внимание на флажок «Разрешить удаленное управление» - во
    всех документах Microsoft настоятельно рекомендует его не использовать во
    избежание проблем, связанных с безопасностью. Вместо этого следует применять
    диспетчер или другие средства удаленного управления, например инструментарий
    управления Windows (WMI). Если же решение об его использовании принято, следует
    выполнить все надлежащие мероприятия по защите сети, прикрыв дополнительно
    брандмауэром UDP-порты 1717 и 2504.

    После заполнения всех полей нажимаем «Далее». В окне «IP-адреса кластера» при
    необходимости добавляем дополнительные виртуальные IP-адреса, которые будут
    использоваться этим кластером. В следующем окне «Правила для портов» можно
    задать балансировку нагрузки для одного или для группы портов всех или
    выбранного IP по протоколам UDP или TCP, а также блокировать доступ к кластеру
    определенным портам (что межсетевой экран не заменяет). По умолчанию кластер
    обрабатывает запросы для всех портов (0–65365); лучше этот список ограничить,
    внеся в него только действительно необходимые. Хотя, если нет желания возиться,
    можно оставить все, как есть. Кстати, в Win2k по умолчанию весь трафик,
    направленный к кластеру, обрабатывал только узел, имевший наивысший приоритет,
    остальные узлы подключались только при выходе из строя основного.

    Например, для IIS потребуется включить только порты 80 (http) и 443 (https).
    Причем можно сделать так, чтобы, например, защищенные соединения обрабатывали
    только определенные серверы, на которых установлен сертификат. Для добавления
    нового правила нажимаем «Добавить», в появившемся диалоговом окне вводим
    IP-адрес узла, или если правило распространяется на всех, то оставляем флажок
    «Все». В полях «С» и «По» диапазона портов устанавливаем одно и то же значение –
    80. Ключевым полем является «Режим фильтрации» (Filtering Mode) - здесь
    задается, кем будет обработан этот запрос. Доступно три поля, определяющие режим
    фильтрации: «Несколько узлов», «Один узел» и «Отключить этот диапазон портов».
    Выбор «Один узел» означает, что трафик, направленный на выбранный IP (компьютера
    или кластера) с указанным номером порта, будет обрабатываться активным узлом,
    имеющим наименьший показатель приоритета (о нем чуть ниже). Выбор «Отключить…»
    значит, что такой трафик будет отбрасываться всеми участниками кластера.

    В режиме фильтрации «Несколько узлов» можно дополнительно указать вариант
    определения сходства клиентов, чтобы направлять трафик от заданного клиента к
    одному и тому же узлу кластера. Возможны три варианта: «Нет», «Одно» или «Класс
    C». Выбор первого означает, что на любой запрос будет отвечать произвольный
    узел. Но не следует его использовать, если в правиле выбран протокол UDP или
    «Оба». При избрании остальных пунктов сходство клиентов будет определяться по
    конкретному IP или диапазону сети класса С.

    Итак, для нашего правила с 80-м портом остановим свой выбор на варианте
    «Несколько узлов - класс C». Правило для 443 заполняем аналогично, но используем
    «Один узел», чтобы клиенту всегда отвечал основной узел с наименьшим
    приоритетом. Если диспетчер обнаружит несовместимое правило, будет выведено
    предупреждающее сообщение, дополнительно в журнал событий Windows будет внесена
    соответствующая запись.

    Далее подключаемся к узлу будущего кластера, введя его имя или реальный IP, и
    определяем интерфейс, который будет подключен к сети кластера. В окне «Параметры
    узла» выбираем из списка приоритет, уточняем сетевые настройки, задаем начальное
    состояние узла (работает, остановлен, приостановлен). Приоритет одновременно
    является уникальным идентификатором узла; чем меньше номер, тем выше приоритет.
    Узел с приоритетом 1 является мастер-сервером, в первую очередь получающим
    пакеты и действующим как менеджер маршрутизации.

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

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

    После установки NLB-кластера не забудь изменить DNS-запись, чтобы
    разрешение имени теперь показывало на IP-кластера.

    Изменение загрузки сервера

    В такой конфигурации все серверы будут загружены равномерно (за исключением
    варианта «Один узел»). В некоторых случаях необходимо перераспределить нагрузку,
    большую часть работы возложив на один из узлов (например, самый мощный).
    Применительно к кластеру правила после их создания можно изменить, выбрав в
    контекстном меню, появляющемся при щелчке на имени, пункт «Свойства кластера».
    Здесь доступны все те настройки, о которых мы говорили выше. Пункт меню
    «Свойства узла» предоставляет несколько больше возможностей. В «Параметрах узла»
    можно изменить значение приоритета для конкретно выбранного узла. В «Правилах
    для портов» добавить или удалить правило нельзя, это доступно только на уровне
    кластера. Но, выбрав редактирование конкретного правила, мы получаем возможность
    скорректировать некоторые настройки. Так, при установленном режиме фильтрации
    «Несколько узлов» становится доступным пункт «Оценка нагрузки», позволяющий
    перераспределить нагрузку на конкретный узел. По умолчанию установлен флажок
    «Равная», но в «Оценке нагрузки» можно указать другое значение нагрузки на
    конкретный узел, в процентах от общей загрузки кластера. Если активирован режим
    фильтрации «Один узел», в этом окне появляется новый параметр «Приоритет
    обработки». Используя его, можно сделать так, что трафик к определенному порту
    будет в первую очередь обрабатываться одним узлом кластера, а к другому – другим
    узлом.

    Журналирование событий

    Как уже говорилось, компонент «Балансировка нагрузки сети» записывает все
    действия и изменения кластера в журнал событий Windows. Чтобы их увидеть,
    выбираем «Просмотр событий – Система», к NLB относятся сообщения WLBS (от
    Windows Load Balancing Service, как эта служба называлась в NT). Кроме того, в
    окне диспетчера выводятся последние сообщения, содержащие информацию об ошибках
    и обо всех изменениях в конфигурации. По умолчанию эта информация не
    сохраняется. Чтобы она записывалась в файл, следует выбрать «Параметры –>
    Параметры журнала», установить флажок «Включить ведение журнала» и указать имя
    файла. Новый файл будет создан в подкаталоге твоей учетной записи в Documents
    and Settings.

    Настраиваем IIS с репликацией

    Кластер кластером, но без службы он смысла не имеет. Поэтому добавим IIS (Internet
    Information Services)
    . Сервер IIS входит в состав Win2k3, но, чтобы свести к
    минимуму возможность атак на сервер, он по умолчанию не устанавливается.

    Инсталлировать IIS можно двумя способами: посредством «Панели управления» или
    мастером управления ролями данного сервера. Рассмотрим первый. Переходим в
    «Панель управления – Установка и удаление программ» (Control Panel - Add or
    Remove Programs), выбираем «Установку компонентов Windows» (Add/Remove Windows
    Components). Теперь переходим в пункт «Сервер приложений» и отмечаем в «Службах
    IIS» все, что необходимо. По умолчанию рабочим каталогом сервера является \Inetpub\wwwroot.
    После установки IIS может выводить статические документы.

    Пресс-центр

    Создание кластера на базе Windows 2000/2003. Шаг за шагом

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

    Microsoft Windows 2000/2003 поддерживает две технологии кластеризации: кластеры с балансировкой нагрузки (Network Load Balancing) и кластеры серверов.

    В первом случае (кластеры с балансировкой нагрузки) служба Network Load Balancing придает службам и приложениям свойства высокого уровня надежности и масштабируемости за счет объединения до 32 серверов в единый кластер. Запросы от клиентов в данном случае распределяются среди узлов кластера прозрачным образом. При отказе узла кластер автоматически изменяет свою конфигурацию и переключает клиента на любой из доступных узлов. Этот режим конфигурации кластера также называется active-active режимом, когда одно приложение работает на нескольких узлах.

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

    Кластерный подход к организации внутренней сети дает следующие преимущества:

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

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

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

    • Microsoft Windows 2000 Advanced (Datacenter) Server или Microsoft Windows 2003 Server Enterprise Edition, установленные на всех серверах кластера.
    • Установленная служба DNS. Немного поясню. Если вы строите кластер на основе двух контроллеров домена, то намного удобнее использовать службу DNS, которую вы в любом случае устанавливаете при создании Active Directory. Если вы создаете кластер на основе двух серверов, членов Windows NT домена, то вам придется использовать либо службу WINS, либо заносить соответствие имен и адресов машин в файл hosts.
    • Terminal Services для удаленного управления серверами. Не обязательно, но при наличии Terminal Services удобно управлять серверами со своего рабочего места.

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

    • Аппаратное обеспечение для узла кластера лучше подбирать, основываясь на Cluster Service Hardware Compatible List (HCL). По рекомендациям Microsoft аппаратное обеспечение должно быть протестировано на совместимость с Cluster Services.
    • Соответственно вам понадобятся два сервера, имеющих по два сетевых адаптера; SCSI-адаптер, имеющий внешний интерфейс для подключения внешнего массива данных.
    • Внешний массив, имеющий два внешних интерфейса. Каждый из узлов кластера подключается к одному из интерфейсов.

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

    Требования к сетевым настройкам

    • Уникальное NetBIOS имя для кластера.
    • Пять уникальных статических IP-адресов. Два для сетевых адаптеров на кластерную сеть, два для сетевых адаптеров на общую сеть и один для кластера.
    • Доменная учетная запись для кластерного сервиса (Cluster service).
    • Все узлы кластера должны быть либо member server в домене, либо контроллерами домена.
    • Каждый сервер должен иметь два сетевых адаптера. Один для подключения в общую сеть (Public Network), второй для обмена данными между узлами кластера (Private Network).

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

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

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

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

    Установка двухузлового кластера может быть разделена на 5 шагов

    • Установка и настройка узлов в кластере.
    • Установка и настройка разделяемого ресурса.
    • Проверка дисковой конфигурации.
    • Конфигурирование первого узла кластера.
    • Конфигурирование второго узла в кластере.

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

    Установка и настройка узлов

    Мы немного упростим задачу. Поскольку все узлы кластера должны быть либо участниками домена, либо контроллерами домена, то корневым держателем каталога AD (Active Directory) сделаем 1-й узел кластера, на нем же будет работать DNS-служба. 2-й узел кластера будет полноправным контроллером домена.

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

    Сетевые настройки

    Перед началом установки кластера и Active Directory необходимо выполнить сетевые настройки. Все сетевые настройки хочется разделить на 4 этапа. Для распознавания имен в сети желательно иметь DNS-сервер с уже существующими записями о серверах кластера.

    Каждый сервер имеет по две сетевые карты. Одна сетевая карта будет служить для обмена данными между узлами кластера, вторая будет работать на клиентов в нашей сети. Соответственно первый назовем Private Cluster Connection, второй назовем Public Cluster Connection.

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

    • My Network Places → Properties
    • Private Cluster Connection → Properties → Configure → Advanced

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

    • Internet Protocol (TCP/IP) → Properties → Use the following IP: 192.168.30.1

      (Для второго узла используйте адрес 192.168.30.2). Введите маску подсети 255.255.255.252 . В качестве адреса DNS-сервера для обоих узлов используйте адрес 192.168.100.1 .

    • Дополнительно на вкладке Advanced → WINS выберите пункт Disabled NetBIOS over TCP/IP . Для настроек сетевых адаптеров общей (Public) сети этот пункт опустите.
    • Проделайте то же самое с сетевой картой для локальной сети Public Cluster Connection. Используйте адреса, приведенные в таблице. Единственная разница в конфигурации двух сетевых плат состоит в том, что для Public Cluster Connection не требуется выключения режима WINS - NetBIOS over TCP/IP .

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

    Узел Сетевое имя IP address MASK DNS Server
    1 Public Cluster Connection 192.168.100.1 255.255.255.0 192.168.100.1
    1 Private Cluster Connection 192.168.30.1 255.255.255.252 192.168.100.1
    2 Public Cluster Connection 192.168.100.2 255.255.255.0 192.168.100.1
    3 Private Cluster Connection 192.168.30.2 255.255.255.252 192.168.100.1

    Установка Active Directory

    Поскольку моя статья не преследует цель рассказать об установке Active Directory, то этот пункт я опущу. Всевозможных рекомендаций, книг об этом написано достаточно много. Выберете доменное имя, вроде mycompany.ru, установите Active Directory на первом узле, добавьте второй узел в домен в качестве контроллера домена. Когда все сделаете, проверьте конфигурации серверов, Active Directory.

    Установка Cluster User Account

    • Start → Programs → Administrative Tools → Active Directory Users and Computers
    • Добавьте нового пользователя, например, ClusterService.
    • Установите флажки на: User Cannot Change Password и Password Never Expires .
    • Также добавьте этого пользователя в группу администраторов и дайте ему права Log on as a service (права назначаются в Local Security Policy и Domain Controller Security Policy ).

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

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

    1. Оба сервера должны быть выключены, внешний массив включен, подсоединен к обоим серверам.
    2. Включаем первый сервер. Получаем доступ к дисковому массиву.
    3. Проверяем, чтобы внешний дисковый массив был создан как Basic. Если это не так, то переведем диск с помощью опции Revert to Basic Disk .
    4. Создаем на внешнем диске через Computer Manage-ment → Disk Management небольшой раздел. По рекомендациям Microsoft он должен быть не менее 50 Мб. Я рекомендую создать раздел в 500 Мб. или чуть больше. Для размещения кластерных данных этого вполне достаточно. Раздел должен быть отформатирован в NTFS.
    5. На обоих узлах кластера этот раздел будет назван одной буквой, например, Q. Соответственно при создании раздела на первом сервере выберем пункт Assign the following drive letter - Q .
    6. Оставшуюся часть диска вы можете разметить по своему желанию. Конечно, крайне желательно использовать файловую систему NTFS. Например, при настройке служб DNS, WINS основные базы служб будут перенесены на общий диск (не системный том Q, а второй, созданный вами). И по соображению безопасности вам будет удобнее использовать именно NTFS-тома.
    7. Закрываем Disk Management и проверяем доступ к вновь созданному разделу. Например, можно создать на нем текстовый файл test.txt , записать и удалить. Если все прошло нормально, то с конфигурацией внешнего массива на первом узле мы закончили.
    8. Теперь выключаем первый сервер. Внешний массив должен быть включен. Включаем второй сервер и проверяем доступ к созданному разделу. Также проверим, чтобы буква, назначенная первому разделу, была идентична выбранной нами, то есть Q.

    На этом конфигурация внешнего массива завершена.

    Установка Cluster Service Software

    Конфигурация первого узла кластера

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


    Конфигурация второго узла кластера

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

    1. В диалоговом окне Create or Join a Cluster выберите The second or next node in the cluster и нажмите далее.
    2. Введите имя кластера, которое мы задали ранее (в примере это MyCluster), и нажмите далее.
    3. После подключения второго узла к кластеру Cluster Service Configuration Wizard автоматически заберет все установки с основного узла. Для запуска службы Cluster Service используйте имя, которые мы создавали ранее.
    4. Введите пароль вашей учетной записи и нажмите далее.
    5. В следующем диалоговом окне нажмите Finish для завершения установки.
    6. Cluster service будет запушен на втором узле.
    7. Закройте окно Add/Remove Programs .

    Для установки дополнительных узлов кластера используйте эту же инструкцию.

    Постскриптум, благодарности

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

    Шаг Узел 1 Узел 2 Внешний массив