Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
Добрый день. Нужна помощь по организации кластера. В принципе он у меня собран и данные дублируеются с одного компа на другой, но возник вопрос как организовать балансировщик нагрузки (точнее 2, чтобы один не стал узким местом). Я читал в интернете, что уже есть готовые программные решения для этого типа Windows NLB (Network Load Balancer), но как его настроить? Возможно кто-то уже сталкивался с подобными проблемами и может подсказать как это сделать или хотя бы указать верное напрпавление.
Версия кластера MySQL Cluster NDB 7.0
192.168.1.2 - первый узел MySQL сервер (также установлен management узел, но я его перенесу на другой комп, пока только 2 машины )))
192.168.1.3 - второй узел MySQL сервер
Также как я понял, что нужно создать виртуальный IP адрес для всего кластера, к которому собственно и будет подключаться Web-приложение. Как его установить? И что значит IP-адрес всего кластера?
Буду невероятно благодарен за помощь.
Неактивен
Если Вас не пугает словосочетание «Windows NLB», значит, Вы запустили кластер на Windows.
Это правда? Мне казалось, кластер под Windows не запускался по каким-то внутренним причинам.
Что касается непосредственно балансировки. Каждая более-менее современная операционная
система позволяет балансировать нагрузку между бэкендами. В конечном итоге все так или иначе
сводится к NAT запросов на один из хостов. Можете попробовать попользоваться этими средствами,
или даже взять какую-нибудь программу (например, haproxy, которая может еще и отслеживать
состояние живости каждого из бэкендов). Однако проблему выпадания балансировщика это не
решит.
Мне известно два способа решить проблему с выпаданием балансировщика — попроще и посложнее.
Способ попроще заключается в DNS-балансировке. Т.е. Вы берете одно имя (например,
mycluster.domain.ru) и прописываете к нему два А-адреса (192.168.1.2 и 192.168.1.3). Практически
все операционные системы будут при этом обращаться по очереди к каждому из IP таким образом
балансируя нагрузку между серверами (и обеспечивая некоторую толерантность к отключению).
В эту группу не входит Windows Vista, которая всегда будет ломиться на «ближайший» адрес (а учитывая
то, что серверы в одной сети — всегда на первый).
Способ посложнее заключается во внедрении протокола OSPF и размазывании одного адреса
на нескольких балансировщиках. При этом выпадение одного из балансеров всего лишь снимает
с него анонс, а второй при этом продолжает функционировать. Второй способ более толерантен к
выкрутасам типа балансировки Vista, но сложнее в реализации с серверной стороны.
P.S. Кластер на 2 серверах не стабилен, нужно добавить третий как минимум.
Неактивен
Кластер я собрал на Windows XP. Просто в интернете наткнулся на статью, в которой парень под Linux построил кластер в такой конфигурации приблизительно:
192.168.1.2 - первый узел
192.168.1.3 - второй узел
192.168.1.4 - управляющий узел + балансировщик 1
192.168.1.5 - балансировщик 2
192.168.1.6 - некий виртуальный IP всего кластера, к которому подключается всё приложение. И два балансировщика работают как active/passive, т.е. работает один, если свалится, то другой. Вот я пытаюсь приспособить некую аналогию под Windows XP. Поэтому мне и интересно как сделать виртуальный IP всему кластеру. Что это за адрес и кому он назначается. Я просто только начинающий интернетчик и многие термины мне пока не ясны. К примеру финт с DNS я не понял. Точнее откуда взять это имя...
Неактивен
Имя — придумать
Кстати, я подумал, что в такой ситуации можно и без OSPF обойтись. Например, так: поднять два балансера,
но назначить дополнительный IP (.6 в Вашем примере) только одному из них. А на втором организовать
тупой ping этого балансера. Как только ping не проходит — поднимать дополнительный IP на втором балансере.
+- будет работать. Из реальных сложностей — нужно уметь опускать этот доп.IP как только первый балансер
включится в строй (пинговать его отдельно или слушать ARP?).
А кластер на WinXP — это классно. Рад, что баги побороли
P.S. Ах, да, не представляю себе, как это сделать на Windows. Можно попробовать покопаться в WScriptHost,
но я не уверен, что оно может поднять/опустить дополнительный IP. Ну и штатный балансировщик Windows
на клиентские операционки не ставится, вроде, т.е. Вам нужно будет что-то типа Windows Server (опять таки,
говорю по памяти Windows2000, с тех пор могло что-то кардинально поменяться, хотя, сомневаюсь).
Неактивен
скачал себе NLB от Микрософта...(там патчик есть, чтобы ставить на ХР). Не добавляет узел в кластер, пишет, что на том узле (который я хочу присоединить) нет NLB. Как его дальше конфигурировать я не знаю ))) Видимо придется переползти на Windows Server 2003.
Неактивен
Пиратствовать не надо, снесите все, поставьте Linux
Неактивен
Страниц: 1