Я пытаюсь настроить свою среду Elastic Beanstalk на создание группы автоматического масштабирования с политикой создания и обновления, которая ожидает сигнала от любых новых экземпляров.К сожалению, у меня проблемы с тем, чтобы заставить это работать, и я полагаю, что это из-за круговой зависимости.У меня есть один файл конфигурации в .ebextensions с конфигурацией автоматического масштабирования:
Resources:
AWSEBAutoScalingGroup:
Type: AWS::AutoScaling::AutoScalingGroup
Properties:
HealthCheckType: ELB
HealthCheckGracePeriod: 300
UpdatePolicy:
ResourceSignal:
Timeout: PT30M
CreationPolicy:
ResourceSignal:
Timeout: PT30M
У меня есть другой файл конфигурации, который должен запускать сценарий cfn-signal, который позволит группе автоматического масштабирования завершить создание или обновление:
commands:
"01cfn-bootstrap-update":
command: yum update -y aws-cfn-bootstrap
"02cfn-signal":
env:
stackName:
Ref: AWS::StackName
region:
Ref: AWS::Region
command: /opt/aws/bin/cfn-signal -e $? --stack ${stackName} --resource AWSEBAutoScalingGroup --region ${region}
Когда я создаю среду, создается группа автоматического масштабирования, которая ждет сигнала.Однако сигнал никогда не отправляется экземпляром.Я ssh'd в экземпляр и, просматривая журналы, я увидел, что команда cfn-signal (или любые команды в .ebextensions) не выполнялась.
Я полагаю, что это потому, что процессы Elastic Beanstalk.ebextensions по одному, поэтому он никогда не обрабатывает файл конфигурации cfn-signal до тех пор, пока файл конфигурации автоматического масштабирования не будет завершен.Поскольку этот ресурс ожидает того же сигнала, он никогда не завершается, а команда сигнала никогда не выполняется.Я также попытался полностью удалить конфигурационный файл автоматического масштабирования, и команда cfn-signal была в состоянии выполнить в этом случае (хотя это не удалось, поскольку группа автоматического масштабирования не ожидала сигнала).Я также попытался переименовать файлы так, чтобы файл cfn-signal был до алфавитного файла автоматического масштабирования, но это не имело никакого значения.Верно ли мое понимание того, что здесь есть круговая зависимость?Есть ли какое-то решение для этого?