У нас есть группа автоматического масштабирования за балансировщиком нагрузки приложений, которая запускает экземпляры, если avg. Загрузка ЦП превышает 70%.
Мы создали базовый AMI для группы автомасштабирования.
Но проблема в том, что наш веб-сайт обновляется почти на регулярной или еженедельной основе, поэтому что мы можем настроить, чтобы позволить AWS code-deploy для автоматического развертывания нашей последней версии из github на тех экземплярах, созданных с помощью группы автоматического масштабирования?
Если потребуется дополнительная информация, дайте мне знать.
Вам просто нужно указать группу развертывания на группу автоматического масштабирования.
Это ужасающая скрытая магия.
Однако, чтобы это работало, вам нужно установить Deployment type In-place
, или вместо этого вы получите новую группу автоматического масштабирования. А это значит, что вам еще нужно как минимум 2 экземпляра.
Initiating event
о каждом «развертывании» могу рассказать вам больше. Если ваша группа autoScaling запустит новый экземпляр, у вас будет новое развертывание в вашем CodeDeploy
и Initiating event
я бы сказал autoScaling
, когда обычно говорят user
.
Также посмотрите Auto Scaling Group Lifecycle Hook
. В Code deploy
создает крючок и назовите его так
CodeDeploy-managed-automatic-launch-deployment-hook-Your-Deployment-Group-name-some_numbers
и он каким-то образом знает Revision
. Документация.
Я не мог проследить, как SQS Notification
из Auto Scaling Group Lifecycle Hook
связан с точным CodeDeploy Deployment group
и поэтому я называю это magic
.
Code Deploy полностью поддерживает автоматическое масштабирование.
Вот шаги по интеграции этих двух сервисов: Интеграция CodeDeploy с автоматическим масштабированием Amazon EC2
Надеюсь, это поможет :)