我想要创建一个ELB作为CloudFormation堆栈的一部分,它具有未过期的加载平衡器粘性(例如,我没有指定的CookieExpirationPeriod属性)。下面是模板的相关ELB部分(YAML格式)。
HAELB:
Type: AWS::ElasticLoadBalancing::LoadBalancer
Properties:
CrossZone: 'true'
HealthCheck:
HealthyThreshold: '5'
Interval: '10'
Timeout: '5'
Target: HTTPS:8443/health
UnhealthyThreshold: '2'
Instances:
- Ref: Instance1
- Ref: Instance2
- Ref: Instance3
LBCookieStickinessPolicy:
- PolicyName: HASessionStickiness
Listeners:
- InstancePort: '8443'
InstanceProtocol: HTTPS
LoadBalancerPort: '443'
Protocol: HTTPS
SSLCertificateId: arn:aws:iam::xxx
LoadBalancerName: prodtest
SecurityGroups:
- sg-xxx
Scheme: internet-facing
Subnets:
- subnet-xxx
Tags:
-
Key: Name
Value: prodtest(我用xxx编辑了一些信息)
模板和ELB是在没有问题的情况下创建的,但是当我检查控制台上的粘性时,它说它是禁用的。我是不是错配置了LBCookieStickinessPolicy?正如我所提到的,我希望启用它,但没有过期。
发布于 2016-10-19 14:05:26
目前,您已经定义了负载均衡器的粘性策略,但还没有将粘性策略与侦听器关联起来。
将PolicyNames属性添加到侦听器以将策略与侦听器关联:
LBCookieStickinessPolicy:
- PolicyName: HASessionStickiness
Listeners:
- InstancePort: '8443'
InstanceProtocol: HTTPS
LoadBalancerPort: '443'
Protocol: HTTPS
SSLCertificateId: arn:aws:iam::xxx
PolicyNames:
- HASessionStickinesshttps://stackoverflow.com/questions/40133406
复制相似问题