在AWS CloudFormation中,可以使用资源类型AWS::ElasticLoadBalancingV2::TargetGroup
来创建应用负载均衡器的目标组。如果目标组对于多个EC2实例无法正常工作,可能是由于以下原因:
AWS::ElasticLoadBalancingV2::TargetGroupAttachment
资源类型来创建目标组与EC2实例之间的关联。以下是一个示例CloudFormation模板片段,演示如何创建目标组和关联EC2实例:Resources:
MyTargetGroup:
Type: AWS::ElasticLoadBalancingV2::TargetGroup
Properties:
Name: MyTargetGroup
Port: 80
Protocol: HTTP
VpcId: vpc-12345678
MyTargetGroupAttachment:
Type: AWS::ElasticLoadBalancingV2::TargetGroupAttachment
Properties:
TargetGroupArn: !Ref MyTargetGroup
TargetType: instance
Targets:
- Id: i-1234567890abcdef0
Port: 80
HealthCheckPath
、HealthCheckPort
和HealthCheckProtocol
。以下是一个示例配置:Resources:
MyTargetGroup:
Type: AWS::ElasticLoadBalancingV2::TargetGroup
Properties:
Name: MyTargetGroup
Port: 80
Protocol: HTTP
VpcId: vpc-12345678
HealthCheckEnabled: true
HealthCheckPath: /health
HealthCheckPort: 80
HealthCheckProtocol: HTTP
Resources:
MyTargetGroup:
Type: AWS::ElasticLoadBalancingV2::TargetGroup
Properties:
Name: MyTargetGroup
Port: 80
Protocol: HTTP
VpcId: vpc-12345678
TargetGroupAttributes:
- Key: 'deregistration_delay.timeout_seconds'
Value: '120'
MyTargetGroupSecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupDescription: Security group for MyTargetGroup
VpcId: vpc-12345678
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
SourceSecurityGroupId: !Ref MyLoadBalancerSecurityGroup
MyEC2InstanceSecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupDescription: Security group for EC2 instances
VpcId: vpc-12345678
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: 80
ToPort: 80
SourceSecurityGroupId: !Ref MyTargetGroupSecurityGroup
以上是一些常见问题的解决方法,根据你的具体情况可能还需要进一步调查和调整。