Штифт балансировки нагрузки aws на один экземпляр

В моем проекте у меня есть два экземпляра (на основе ECS), которые запускают приложение Node.js. Оба они одинаково (только для целей HA) используют куки и расположены за балансировщиком нагрузки. Проблема в том, что экземпляры не разделяют сеанс между собой, и когда я вхожу в первый экземпляр и выполняю обратное действие, балансировщик нагрузки иногда переключает меня на второй экземпляр, который не имеет данных сеанса (cookie, сгенерированный первым экземпляром), и мне нужно войдите снова. Я знаю, что есть возможность заставить два экземпляра совместно использовать сеанс между собой, но этот подход требует некоторой модификации в коде приложения. Поэтому вместо этого я хотел бы заставить свой балансировщик нагрузки удерживать и использовать этот экземпляр, который он выбрал впервые, пока пользователь не завершит свою работу и не выйдет из системы (или не закроет браузер). Является ли это возможным?

1 ответ

Вы можете включить липкие сессии в ваших целевых группах. Сделать это:

  • В консоли Amazon EC2 перейдите к Целевым группам в разделе БАЛАНСИРОВКА НАГРУЗКИ.
  • Выберите целевую группу и перейдите на вкладку " Описание ".
  • Нажмите Редактировать атрибуты и включите Stickiness.
  • Установите продолжительность и сохраните.

Эти шаги могут немного отличаться, если у вас классический балансировщик нагрузки. Узнайте больше здесь и здесь.

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