Как мне присоединить ASG к целевой группе ALB?

Как в AWS Cloudformation я могу присоединить группу автоматического масштабирования (ASG) к целевой группе балансировки нагрузки приложений?

По-видимому, не существует прямого способа сделать это непосредственно в шаблоне облачной информации (CFT), хотя это возможно с помощью CLI или API AQWS. AWS::ElasticLoadBalancingV2::TargetGroup Ресурс предлагает только следующие типы целей:

  • instance, Цели указываются по идентификатору экземпляра.
  • ip, Цели указываются по IP-адресу.
  • lambda, Целевые группы содержат одну лямбда-функцию.

1 ответ

Это потому, что, очевидно, никто не присоединяет ASG к целевой группе; вместо этого каждый присоединяет целевую группу или группы к ASG.

Это кажется мне немного отсталым, но я уверен, что это связано с тем, что ASG необходимо регистрировать / отменять регистрацию своих экземпляров по мере их увеличения и уменьшения.

Смотрите документацию для AWS::AutoScaling::AutoScalingGroup ресурс для деталей.

Пример:

TargetGroup:
  Type: AWS::ElasticLoadBalancingV2::TargetGroup
  Properties:
    VpcId: !Ref VPC
    TargetType: instance
    Port: 80
    Protocol: HTTP

AutoScalingGroup: 
  Type: AWS::AutoScaling::AutoScalingGroup
  Properties: 
    AvailabilityZones: !GetAZs !Ref "AWS::Region"
    MaxSize: "3"
    MinSize: "1"
    TargetGroupArns:
      - !Ref TargetGroup