Jump to content

Recommended Posts

Posted (edited)

Необходимо сделать несколько ВПН серверов для разграничения нагрузки.

Пользователи настраивают подключение на 1 ВПН сервер.

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

Кто-то сталкивался с такой задачей?

 

Используется MPD на Фре (poptop на линуксе) + freeradius.

Edited by aklex
  • Replies 61
  • Created
  • Last Reply

Top Posters In This Topic

Posted

делается так:

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

Posted

Жестко... А так не пробовали:

$ host vpn.lds.net.ua
vpn.lds.net.ua has address 10.0.0.8
vpn.lds.net.ua has address 10.0.0.12
vpn.lds.net.ua has address 10.0.0.14
vpn.lds.net.ua has address 10.0.0.5

 

Posted
martin74

пробовали - замечательно работает

В этом решении есть минус, точнее 3

 

 

1. Выход из стороя ВПН-сервера - проблема. Нагрузка не перераспределиться автоматом, нужно ручое исправление зоны.

2. ДНС кешируем, отсюда - отказ одного ВПН-сервера может вызвать неработспособность многих клиентов даже после п.2 - многие виндовые файрволы кешируют агрессивно.

3. (возможно только я не смогг настроить) Нагрузка распределиться равномерно, либо нужно вешать ip-алиасы

 

 

потому, вопос - лоад-балансеры кто то делал, и если да то как?

Posted
1. Выход из стороя ВПН-сервера - проблема. Нагрузка не перераспределиться автоматом, нужно ручое исправление зоны.
Автоматом нагрузка перераспределится, если использовать pppoe вместо pptp. В таком случае никаких телодвижений вообще не нужно.

А для любых важных серверов нужно содержать копии систем, чтоб свести даунтайм к минимуму. Например, можно использовать xen+drbd+ha.

Posted
martin74

пробовали - замечательно работает

В этом решении есть минус, точнее 3

 

 

1. Выход из стороя ВПН-сервера - проблема. Нагрузка не перераспределиться автоматом, нужно ручое исправление зоны.

2. ДНС кешируем, отсюда - отказ одного ВПН-сервера может вызвать неработспособность многих клиентов даже после п.2 - многие виндовые файрволы кешируют агрессивно.

3. (возможно только я не смогг настроить) Нагрузка распределиться равномерно, либо нужно вешать ip-алиасы

 

 

потому, вопос - лоад-балансеры кто то делал, и если да то как?

1 и 2 - Глупости все это, все нормально работает, у адреса vpn.prov.ru четыре адреса отдаются dnsом

Posted (edited)

1 и 2 - Глупости все это, все нормально работает, у адреса vpn.prov.ru четыре адреса отдаются dnsом

А объясните мне тупому, пожалуйста, как может куча разных IP на одно имя в DNS сервере РАВНОМЕРНО распределить пользователей между серверами??? Где гарантия, что 1000 из 1005 юзеров не загрузят vpn1.pupkin.com, а остальные 5 из 1000 будут юзать vpn2.pupkin.com??? С какого перепугу DNS сервер будет УЧИТЫВАТЬ нагрузку на vpn сервера и отдавать соответственно адрес НЕНАГРУЖЕННОГО сервера??

Edited by AlKov
Posted (edited)

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

Edited by ugluck
Posted

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

Вы уверены? Винда не пингует пптп-сервер перед коннектом, чтоб проверить, жив ли он. Не будет ли так же по кругу периодически выпадать ошибка 800?

Posted

Magnum72

Есть 4 ВПНа

 

192,168,1,1

192,168,1,2

192,168,1,3

192,168,1,4

 

 

и по host vpn.prov.ua отдаются все 4.

 

И вот у вас сгорел БП на одном из них, ЧТО БУДЕТ? условие - руками ничего не править!

 

DNS выдает айпишники тупо раунд-робином, не взирая ни на что. поэтому распределится все действительно равномерно. ни о каком учете нагрузки речь не идет. в случае отказа одного из пптп-серверов клиент, получивший дохлый айпишник, вынужден будет перезапросить адрес у днс-сервера.
Вы уверены? Винда не пингует пптп-сервер перед коннектом, чтоб проверить, жив ли он. Не будет ли так же по кругу периодически выпадать ошибка 800?

Не знаю, что там пингует, но поытка конекта имхо никак не связана с резолвом.

 

Разрешил имя, получил ип дохлого ВПНа, закешировал, и долбишь до охренения - вот ваш сценарий )

 

 

Posted

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

Posted

ugluck

просмотрел пост, сории, не всегда применимо, у меня все ВПНы включены в один свитч и стоят в ядре сети...

Нет никакого ближайшего.

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

 

Posted
числом алиасов :) красиво :) а как с отказоустойчивостью ? айпишники по heartbeat?
красиво?

Надеюсь, вы имели ввиду "убожество". )))

Ну почему ДНС не может давать ответ с заданной вероятностью, а не роунд-робин ( Было б куда изящнее.

 

С отказоустойчивастью - все плохо.

При обслуживании - выкидываю из кластера зараннее. При аварии - в аварийном режиме.

Как сделать лучше - не знаю (

 

С pppoe все куда изящнее )

 

Posted

2sirmax: pppoe - это L2, врядли изящнее таскать VLANы по всей сети (если, конечно, сеть не на нортелях).

а почему не юзаете heartbeat для алиасов? тем более, если серваки в одном свиче - дык вообще красота..

Posted
2sirmax: pppoe - это L2, врядли изящнее таскать VLANы по всей сети (если, конечно, сеть не на нортелях).

а почему не юзаете heartbeat для алиасов? тем более, если серваки в одном свиче - дык вообще красота..

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

pppoe изящно балансируется, но имеет другие минусы. Иначе б все его использовали.

 

Сеть не на нортелах (

Posted

странные вы какие то... Стоит 5 серверов. Взял на офисе среднестатическую винду, выключил один из серверов. Время коннекта увеличилось секунды на две... Никаких ошибок, все как то само. Что я сделал неправильно?

Впн - поптоп, все соединения настраиваются исключительно на dns имя....

Posted
странные вы какие то... Стоит 5 серверов. Взял на офисе среднестатическую винду, выключил один из серверов. Время коннекта увеличилось секунды на две... Никаких ошибок, все как то само. Что я сделал неправильно?

Впн - поптоп, все соединения настраиваются исключительно на dns имя....

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

Вообщето в виндах по другому.

И в дргуих ОС скорее всего тоже.

Ответ днс сервера содержит сразу все ип адреса, просто порядок их меняется. Если пптп не может законектится к одному, он пробует следующий из списка.

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

Posted

у нас ряд pptp серверов воткнут в одну циску, все имеют один ип, распределение нагрузки происходит с помощью какой-то умной команды на 7606 (какой - забыл)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.