LINUX.ORG.RU

Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo


0

0

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

>>> Подробности



Проверено: Shaman007 ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

<i>В случае если по какой-то причине произошел сбой связи между серверами и в один момент времени оба сервера перешли в режим &#171;ведущего&#187;, может произойти ситуация когда данные на синхронизируемом разделе будут отличаться между серверами. Данная ситуация называется &#171;расщепление разума&#187; (&#171;split-brain&#187;). В этом случае администратор в ручном режиме должен произвести действия по разрешению этого конфликта.</i>

спасибо, не надо

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>База данных MySQL.

Биллинг на MySQL? Да, круто.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Биллинг на Gentoo? База биллинга в MySQL? ААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААА

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

imho уж лучше mysql-ный NDB кластер делать, чем mysql-ные базы на drdb "диске" размещать. все-таки нативное средство. и сервисы все время держать запущенными на резервном сервачке, предварительно проверив, что они на * биндятся, а не на конкретный адрес.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

А шлакварь не подойдет?

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

даже не смешно aka kodeks

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Лапухоиды совем разучились думать бу-га-га биллинговая система на mysql...

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Я на базе heartbeat и пары серверов с Mysql попробовал поднять что-то типа кластера с multimaster-репликацией всех баз - вроде как неплохо получилось: сервера одновременно являются и master и slave друг для друга.
Не понадобились ни Shared Storage, ни NDB, ни DRDB :) И что самое приятное - все прекрасно работает.

max2k1 ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Просто интересно, чем плох MySQL? Может кто-ть по-человечески объяснить? Он чего сильно нестабильный или не держит достаточно больших баз для биллинга?

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

А нельзя ли Шлакварь + текстовый файл (вместо МуСКЛя)?
Прям па филосовии ЮНИКС - делай типа проще.
И зачем сдублированный ? Шлакварь абсолютно надежен 99,99% uptime
- гарантировано Патриком.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

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

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

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

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

> Просто интересно, чем плох MySQL? Ничем не плох - отлично вписывается в сегмент для поддержки небольших баз данных. Ну не будешь ведь ставить oracle для пары базешек в пару гиг общим объемом, особенно если тебе кроме таблиц ничего от СУБД не надо? А вот если надо что-то посерьезней - по опыту эксплуатации 4-ки могу сказать что на таблицах объемом в пару десятков миллионов записей - Mysql ведет себя намного более вяло чем тот же oracle.

Кроме того, дорогие коммерческие системы -- это уже не просто СУБД, а платформа на которой строятся enterprise уровня решения. Хотя конечно можно и на Mysql сделать тоже самое, только сил придется больше потратить, а в итоге еще и дороже может получиться.

max2k1 ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>А нельзя ли Шлакварь + текстовый файл (вместо МуСКЛя)? >Прям па филосовии ЮНИКС - делай типа проще. >И зачем сдублированный ? Шлакварь абсолютно надежен 99,99% uptime - гарантировано Патриком.

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

volodja ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Gentoo + cluster + отказоустойчивый - понятия несовместимые принципиально.

Cybem ★★ ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Да что так на MySQL накинулись-то... Если это не биллинг какого-то МегаТелекома - то вполне подойдёт. И даже скажу - подходит.

А статья - так себе. На хавту не тянет, но для "посмотреть как кто сделал и сделать по своему" - вполне подходит. Как и мыскль :)

А еще - причем тут джента?

:ж)

oatcat ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Gentoo + cluster + отказоустойчивый - понятия несовместимые принципиально.

Сказал, как атрэзал! :) Аргументы?

:ж)

oatcat ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

хотя бы необходимость держать отдельный билдхост.

или есть идиоты, ставящие компилер на сервер?

gr_buza ★★★★ ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>хотя бы необходимость держать отдельный билдхост. или есть идиоты, ставящие компилер на сервер?

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

Так что не аргумент - понятия получаются совместимые, хотя и с натяжкой.

:ж)

oatcat ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Лол. А зачем у моего провайдера ~50000 клиентов и всё в плэйн текст. Если что и зазбоит то только мозг у админа

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Тоже хорошо... При правильном /dev/brain выбор типа mysql/pgsql или Gentoo/RHEL или (о, ужас, ужас!!!) linux/windows становится делом вкуса и религиозных предпочтений. А тут ведь было утверждение о полной непригодности связки gentoo+cluster+billing....

:ж)

oatcat ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

> сдохнет кулер только у лоха, чтобы диск не сыпался придумали RAID1 и daily backups

Мутант, это же биллинг, а не свалка гнилого порно.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

У меня биллинг на gentoo + mysql работает уже 1,5 года на ~3000 клиентах, и горя с ним не знаю (lanbilling).

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Ярый пример кластера из всякой фигни - google На то он и кластер ... Несколько десятков тысяч узлов, стоимость каждого пару сотен баксов Только винды там нет почемуто ...

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>сдохнет кулер только у лоха, чтобы диск не сыпался придумали RAID1 и daily backups

Для не-лохов демон максвелла на пару с мэрфи придумали выход из строя контроллера. А исключительно из чувства юмора незадолго до daily backups.

poison_reverse ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

> Только винды там нет почемуто

Потому что венда за 1.5k на машину за 0.2к - не слишком рациональное решение...

lenin ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Вообще-то emerge может работать и с бинарными пакетами, так что можно жить с Gentoo и без компилятора.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

У меня на мускуле и слаке работает биллинг обсчитывающий и тарифицирующий около 50Тб трафика в месяц на 8к клиентов в практически горячем режиме, без сбоев, ошибок и тормозов. Работает с транзакциями и всем и делами. Это крутится на 1 машине с 2Гб памяти. Правда биллинг этот - не нетап. Самый последний купленный нетап, к сожалению, не выдержал и гораздо меньших объемов.

Так что криворукие лемминги, орущие что мускул сакс - не более чем недалекие криворукие лемминги.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

Ну и чем тебе помешал компилер на серваке? Типа безопасности добавил? А подумать о вероятности взлома правильно настроенного сервера БД не пробовал?

mr_grind ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

И неустали ещё воровать новости с opennet?

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

> И неустали ещё воровать новости с opennet?

Что, уже все новости с opennet украли? Бе-е-дные, как же они теперь без новостей-та...

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>тарифицирующий около 50Тб трафика в месяц

Это всего-навсего ОДИН хост с посещаемостью милион-полтора миллиона хитов в день.

Гордиться тем, что на таких объемах работает mySQL... ну как-то неумно, что-ли.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Ну и чем тебе помешал компилер на серваке? Типа безопасности добавил?

Товарисч просто ничего не слышал ни про ACL ни про права доступа. Если слышал, не переживал бы по поводу наличия компилятора на сервере.

Отсутствие компилятора при лоакльны правах доступа как у юзера с шеллом (и тем паче - рута) -- это да, это крутая "защита". Скорее -- заSHITа.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Товарисч просто ничего не слышал ни про ACL ни про права доступа. Если слышал, не переживал бы по поводу наличия компилятора на сервере.

Пионэр, забудь про это. Если chroot нет, а у меня есть sh , то по барабану ACL.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

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

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

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

А тупо посчитать трафик с одного хоста, впрочем как и балаболить на форумах, много ресурсов не надо, хватит и плайн текста.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Товарисч просто ничего не слышал ни про ACL ни про права доступа. Если слышал, не переживал бы по поводу наличия компилятора на сервере.

Да дело даже не в ACL. Доступ к серверу БД должен быть только у сисадмина и админа БД. Плюс к этому не надо быть семи пядей во лбу, чтобы догадаться выключить ненужные сетевые сервисы. И кто потом будет ломать? Девочка Маша из бухгалтерии?

mr_grind ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Пионэр, забудь про это. Если chroot нет, а у меня есть sh , то по барабану ACL.

Окей, на выбор: FreeBSD 6.0-STABLE или RedHat EL 4. Все последние патчи накатаны. Дан шелл на машину с правами доступа nobody, компилятор, все файлы заголовков и все статические библиотеки для nobody недоступны. Ваши действия?

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>важаемый, ты когда-нибудь сталкивался с написанием биллинга и требованиям к его работе?

Я - работал. А вот вы, похоже, нет. Если считаете, что для таких целей, что Вы описали, подходит mysql.

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

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>У меня на мускуле и слаке работает биллинг обсчитывающий и тарифицирующий около 50Тб трафика в месяц на 8к клиентов в практически горячем режиме, без сбоев, ошибок и тормозов. Работает с транзакциями и всем и делами. Это крутится на 1 машине с 2Гб памяти. Правда биллинг этот - не нетап. Самый последний купленный нетап, к сожалению, не выдержал и гораздо меньших объемов.

Интересно, у меня тоже около 50 Тб через контору проходит :) Кажется, Вы путаете сбор трафика (предбиллинг) и собственно тарификацию (в т.ч. и хот-биллинг), выставление счетов и т.п. Сделать нормальный полнофункциональный биллинг на базе, не поддерживающей хранимые процедуры (не надо про последние версии - нужна проверенная многолетняя работа!) - МОЖНО, я сам принимал участие в таких проектах, но это идеологически НЕПРАВИЛЬНО и очень неудобно. Кстати, упомянутая база позволяет смотреть в онлайне детализированную статистику по интернет-хостам для любого клиента за последний, например, год? Уточню - при указанных объемах потребует хранения нескольких десятков миллиардов записей в год.. Хотя с использованием других технологий такая задача достаточно просто решается на примерно таком же железе.

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

> У меня на мускуле и слаке работает биллинг обсчитывающий и тарифицирующий около 50Тб трафика в месяц на 8к клиентов в практически горячем режиме, без сбоев, ошибок и тормозов. Работает с транзакциями и всем и делами. Это крутится на 1 машине с 2Гб памяти. Правда биллинг этот - не нетап. Самый последний купленный нетап, к сожалению, не выдержал и гораздо меньших объемов.

а какой у тебя биллинг? ищу в данный момент решение...

anonymous ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

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

Мусье, а не затруднит ли Вас привести хоть один аргумент в пользу Ваших голословных утверждений - "Я - работал. А вот вы..." "Оракл рулит. А вот ваш мускул говно..", чем-же он (mysql) так ниподходит для Ваших целвй ??? Вы, наглый Анонимус, только и знаете как гадить в форумах...

Freemen ()

Re: Создание отказоустойчивого кластера для биллинговой системы на базе Gentoo

>Мусье, а не затруднит ли Вас привести хоть один аргумент в пользу Ваших голословных утверждений - "Я - работал. А вот вы..." "Оракл рулит. А вот ваш мускул говно..", чем-же он (mysql) так ниподходит для Ваших целвй ??? Вы, наглый Анонимус, только и знаете как гадить в форумах...

Месье, объясняю. Есть БД, в которой должна храниться статистика по клиентам за 5 лет. В день заносится примерно 90 миллионов записей по примерно 25000 клиентам. Потрудитесь сами умножить 90 * 10^6 * 365 * 5 . И это только статистика, без учета всего остального -- платежей клиентов, регистраций, итд.

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

Если в Вашем ответе не будет хотя бы слов "TRIGGER, CONSTRAINT, STORED PROCEDURE, PARTITIONING", советую сразу начинать разбег до ближайшей стены.

Короче говоря, спор этот пустой. Вы хотите доказать, что СУБД MySQL - круто? Доказывайте. Хотите расказать всем, что бизнес-логику можно не хранить в СУБД, а постоянно писать внешний обвес, желательно на LAMP -- рассказывайте. Вот только биллингом это не называйте -- и все будет зашибись.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.