Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

GitHub откроет код собственного балансировщика нагрузки GLB

Серверная оптимизацияСетевые технологииСерверное администрирование

GitHub обслуживает миллиарды HTTP, Git и SSH-соединений ежедневно. Для улучшения производительности в компании начали использовать «голое железо», то есть компьютеры без дополнительных уровней виртуализации. Однако исторически сложилось, что более сложным для оптимизации является сетевая балансировка нагрузки.

Для этого в GitHub использовали вертикальное масштабирование с запуском малого количества больших машин и haproxy. Кроме того, была установлена специфическая аппаратная конфигурация, обеспечивающая отказоустойчивость 10G-линков.

В итоге инженеры GitHub поняли, что понадобится создать собственное решение, которое будет работать для индивидуальных нужд ресурса.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Просмотры11K
Комментарии 7

Отказоустойчивый балансировщик нагрузки: как работает и где протестировать бесплатно

Блог компании SelectelОблачные сервисы

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

На бесплатном вебинаре 1 июля в 16:00 эксперты Selectel расскажут, как построить отказоустойчивую инфраструктуру, не вкладывая в это лишних сил и денег.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Просмотры821
Комментарии 0

Балансировка нагрузки с LVS

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

Читать дальше →
Всего голосов 77: ↑77 и ↓0+77
Просмотры83K
Комментарии 50

Google FalseStart на 30% ускоряет «рукопожатие» SSL

IT-стандарты


В блоге Chromium разработчики из Google рассказали о своих успехах по внедрению SSL FalseStart (RFC). Это клиентская технология для браузера, которая не требует никаких изменений на стороне сервера, но при этом на 30% ускоряет подтверждение связи SSL (задержка измеряется как время между первоначальным пакетом TCP SYN и окончанием процедуры по TLS).
Читать дальше →
Всего голосов 39: ↑29 и ↓10+19
Просмотры800
Комментарии 8

VRRP в Linux

Настройка Linux
Из песочницы
У одного молодого развивающегося провайдера на заре становления организации доступа для физ. лиц была принята следующая архитектура для сети:
  • IPoE
  • привязка порт-ip
  • выдача адресов по DHCP (опция 82)
  • маршрутизирующий сервер на Linux (CentOS)

По мере роста абонентской базы все проблемы из первых трех пунктов решались успешно. А с последним прогнозировались небольшие проблемы:
Читать дальше →
Всего голосов 43: ↑41 и ↓2+39
Просмотры29K
Комментарии 40

Основные тезисы конференции HighLoad++ 2011

Я пиарюсь
imageВ октябре 2011 года в Москве проходила ежегодная конференция разработчиков высоконагруженных проектов HighLoad++.
Решил поделиться с читателями основными тезисами с конференции. Поскольку вся информация открыта и доступна на странице конференции, решил что собрать все тезисы вместе будет не такой уж и плохой затеей. Сразу отмечу, что в отчёте не содержится детальной информации о каждом докладе — затронуты лишь ключевые моменты.
Итак, о чём говорилось на HighLoad++ 2011.
Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Просмотры3.9K
Комментарии 2

Балансировщик нагрузки для Amazon EC2 c автомасштабированием

Системное администрирование
Из песочницы
Многие знают, что Amazon предоставляет возможность автоматически наращивать мощность вашего пула (увеличивать количество виртуальных серверов) в зависимости от нагрузки. Однако я не сумел найти в русскоязычном сегменте сети толкового описания практической реализации такой схемы. Рискну представить на суд общественности итог моих штудий на данную тему.

Итак, вводные данные. Наш сервер, судя по кривой посещаемости, в скором времени начнёт испытывать весьма суровые нагрузки, особенно в пиковые моменты. Для эффективной обработки трафика, а также во избежание отказов в обслуживании было решено использовать механизмы, предоставляемые Amazon, позволяющие в реальном времени запускать необходимое количество серверов. При этом, когда нагрузка спадает, получившийся пул должен «сбавлять обороты», автоматически уменьшаясь в размерах, и тем самым уменьшать финансовые затраты на проект.

Читать дальше →
Всего голосов 37: ↑37 и ↓0+37
Просмотры9.1K
Комментарии 9

CISCO ACE — балансировка приложений

Информационная безопасность
Из песочницы
Всем привет!

Хочу немного рассказать о семействе оборудования для Центров обработки данных от CISCO – CISCO ACE (Application Control Engine). В этой статье будут затронуты такие вопросы как предназначение устройств, архитектурные особенности, возможности применения, настройка основных функций. Больших тонкостей работы материал не предусматривает, скорее рассчитан на тех, кто думает о внедрении подобных устройств, пытается сделать выбор, хочет понять как такое оборудование поможет оптимизировать сетевую инфраструктуру, повысить доступность и время внедрения сервисов.

Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Просмотры18K
Комментарии 26

Балансировщики нагрузки в облаке Clodo

Хостинг
Балансировщики нагрузки — неотъемлемая часть отказоустойчивой инфраструктуры для современных веб-проектов — теперь доступны клиентам Clodo. На данный момент функциональность находится в публичном тестировании и предоставляется бесплатно всем клиентам.

Читать дальше →
Всего голосов 32: ↑10 и ↓22-12
Просмотры1.6K
Комментарии 12

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

Информационная безопасность


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

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

Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Просмотры11K
Комментарии 6

Распределение нагрузки на PPTP/L2TP серверы MPD5

Системное администрирование*nix
Из песочницы
image

Многие провайдеры на постсоветском пространстве самых разных масштабов предоставляют услуги Интернет по VPN туннелю, будь то PPPoE или PPTP/L2TP. О плюсах и минусах такого доступа я не буду рассказывать, т. к. данная тема смело поместиться в отдельную статью. Как правило для такого туннелирования используются либо серьезные железки (Cisco, Juniper, etc), либо софт-роутеры на базе FreeBSD и MPD5. Так вот, в этой статье пойдет речь о балансировке нагрузки на MPD5 серверы. На хабре уже был подобный топик, но там рассматривалось PPPoE, сегодня же разберем ситуацию с PPTP/L2TP.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Просмотры7.6K
Комментарии 31

Комбинированная балансировка нагрузки интернет-каналов

Настройка LinuxСетевые технологии
Из песочницы

Предистория



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

Multihome Policy-Based Routing на pf

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

В связи с тем, что с течением времени почти во всех организациях появляются дополнительные каналы связи для резервирования или других нужд, возникает вопрос: «А можно ли использовать эти каналы связи для одновременной публикации корпоративных сервисов ?»
Некоторое время назад данный вопрос возник и у нас в компании, поэтому было решено перестроить внешний периметр.
В нашем случае было 4 провайдера и следующий список сервисов:
  • HTTP сервисы(около 60 сайтов)
  • XMPP сервис
  • HTTPS Сервер корпоративной почты(Exchange)
  • VPN сервис
  • SSH
  • IMAP, IMAPS, POP, POP3S, SMTP, SMTPS
  • OwnCloud

Читать дальше →
Всего голосов 2: ↑1 и ↓10
Просмотры7.3K
Комментарии 11

Балансировка 2-х и более каналов на FreeBSD с использованием PF + Squid

Системное администрирование*nixСерверная оптимизация
Recovery mode

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



В связи с тем, что хотя моя предыдущая попытка поделиться мыслями принесла мне инвайт, однако карма ушла в минус, поэтому сейчас попытаюсь реабилитироваться снова предпринимаю попытку порадовать аудиторию рецептом настройки жужжащей штуки в углу.
Итак, о задаче: есть два канала интернет, шлюз на 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 минимальны

Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Просмотры31K
Комментарии 25

Балансировщик на Go в 200 строк

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

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

Под катом почти оринальный скорописный балансировщик. Я убрал оригинальные константы и код декодирования кук.
Читать дальше →
Всего голосов 55: ↑45 и ↓10+35
Просмотры17K
Комментарии 27

Используем nginx, docker, skydns и skydock для обновления кода на лету (zero-downtime deployment)

Разработка веб-сайтовПрограммированиеGo
Из песочницы

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


Docker


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

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

Простой пример — это БД Redis. Если нам необходимо несколько серверов Redis на одном компьютере, при обычном подходе нам придется изменять конфигурационные файлы в /etc/redis и менять файлы в /etc/init.d. Можно написать bash скрипт, но это не делает процесс легче.
Читать дальше →
Всего голосов 39: ↑37 и ↓2+35
Просмотры23K
Комментарии 14

Балансировщики нагрузки в Microsoft Azure

Microsoft Azure
Перевод
Microsoft Azure предлагает сервис балансировки нагрузки для виртуальных машин (IaaS) и облачных служб (PaaS), запущенных в облаке Microsoft Azure. Помимо прочих достоинств, балансировка нагрузки позволяет масштабировать ваши приложения и дает возможность мягче реагировать при возникновении ошибки или отказа.

Службы балансировки нагрузки могут быть задействованы как с помощью настроек на портале управления Microsoft Azure, так и с помощью сервис-модели вашего приложения. Как только размещаемая служба с одной или несколькими конечными точками публикуется в облако, она автоматически настраивается на использование балансировщика нагрузки, предоставляемого платформой Microsoft Azure. Чтобы получить все плюсы эластичности и масштабируемости вам необходимо иметь хотя бы две виртуальных машины, настроенных на одну и ту же конечную точку.

Диаграмма на рисунке ниже показывает пример приложения, расположенного в Microsoft Azure, которая использует балансировщик нагрузки для адресации входящего трафика (по адресу/порту 1.2.3.4:80) на три виртуальных машины, слушающих 80й порт (кликабельно).


Далее перечислены основные возможности балансировщика нагрузки в Microsoft Azure
Читать дальше →
Всего голосов 28: ↑20 и ↓8+12
Просмотры6.6K
Комментарии 1

По городам и весям или как мы балансируем между узлами CDN

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

В предыдущей статье я рассказал, что CDN у нас свой, при этом тщательно избегал подробностей. Пришла пора поделиться. Рассказ будет в стиле поиска решения, каким он мог бы быть.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Просмотры22K
Комментарии 41

Лишние элементы или как мы балансируем между серверами

Блог компании Онлайн-кинотеатр IVI
Привет, Хабр! Какое-то время назад люди осознали, что увеличивать мощность сервера в соответствии с ростом нагрузки просто невозможно. Тогда-то мы и узнали слово «кластер». Но как бы красиво это слово не звучало, всё равно приходится технически объединять разрозненные серверы в единое целое – тот самый кластер. По городам и весям мы добрались до наших узлов в моём предыдущем опусе. А сегодня мой рассказ пойдёт о том, как делят нагрузку между членами кластера системные интеграторы, и как это сделали мы.



Внутри публикации вас также ждёт бонус в виде трёх сертификатов на месячную подписку ivi+.
Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Просмотры32K
Комментарии 89