Как работает упругая маршрутизация с помощью round robin?

Я смотрю на график, который показывает загрузку процессора на экземплярах EC2. Я замечаю, что когда для 1 EC2 процессор увеличивается на 2, он уменьшается одновременно. Через некоторое время (5 минут) они изменили, что 1 уменьшается, а 2 увеличивается, через 5 минут они снова меняются и так далее.

Вопросы

  • Означает ли это, что запрос маршрута ELB на экземпляр в течение некоторого периода времени? Например, 10 секунд для одного экземпляра, затем 10 секунд для другого?
  • Или это маршрутизирует пакетный запрос? Например, сначала 100 к 1 EC2, а затем 100 к 2 и так далее?

В документации сказано, что в AWS ELB используется циклический перебор. Но я думаю, что если бы они перенаправляли каждый запрос к следующему экземпляру, не было бы разных направлений, например, загрузка всех экземпляров была бы разной на 1-2% в нагрузке, но имела бы ту же тенденцию (увеличение или уменьшение). Я прав?

График такой (около 18 EC2, слева процент загрузки процессора):

ОБНОВЛЕНО

  1. Это классический балансировщик нагрузки
  2. Есть 2 зоны доступности, на 9 экземпляров в каждой зоне.

2 ответа

Как упоминал Майкл, липкие сеансы могут влиять на балансировку нагрузки входящих соединений.

Я не знаю, какое приложение вы запускаете, но вы всегда можете проверить журнал доступа веб-сервера или журнал доступа промежуточного программного обеспечения, который может дать вам представление о том, какие узлы получают трафик и когда.

С сайта AWS

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

Но это может измениться, если у вас включены липкие сессии. с липкими сессиями:

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

http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html

Могут ли липкие сессии вызывать поведение, которое вы видите?

Другие вопросы по тегам