Споры что лучше - Etherchannel или LBT ведутся с тех пор, как последний механизм балансировки нагрузки появился в vSphere 4.1. Основная причина споров состоит в том, что администраторы или не знают о существовании LBT, или же думают, что сетевой стек у vSphere работает как и у физических серверов - один интерфейс активен, а все остальные простаивают до момент выхода активного из строя.
Варианты тиминга сетевых интерфейсов в vSphere
С самого начала хочу отметить, что vNetwork Distributed Switch (vDS) поддерживает пять разных режимов тиминга, но не поддерживает LACP (802.3ad) или же Dynamic Etherchannel, поддерживается только Static Etherchannel. Для использования LACP необходимо использовать Cisco Nexus 1000V или какой-либо другой сторонний vDS.
Итак, vSphere поддерживает следующие режимы работы:
Etherchannel и IP Hash Load Balancing
IP Hash Load Balancing требует настроенного Static Etherchannel на свитчах, и использует хэш IP адрес источника и адресата для выбора интерфейса по которому будет отправлен трафик. В KB 1004048 описаны все поддерживаемые конфигурации и примеры настройки сетевого оборудования.
Конфигурации когда виртуальная машина сможет использовать все сетевые интерфейсы возможны, но довольно редки - ВМ должна отсылать большое количество трафика на разные адреса. Каждый поток будет привязан к одному интерфейсу, а выбор интерфейса не зависит от
его загруженности.
Сам процесс настройки довольно нетривиален и может привести к тому, что менеджмент интерфейсы станут недоступны. При балансировке нагрузки можно легко столкнуться с тем, что некоторые интерфейсы будут сильно нагружены, а некоторые практически простаивать, при этом на ЦПУ будет дополнительная нагрузка за счёт необходимости подсчёт хешей.
Наконец, Etherchannel имеет серьёзные ограничения:
Если же необходимо использовать реальную балансировку нагрузки и отказоустойчивость то это не самый лучший метод.
Load Based Teaming
Load Based Teaming, или же Route based on Physical NIC Load, проверяет нагрузку сетевого интерфейса каждые 30 секунд, и если она превышает 75%, то порт виртуальной машины будет перемещён на другой интерфейс.
Данный механизм не требует какой-либо дополнительной настройки или поддержки сторонних протоколов. Пропускная способность ВМ будет ограничена скоростью физического интерфейса. Кроме того, LBT работает как для входящего, так и для исходящего трафика.
Данный механизм тиминга обладает следующими преимуществами:
Так что же на счёт LACP?
Для использования LACP вам нужен развёрнутый Cisco Nexus 1000V, и физические свитчи поддерживающие Virtual Port Channels. Данный dVS поддерживает 19 алгоритмов хэширования.
Вместе с тем, LACP страдает от тех же недостатков что и EtherChannel, как-то необходимость дополнительной настройки оборудования.
Оригинал: http://longwhiteclouds.com/
Варианты тиминга сетевых интерфейсов в vSphere
С самого начала хочу отметить, что vNetwork Distributed Switch (vDS) поддерживает пять разных режимов тиминга, но не поддерживает LACP (802.3ad) или же Dynamic Etherchannel, поддерживается только Static Etherchannel. Для использования LACP необходимо использовать Cisco Nexus 1000V или какой-либо другой сторонний vDS.
Итак, vSphere поддерживает следующие режимы работы:
- Route based on originating virtual port
- Route based on IP Hash (единственный механизм, поддерживаемый с Static Etherchannel и Static 802.3ad)
- Route based on Source MAC address
- Route based on physical NIC load (Load Based Teaming или LBT)
- Use explicit failover order (не является механизмом балансировки нагрузки. Обеспечивает только отказоустойчивость).
Etherchannel и IP Hash Load Balancing
IP Hash Load Balancing требует настроенного Static Etherchannel на свитчах, и использует хэш IP адрес источника и адресата для выбора интерфейса по которому будет отправлен трафик. В KB 1004048 описаны все поддерживаемые конфигурации и примеры настройки сетевого оборудования.
Конфигурации когда виртуальная машина сможет использовать все сетевые интерфейсы возможны, но довольно редки - ВМ должна отсылать большое количество трафика на разные адреса. Каждый поток будет привязан к одному интерфейсу, а выбор интерфейса не зависит от
его загруженности.
Сам процесс настройки довольно нетривиален и может привести к тому, что менеджмент интерфейсы станут недоступны. При балансировке нагрузки можно легко столкнуться с тем, что некоторые интерфейсы будут сильно нагружены, а некоторые практически простаивать, при этом на ЦПУ будет дополнительная нагрузка за счёт необходимости подсчёт хешей.
Наконец, Etherchannel имеет серьёзные ограничения:
- Все используемые свитчи должны поддерживать Static Etherchannel, и он должен быть настроен для всех используемых серверов.
- Для обеспечения избыточности свитчей они должны поддерживать стэкирование или протокол аналогичный Virtual Port Channel.
- Нельзя использовать beacon probing.
- Нельзя настроить неиспользуемые или standby интерфейсы.
- Поддерживается только один Etherchannel на vNetwork Distributed Switch (vDS).
- Поддерживается от одного до восьми сетевых интерфейсов.
- Для обеспечения максимальной эффективности необходимо использовать множество источников и получателей.
Если же необходимо использовать реальную балансировку нагрузки и отказоустойчивость то это не самый лучший метод.
Load Based Teaming
Load Based Teaming, или же Route based on Physical NIC Load, проверяет нагрузку сетевого интерфейса каждые 30 секунд, и если она превышает 75%, то порт виртуальной машины будет перемещён на другой интерфейс.
Данный механизм не требует какой-либо дополнительной настройки или поддержки сторонних протоколов. Пропускная способность ВМ будет ограничена скоростью физического интерфейса. Кроме того, LBT работает как для входящего, так и для исходящего трафика.
Данный механизм тиминга обладает следующими преимуществами:
- Простота настройки и использования.
- Лёгкость в локализации и решении проблем.
- Динамическая утилизация ресурсов.
- Поддержка исходящего и входящего трафика.
- Небольшой overhead.
- Уменьшает вероятность включения механизмов Network IO Control (NIOC).
- Нету ограничений свойственных Etherchannel и IP Hash Load Balancing.
Так что же на счёт LACP?
Для использования LACP вам нужен развёрнутый Cisco Nexus 1000V, и физические свитчи поддерживающие Virtual Port Channels. Данный dVS поддерживает 19 алгоритмов хэширования.
Вместе с тем, LACP страдает от тех же недостатков что и EtherChannel, как-то необходимость дополнительной настройки оборудования.
Оригинал: http://longwhiteclouds.com/
LACP работает и без Nexus'а. Достаточно использовать VMware Distributed Switch и соответствующие настройки портов физических коммуаторов.
ОтветитьУдалитьТезис о недостатке LACP по причине кофигурирования портов надуман, так как (1) порты всё равно настраивать и (2) пять лишних строчек в конфиге не повышают сложность плюс (3) port-channel используется просто везде и всюду
Хотелось бы поподробней про настройку физических коммутаторов для LACP
УдалитьLACP работает на стандартном свитче (vSS).
ОтветитьУдалитьESXi 5.0.0 702188 - где находится Load Based Teaming?
ОтветитьУдалитьLoad Based Teaming- это настройка балансировки в VMware Distributed Switch
Удалить