Стоит ли мне строить кластер/RedHat, портал

Модераторы: Trinity admin`s, Free-lance moderator`s

Ответить
cbh
member
Сообщения: 25
Зарегистрирован: 04 дек 2007, 10:27
Откуда: Казань
Контактная информация:

Стоит ли мне строить кластер/RedHat, портал

Сообщение cbh » 23 апр 2009, 14:24

Добрый день,по моему я поместил тему куда надо
я в тупике.Я собираюсь открывать портал на 20000 пользователей с кучей сервисов.Все касательно софта,CMS и прочих аспектов программирования уже решено.
Попробую описать на примере yahoo
Допустим мой сайт называется www.site.ru
сначала я запускаю пять сервисов,прописываю через домены третьего уровня
1) games.site.ru
2) rabota.site.ru
3) molotok.site.ru
4) blog.site.ru
5) forum.site.ru
Каждый из этих сервисов написан с нуля,и каждый устанавливается на отдельный недорогой сервер.
А сам основной сайт www.site.ru устанавливается тоже на отдельный более мощный сервер.Базы пользователей линкуются между собой,то есть пользователь бродит по сайту не замечая переходит с сервера на сервер,залогинившись единожды.Все тяжелое,в том числе и бекап будетхраниться на внешнем дисковом массиве.Сервера между собой свзяаны по гигабитной сети.
На всех серверах установлен лицензионный RedHat 32 битный
В оптимале мне нужно,чтобы допустим когда сервер games.site.ru будет загружен на 100%,а rabota.site.ru на 30 нагрузка распределялась равномерным способом между ними,то есть получается как бы кластер распределения нагрузки (LB)
Но это же получается совершенно раздельные системы?с разными базами,данными,причем динамично обновляемыми,стоит ли в таком случае ставить кластер?

Пока сильно смотрю в сторону Linux Virtual Server и вот этой статьи http://www.opennet.ru/docs/RUS/webcluster/index.html
Что вы думаете,заранее спасибо

Аватара пользователя
exLH
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 5061
Зарегистрирован: 11 фев 2004, 15:49
Откуда: Москва
Контактная информация:

Re: Стоит ли мне строить кластер/RedHat, портал

Сообщение exLH » 23 апр 2009, 15:26

Сходите сюда - почитайте, посмотрите...

cbh
member
Сообщения: 25
Зарегистрирован: 04 дек 2007, 10:27
Откуда: Казань
Контактная информация:

Re: Стоит ли мне строить кластер/RedHat, портал

Сообщение cbh » 23 апр 2009, 15:45

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

Аватара пользователя
exLH
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 5061
Зарегистрирован: 11 фев 2004, 15:49
Откуда: Москва
Контактная информация:

Re: Стоит ли мне строить кластер/RedHat, портал

Сообщение exLH » 23 апр 2009, 15:48

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

cbh
member
Сообщения: 25
Зарегистрирован: 04 дек 2007, 10:27
Откуда: Казань
Контактная информация:

Re: Стоит ли мне строить кластер/RedHat, портал

Сообщение cbh » 24 апр 2009, 15:08

читаю уже второй день,много прояснил для себя,но кое что все еще пока неясно,буду признателен если проясните
1)стоит ли использовать DNS Round Robin для балансировки?Я читал что эта технология неэффективна и может использоваться только в смешанном варианте с другими, так как каждый провайдер имеет в своем распоряжении кэширующие DNS сервера, которые сводят на НЕТ все плюсы.
2)На месте директоров лучше использовать аппаратное средство,например циско или же балансировку можно делать WEB проксированием,например через Ngnix,то есть поставить два директора один из них резервный.
3)Нужно ли кластеризовать в моем случае SQL как написано здесь http://www.howtoforge.com/loadbalanced_ ... ter_debian или же эффективнее будет независимые БД разнести по разным SQL серверам, причем каждый из них в отдельный openvz/vserver контейнер,потому как SQL не умеет себя толком ограничивать. Физически все это может жить как на одном сервере, так и на нескольких. Для каждого независимого SQL несколько слейвов с репликацией.
Просто меня смущает одно, из обязательных условий проекта хендовер пользователя,то есть пользовател должен бродить по сайту не замечая этого,один сервис должен передавать его другому.Ну как на мейл ру,залогиновшись единожды,он может проверить почту,пообщать в своем мире,поиграть игры итд.
И основной запор в моей голове это правильно построение SQL базы
4) я в сильно затуплении,скажем так,....не понимаю в чем разница в построении кластера с использованием LVS+heartbeat либо же DRBD+heartbeat (возможно это тупой вопрос,поэтому извиняйте)
drbd не масштабируется(а маштабируемость понадобиться) а LVS хорош для распределения запросов на обслуживание.
Однако я не представляю алгоритма учитывающего верность данных на каждом сервере. Ведь именно на правильные и актуальные данные нужно отправлять клиентов.Проблема еще усугубляется и тем что сайт будет очень диномично обновляемым причем информация будет самой разной,видео,фото,музыка,новости,текст,итд.Выход внешнее хранилище???что делать?

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

Аватара пользователя
setar
Site Admin
Site Admin
Сообщения: 1990
Зарегистрирован: 22 авг 2002, 12:03
Откуда: St. Petersburg

Re: Стоит ли мне строить кластер/RedHat, портал

Сообщение setar » 27 апр 2009, 15:07

Все нижесказанное это мое личное мнение, сейчас оно такое, возможно в последствии я его поменяю.
1) DNS Round Robin имеет смысл использовать внутри кластера для балансировки например нагрузки от шлюзующих WEB серверов в коннекте к хранилке или БД.
Внешний RoundRobin от провайдера лишен смысла.
2)Оба решения имеют право на жизнь, програмное решение более гибко, аппаратное более надежно.
3) Клистеризация на MySql на нынешний период времени оставляет желать лучшего. Если упор делаете на непрерывность обслуживания, рекомендую режим актив-пассив раздельных и не знающих друг о друге серверов с репликацией на блочном уровне например BRDB. Достойных и надежных решений с балансировкой нагрузки я не знаю (те что знаю либо морально устарели, либо не надежны). Можно использовать продукт, то что называется MySQL Cluster но для нормальной работы потребуется +1 сервер который будет заниматься арбитражем, читать тут . Можно юзать локальный round-robin и несколько серверов реплицирующихся между собой, но для отказоустойчивости придется осилить достаточно сложную настройку

4) не очень понял вопроса ибо heartbeat это пакет который следит за остальными участниками кластера и выполняет действия по наступлении события (падения или восстановления партнеров) DRDB - средство репликации блочного устройства а LVS - набор разных средств работы в кластере.
drbd не масштабируется
- откуда такая инфа ??? демон следит за изменением блочного устройства и реплицирует изменения на оппонента, если размер блочного устройства меняется то и репликация будет происходить на уже измененном размере. Простой пример LVM + DRDB причем это работает как DRDB поверх LVM так и наоборот.
Однако я не представляю алгоритма учитывающего верность данных на каждом сервере.
целостность данных на блочном уровне отслеживается демоном drbd алгоритм не сложный, разруливает все вплоть до ситуации split brain.
Ведь именно на правильные и актуальные данные нужно отправлять клиентов.Проблема еще усугубляется и тем что сайт будет очень диномично обновляемым причем информация будет самой разной,видео,фото,музыка,новости,текст,итд.Выход внешнее хранилище???что делать?
drbd это все решает, но я все же рекомендовал бы использовать любую параллельную кластерную ФС. Если коммерческое использование смотрите в сторону GPFS (примерно 300$ на сервер), из бесплатных glusterfs например неплоха.


P.S. что касается статьи в опеннете по построению web кластера с балансировкой нагрузки - она устарела морально , последняя правка 13 Dec 2001 ( mod_backhand не поддерживается )

Ответить

Вернуться в «Кластеры, Программное обеспечение»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей