alexey bazhin balancing

15
Принципы Балансировки Алексей Бажин

Upload: rit2010

Post on 17-Dec-2014

1.829 views

Category:

Documents


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Alexey Bazhin Balancing

Принципы Балансировки

Алексей Бажин

Page 2: Alexey Bazhin Balancing

Какие задачи может решать балансировщик

● Распределение нагрузки между серверами

• Повышение отказоустойчивости• Защита от некоторых типов атак

Page 3: Alexey Bazhin Balancing

DNS Round Robin

Page 4: Alexey Bazhin Balancing

DNS Round RobinПлюсы:

●Не зависит от протокола высокого уровня●Не зависит от нагрузки●Не требует дополнительных ресурсов●Не требует связи между серверами●Низкая стоимость решения

Минусы:●Возможно неравное распределение нагрузки (например при наличии клиентов на Windows Vista)●Сложно отключать не отвечающие сервера●На практике максимальное число IP-адресов ограничивается размером UDP пакета в DNS

Page 5: Alexey Bazhin Balancing

А можно по-другому?Можно:

●Используем короткий TTL●Выдаем по одной записи на каждый DNS запрос

Плюсы:●Отсутствие неравномерности при небольшом числе серверов

Минусы:●Малый TTL записей (больше нагрузка на DNS)●Принудительное кеширование на DNS серверах

Page 6: Alexey Bazhin Balancing

Балансировка на 2-ом уровне

Page 7: Alexey Bazhin Balancing

Балансировка на 2-ом уровне

Page 8: Alexey Bazhin Balancing

Балансировка на 2-ом уровнеПлюсы:

●Не зависит от протокола высокого уровня●Есть методы без выделенного балансировщика●Есть возможность пускать ответы мимо балансировщика●Относительное малое потребление ресурсов

Минусы:●Сервера должны находиться в одном сегменте сети●Необходима специфическая настройка серверов и сетевого оборудования

Page 9: Alexey Bazhin Balancing

Балансировка на 3-ем уровне

Page 10: Alexey Bazhin Balancing

Балансировка на 3-ем уровнеПлюсы:

●Не зависит от протокола высокого уровня

Минусы:●Обратный трафик от серверов должен проходить через балансировщик

Page 11: Alexey Bazhin Balancing

Проксирование

Page 12: Alexey Bazhin Balancing

ПроксированиеПлюсы:

●Позволяет делать привязку клиента к серверу●Позволяет распределять разные типы запросов по разным серверам●Возможность модификации запроса/ответа, возможность кеширования ответов

Минусы:●Относительно большое потребление ресурсов●Протоколозависимость

Page 13: Alexey Bazhin Balancing

Отказоустойчивость

Page 14: Alexey Bazhin Balancing

Отделяем статику

Page 15: Alexey Bazhin Balancing

Несколько слов об аппаратных

балансировщиках●Cisco CSS●Cisco ACE●Crescendo●F5 BigIP