Вам понадобится какой-то способ, чтобы экземпляр работал полностью без вмешательства. Это, как правило, сложная часть, и нет ни одного «ответа» на это. Обычно это означает одну из двух вещей:
- Сценарий cloud-init, который устанавливает экземпляр при запуске (либо непосредственно с помощью сценариев bash, либо с помощью инструмента управления конфигурацией, такого как Chef, Puppet и т. Д.)
- «Золотое изображение», то есть AMI, который уже полностью настроен и может начать обслуживать, как только он загрузится
Получив это, вы создаете конфигурацию запуска, которая определяет, как должен выглядеть экземпляр - тип экземпляра, диск (и), AMI, пользовательские данные (куда должен идти скрипт cloud-init), роль компьютера, группы безопасности и т. д.
Затем вы создаете группу автоматического масштабирования и присоединяете к ней LC. Группа автоматического масштабирования создаст ваши экземпляры, а не вы создаете их. Если вы хотите, вы можете прикрепить свой свернутый вручную экземпляр к ASG. ASG позволяет вам указать, в каких подсетях создавать экземпляры; предоставьте ему хотя бы одну подсеть для каждого AZ, где вы хотите создать экземпляры. Он автоматически распространит созданные экземпляры по AZ. ASG имеет минимальное, максимальное и желаемое количество экземпляров. Желаемое количество - это количество экземпляров, которое должно быть в любой момент времени если их меньше, будет создано больше, если их больше, некоторые будут прерваны в соответствии с политикой завершения (сначала самый старый, сначала самый новый и т. д.). Min и max определяют границы для желаемого числа - желаемый никогда не будет быть меньше мин или больше макс.
Наконец, вы определяете правила масштабирования и масштабирования, чтобы указать, когда он должен автоматически изменить желаемый счетчик. В вашем случае это может быть масштабирование, когда среднее использование ЦП в ASG превышает 50%, и масштабирование, когда оно меньше 25%.
Вы также захотите установить ASG в качестве целевой группы для своего балансировщика нагрузки, чтобы, как только новый экземпляр создавался и работал исправно, он принимал трафик - иначе какой смысл его создавать? Убедитесь, что у вас есть точная проверка работоспособности, чтобы экземпляры, которые не могут обслуживать трафик, не получали трафик.