Я пытаюсь использовать CloudFormation для создания списка прослушивателей балансировщика нагрузки и для необязательного параметра TCPPort1
, установленного в качестве прослушивателя только , если это значение было установлено.
Я использовал Condition
в других местах, но если я использую его на уровне слушателя, я получаю ошибку:
The following resource(s) failed to create: [LoadBalancer]. . Rollback requested by user.
Encountered unsupported property Condition
LoadBalancer:
Type: 'AWS::ElasticLoadBalancing::LoadBalancer'
Properties:
HealthCheck:
HealthyThreshold: '2'
Interval: '15'
Target: 'HTTP:9000/'
Timeout: '5'
UnhealthyThreshold: '10'
Listeners:
- InstancePort: TCPPort1
Condition: HasTCPPort1
InstanceProtocol: HTTP
LoadBalancerPort: TCPPort1
SSLCertificateId: !If
- HasLoadBalancerCertificateARN
- !Ref LoadBalancerCertificateARN
- !Ref 'AWS::NoValue'
Protocol: !If
- HasLoadBalancerCertificateARN
- HTTPS
- HTTP
Scheme: internet-facing
Subnets:
- 'Fn::ImportValue':
!Sub '${ParentVPCStack}-SubnetAPublic'
- 'Fn::ImportValue':
!Sub '${ParentVPCStack}-SubnetBPublic'
- 'Fn::ImportValue':
!Sub '${ParentVPCStack}-SubnetCPublic'
SecurityGroups:
- !Ref SecurityGroup
Instances:
- !Ref Server