Рубрика «балансировка нагрузки» - 4

По городам и весям или как мы балансируем между узлами CDN Когда вы выросли настолько, что появились узлы в разных городах, возникает задача распределения нагрузки между ними. Задачи такой балансировки могут быть разными, но цель, как правило, одна: сделать так, чтобы было хорошо. У меня дошли руки рассказать о том, как это делают обычно, и как это сделано в ivi.ru.

В предыдущей статье я рассказал, что CDN у нас свой, при этом тщательно избегал подробностей. Пришла пора поделиться. Рассказ будет в стиле поиска решения, каким он мог бы быть.
Читать полностью »

Инструменты, которые мы будем использовать

Docker

Docker — простая и элегантная библиотека для создания легковесных изолированных друг от друга виртуальных контейнеров, в которых можно исполнять любой код. Совершенно не требователен к ресурсам, минимальный overhead.

Собрав контейнер один раз, его можно многократно использовать.

Простой пример — это БД Redis. Если нам необходимо несколько серверов Redis на одном компьютере, при обычном подходе нам придется изменять конфигурационные файлы в /etc/redis и менять файлы в /etc/init.d. Можно написать bash скрипт, но это не делает процесс легче.
Читать полностью »

Я упомянул, что разработал балансировщик на Go, хотя есть мнение, что фронтендом должен быть ngnix.

У меня есть такое чувство, что в комментах люди бывает фантазируют, о чем угодно. Возможно кто-то думает, что и я брешу и нет балансировщика на Go. Поэтому, я решил выложить код балансировщика сразу. Этот код был написан в “особой ситуации” за 4 часа, и потом работал примерно в такой форме 2 недели без перегрузки так, как “все” были в Греции. Код не красив и даже содержит ошибки, но так как он работал и балансировал, то уже чего то стоит.

Под катом почти оринальный скорописный балансировщик. Я убрал оригинальные константы и код декодирования кук.
Читать полностью »

Доброе время суток, читатели!

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

Итак, о задаче: есть два канала интернет, шлюз на FreeBSD

gate# uname -a
FreeBSD gate 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Thu Nov 1 06:48:52 OMST 2012 root@gate:/usr/obj/usr/src/sys/GATE amd64

Не то, чтобы необходимость, но желание создать гибкую систему с балансировкой трафика по каналам и желание получить премию от руководства.
Канал №1: безлимитка, скорость 7 Мб, реальный ip-адрес
Канал №2: безлимитка, скорость до 60Мб, реальный ip-адрес.
Со стороны провайдера были установлены шлюзы, через которые реализую DMZ на «ловушки» для хакеров, поэтому настройки PF и SQUID минимальны

Читать полностью »

Продолжаем публикацию полезных статей о непростых вещах.
Сегодня речь пойдёт о публикации различных сервисов через несколько провайдеров связи одновременно.

В связи с тем, что с течением времени почти во всех организациях появляются дополнительные каналы связи для резервирования или других нужд, возникает вопрос: «А можно ли использовать эти каналы связи для одновременной публикации корпоративных сервисов ?»
Некоторое время назад данный вопрос возник и у нас в компании, поэтому было решено перестроить внешний периметр.
В нашем случае было 4 провайдера и следующий список сервисов:

  • HTTP сервисы(около 60 сайтов)
  • XMPP сервис
  • HTTPS Сервер корпоративной почты(Exchange)
  • VPN сервис
  • SSH
  • IMAP, IMAPS, POP, POP3S, SMTP, SMTPS
  • OwnCloud

Читать полностью »

Предистория

Рано или поздно системный администратор сталкивается с необходимостью распределить трафик по нескольким каналам, при этом естественно желание чтобы каждый канал использовался по максимуму. Столкнувшись с подобной необходимостью, и решив не изобретать велосипед, обратился к помощи поисковиков. Так как сервер у меня на Ubuntu, то обратил свое внимание на статью http://help.ubuntu.ru/wiki/ip_balancing. Реализовал «Способ 1», но при тесте были замечены следующие критичные проблемы: при использовании ссылок на некоторых сайтах они не открывались (например при попытке включить музыку на ресурсе «ВКонтакте»). Причина очевидна — запрос шел через другой канал. Обдумав ситуацию, решил скомбинировать подход к балансировке. Логика проста — больше всего съедает трафика торренты и им подобные программы, поэтому разделяем трафик. В итоге трафик с портами до 11000 распределяем приблизительно равномерно по количеству абонентов — подсетями, трафиком с портами 11000-60000 выравниваем загрузку каналов.
Читать полностью »

image

Многие провайдеры на постсоветском пространстве самых разных масштабов предоставляют услуги Интернет по VPN туннелю, будь то PPPoE или PPTP/L2TP. О плюсах и минусах такого доступа я не буду рассказывать, т. к. данная тема смело поместиться в отдельную статью. Как правило для такого туннелирования используются либо серьезные железки (Cisco, Juniper, etc), либо софт-роутеры на базе FreeBSD и MPD5. Так вот, в этой статье пойдет речь о балансировке нагрузки на MPD5 серверы. На хабре уже был подобный топик, но там рассматривалось PPPoE, сегодня же разберем ситуацию с PPTP/L2TP.
Читать полностью »

CISCO ACE. Часть 2: балансировка удаленных серверов и приложений

В первой части CISCO ACE — балансировка приложений мы немного окунулись в мир балансировки приложений и сетевых ресурсов. Познакомились с характеристиками, предназначением и возможностями семейства таких устройств. Рассмотрели основные сценарии внедрения и преимущества, которые нам приносит использование балансировщиков.

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

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js