Автоматическое масштабирование AWS с балансировщиком нагрузки - PullRequest
0 голосов
/ 26 апреля 2018

Я развернул контейнерное приложение http listener на 1 экземпляре EC2, создав кластер с 1 экземпляром и выполнив задачу контейнера для этого экземпляра.

Я использую функцию автоматического масштабирования экземпляров EC2 с минимальным экземпляром 1 и максимальным экземпляром 4.

Проблемы, с которыми я сталкиваюсь:

  1. После создания новых экземпляров EC2 из-за большей загрузки / загрузки ЦП - контейнер, который был развернут в первом экземпляре, не реплицируется на эти новые экземпляры.

  2. Я хочу добавить балансировщик нагрузки перед этими экземплярами EC2 по мере их добавления (или прекращения). Поскольку экземпляры должны быть уже зарегистрированы в целевой группе - я не смогу добавить новые экземпляры, поскольку они еще не созданы.

Любая помощь в этом очень ценится.

1 Ответ

0 голосов
/ 26 апреля 2018

У вас есть недоразумение о том, как ALB + ASG работает как технология.

Группы автоматического масштабирования связаны с целевыми группами. Таким образом, любой экземпляр в ASG, связанный с целевой группой ALB, де-факто станет жизнеспособным местом назначения для ALB - при условии, что экземпляр исправен.

I want to add load balancer in front of these EC2 instances as and
when they gets added (or terminated). As the instances needs to be
already registered to the target group - i will not be able to add
the new instances as they are not yet created.

Экземпляры добавляются в ASG, и ASG является целевой целевой группой. Создайте ALB, создайте целевую группу для ALB, создайте ASG и назначьте его целевой группе.

По первому вопросу:

Once new EC2 instances are created due to more load/ CPU utilization -
the container which were deployed on first instance is not replicated
on these new instances.

ASG не клонируют существующий экземпляр; они порождают новый экземпляр из той же конфигурации запуска, что и исходный экземпляр. Любая ручная настройка, которую вы выполнили для исходного экземпляра, будет , а не присутствовать в новом экземпляре. У вас есть два способа решения этой проблемы: \

  1. создайте AMI вашего первого экземпляра и измените конфигурацию запуска ASG для использования этого нового AMI
  2. использовать Userdata для автоматической настройки службы в контейнерах в тех случаях, когда они загружаются.
...