Четырехузловой кластер с балансировкой нагрузки без внешнего массива данных::Журнал СА 10.2004
www.samag.ru
Льготная подписка для студентов      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
О журнале
Журнал «БИТ»
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Контакты
   

Jobsora


  Опросы

Какие курсы вы бы выбрали для себя?  

Очные
Онлайновые
Платные
Бесплатные
Я и так все знаю

 Читать далее...

1001 и 1 книга  
28.05.2019г.
Просмотров: 1924
Комментарии: 2
Анализ вредоносных программ

 Читать далее...

28.05.2019г.
Просмотров: 1957
Комментарии: 1
Микросервисы и контейнеры Docker

 Читать далее...

28.05.2019г.
Просмотров: 1516
Комментарии: 0
Django 2 в примерах

 Читать далее...

28.05.2019г.
Просмотров: 1114
Комментарии: 0
Введение в анализ алгоритмов

 Читать далее...

27.03.2019г.
Просмотров: 1686
Комментарии: 1
Arduino Uno и Raspberry Pi 3: от схемотехники к интернету вещей

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

Электронка - 2020!

 Четырехузловой кластер с балансировкой нагрузки без внешнего массива данных

Архив номеров / 2004 / Выпуск №10 (23) / Четырехузловой кластер с балансировкой нагрузки без внешнего массива данных

Рубрика: Администрирование /  Продукты и решения

ГЕННАДИЙ ДМИТРИЕВ

Четырехузловой кластер с балансировкой нагрузки

без внешнего массива данных

Месяца 3-4 назад к нам на фирму за консультацией пришли сотрудники одной из крупных государственных организаций. Для тестовой лаборатории им необходимо было собрать недорогой кластер под вывод информации для пользователей через Internet Information Server (IIS). После некоторых раздумий и консультаций с умными людьми мной было найдено довольно оригинальное решение, о нем я и буду сегодня рассказывать.

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

Задача

Для одного из учебных классов государственного предприятия потребовалось создать кластер для работы с проектно-исследовательской информацией. Важным моментом в данной реализации было то, что внешние клиенты могли работать с данной документацией через самый простой IIS. В качестве узлов кластера были закуплены 4 машины достаточно простой конфигурации, P4-2.4 ГГц/512 Мб/80 Гб SATA/2xLAN Adapter. После некоторых раздумий было решено использовать службу Network Load Balancing для распределения нагрузки между узлами кластера, а синхронизацию данных между серверами настроить с помощью службы Distributed File System. В качестве операционной системы достаточно выбрать Windows 2003 Server Standard Edition, поскольку она поддерживает обе необходимые нам службы.

Схема кластера представлена на рис. 1.

Рисунок 1

Рисунок 1

1-й этап. Подготовка серверов, установка домена, создание DNS-зон

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

  • Имеем 4 одинаковые машины с двумя сетевыми картами в каждой.
  • Ставим на все машины Windows 2003 Server (версия 2003-го сервера не имеет значения).
  • Настраиваем системы, исходя из таблицы:

Настройки серверов

Server 1

Server 2

Server 3

Server 4

NetBIOS Name

NODE1

NODE2

NODE3

NODE4

DNS Name

node1.cluster.local

node2.cluster.local

node3.cluster.local

node4.cluster.local

Marvel OnBoard

Lan IP

192.168.100.1

192.168.100.2

192.168.100.3

192.168.100.4

MASK for Marvel OnBoard Lan

255.255.255.240

255.255.255.240

255.255.255.240

255.255.255.240

DNS Server

192.168.100.1

192.168.100.1

192.168.100.1

192.168.100.1

Name Connection

Private Cluster Connection

D-Link 530T IP

192.168.0.1

192.168.0.2

192.168.0.3

192.168.0.4

MASK for

D-Link 530T IP

255.255.255.0

255.255.255.0

255.255.255.0

255.255.255.0

Name Connection

Public Cluster Connection

  • Для удобства переименуем название сетевых соединений, как Private и Public Cluster Connection, соответственно для кластерного и общего соединений.
  • На первом сервере NODE1 поднимаем Active Directory «cluster.local». Все ставим по умолчанию.
  • Проверяем DNS-записи серверов на основном контроллере домена.
  • Удаляем зону «.». Поднимаем forward (обратную) зону Active Directory Integrated.
  • Включаем остальные машины в домен в качестве Stand Alone Server.

2-й этап. Поднятие NLB-кластера

На этом этапе мы настраиваем службу NLB (Network Load Balancing). Вообще, честно говоря, эта служба имеет очень отдаленное отношение к понятию кластеров. Но уж так сложилось, что Microsoft назвала эту службу службой кластера. Как говорится, Microsoft by Design.

Все операции по созданию такого кластера проводятся на первом сервере с помощью оснастки «Network Load Balancing Manager».

  • Переходим на первый сервер. Запускаем NLB Manager.
  • Правой кнопкой на «Network Load Balancing Clusters –> Create New Cluster».
  • В первом окне заполняем поля с адресом, маской подсети и названием кластера:

Рисунок 2

Рисунок 2

  • На вкладке Cluster IP Address (рис. 3) можно ввести дополнительные адреса кластера. Мы пропускаем этот этап.

Рисунок 3

Рисунок 3

  • На вкладке Port Rules можно указать, на какие порты IP будет отзываться кластер. Здесь можно либо ограничить отклик только на определенные порты вроде порта сервера IIS, либо оставить по умолчанию и настроить позже:

Рисунок 4

Рисунок 4

  • На вкладке Connect выбираем первый сервер NODE1 и выбираем внешний интерфейс «Public Cluster Connection», на котором будет «висеть» служба NLB.

Рисунок 5

Рисунок 5

  • Все настройки первого узла в кластере можно свести в таблицу:

Название параметра

Значение

IP Address

192.168.0.5

Subnet Mask

255.255.255.0

Full Internet Name

cluster.cluster.local

Cluster Operation Mode

Multicast

Port Rules

Все оставляем по умолчанию

Host

Node1

Interfaces for available for configuring a new cluster

Выбираем

«Public Cluster Connection»

  • По окончании синхронизации данных получаем картину:

Рисунок 6

Рисунок 6

  • После создания кластера из одного узла и генерации самого кластера подключаем остальные 3 узла.
  • Правой кнопкой в NLB Manager на созданном кластере –> «Add new host for cluster».
  • В окошке «Connect» выбираем по очереди NODE2, NODE3, NODE4 и для каждого из узлов выбираем «Public Cluster Connection».
  • После всех процедур и генерации кластера в оснастке NLB Manager добавятся остальные узлы. В этой же оснастке мы сможем изменять параметры кластера, параметры узлов, как показано на рис. 7, 8.

Рисунок 7

Рисунок 7

Рисунок 8

Рисунок 8

3-й этап. Настройка IIS, настройка репликации данных

Третий этап по сути заключительный. На нем мы корректируем настройки IIS на всех четырех серверах и поднимаем репликацию содержимого IIS с первого узла в кластере на остальные. Все операции выполняются на первом сервере с помощью оснастки «Distributed File System Manager».

  • Проверяем, чтобы на всех узлах был установлен IIS в одинаковой конфигурации. Состав пакетов значения не имеет, просто лучше, если на всех узлах будет одна конфигурация.
  • На первом узле создаем директорию «C:IIS».
  • Запускаем DFS Manager (Distributed File System Manager).
  • На вкладке «Root Type» выбираем тип «Domain Root»:

Рисунок 9

Рисунок 9

  • На вкладке «Host Domain»выбираем наш кластер «cluster.local»:

Рисунок 10

Рисунок 10

  • На вкладке «Host Server» выбираем первый сервер node1.cluster.local:

Рисунок 11

Рисунок 11

  • На вкладке «Root Name» вводим имя корневого каталога:

Рисунок 12

Рисунок 12

  • На вкладке «Root Share» выбираем созданный нами каталог «C:IIS»:

Рисунок 13

Рисунок 13

  • Все настройки корневого каталога можно свести в таблицу:

Название параметра

Значение

Domain Name

cluster.local

Host Server

node1.cluster.local

Root Name

 

  • После создания корневой директории определяем общий доступ для каталога с содержимым IIS-сервера «C:\Inetpub\wwwroot».
  • В DFS Manager выбираем «New Link», вводим имя ссылки. В поле «Path to Target» выбираем директорию с содержимым IIS-сервера, предоставленную в общий доступ, как показано на рисунке:

 Рисунок 14

Рисунок 14

  • Остальные операции по созданию конечных ссылок можно будет проводить в оснастке «Distributed File System Manager»:

 Рисунок 15

Рисунок 15

  • Далее необходимо создать ссылки на остальные сервера кластера. Для этого на каждом из узлов предоставляем в общий доступ каталоги с содержимым IIS-сервера.
  • Выбираем «New Target» и по очереди добавляем оставшиеся три узла:

 Рисунок 16

Рисунок 16

  • После создания ссылки на второй узел нам будет предложено настроить репликацию между узлами кластера. Соглашаемся, выбираем первый узел (рис. 17). В качестве топологии репликации определяем ручной режим, как показано на рис. 18.

 Рисунок 17

Рисунок 17

 Рисунок 18

Рисунок 18

  • Топологию время репликации мы можем изменить в любое время из оснастки «DFS Manager». Для репликации данных с первого узла на оставшиеся выбираем ручной режим, как показано на рис. 19, 20.

 Рисунок 19

Рисунок 19

 Рисунок 20

Рисунок 20

  • После создания всех ссылок необходимо определенное время для предварительной синхронизации данных узлов. Обычно это занимает около 20-30 минут. Далее репликация данных будет проходить мгновенно, ну или почти мгновенно (по внутренней сети кластера). Результаты наших настроек наблюдаем в DFS Manager:

 Рисунок 21

Рисунок 21

  • Хочется также упомянуть, что репликация данных между серверами проходит от имени «System Account», поэтому при создании общего доступа к каталогам содержимого IIS-серверов достаточно прав на чтение. По крайней мере, у меня данный режим работал без особых проблем.

4-й этап. Последние штрихи

Последним штрихом у нас будет создание DNS-записи со ссылкой на внешний адрес кластера. Заходим в DNS Manager и создаем запись CNAME –> www.cluster.local –> cluster.cluster.local. Делаем это для того, чтобы при заходе на ссылку www.cluster.local мы автоматически попадали на внешний адрес кластера. В результате NLB будет разруливать ситуацию с нагрузкой на узлы кластера, а DFS поможет автоматически реплицировать данные с первого узла на остальные. Вот вроде и все.

Заключение

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

Хочется выразить глубокую благодарность за неоценимую интеллектуальную помощь Андрееву Павлу, системному администратору Novavox.


Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru