Рейтинг:0

AWS Beanstalk и Elastic Load Balancer: маршрут к конкретному экземпляру

флаг cg

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

Мы хотели бы иметь возможность направлять некоторых пользователей/запросы к определенному экземпляру за балансировщиком нагрузки, в идеале по URL-адресу. Например, если HTTP-запрос должен был прийти для URL-адреса http://our_app_domain/something/123, он должен быть перенаправлен на экземпляр 123, тогда как http://our_app_domain/something/456 должен быть направлен на экземпляр 456. POST или другой http-заголовок также мог бы работать, если бы это было проще. Или это может даже включать что-то, сделанное на стороне клиента с использованием Javascript.

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

Возможно ли что-то подобное?

Я нашел несколько предложений, чтобы найти идентификатор экземпляра конкретного экземпляра здесь: Как найти экземпляр ec2, который обрабатывает мой запрос, переадресованный Elastic Load Balancer И это также упоминает файл cookie, который ELB использует для поддержания закрепления сеанса — может ли быть способ перезаписать файл cookie, чтобы ELB направлял маршрут к другому экземпляру?

Еще одна вещь, которую я обнаружил, это целевые группы. Мы могли бы создать множество целевых групп с одним экземпляром в каждой, и тогда то, что мы хотим сделать, должно сработать, я считаю. Но проблема в том, что мы хотим, чтобы это работало с автомасштабированием, и я не думаю, что есть способ автомасштабирования целевых групп (только экземпляры внутри целевых групп), верно?

Одним из вариантов может быть то, что экземпляры сами сообщают балансировщику нагрузки, хотят ли они принять соединение, но я не знаю, сработает ли это. Например.если экземпляр 456 при получении запроса с URL-адресом, например, 123, возвращает некоторый временный код ошибки HTTP, а затем автомасштабирование перенаправляет его на другой экземпляр, пока в конечном итоге не направит его на 123?

Любой другой способ сделать это, конечно, тоже подойдет! Большое спасибо!

Ответить или комментировать

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