Elasticbeanstalk与ssl和自定义healh检查url(在不同的端口上)不工作

时间:2016-03-02 21:09:13

标签: amazon-web-services https amazon elastic-beanstalk

我使用弹性beanstalk并且昨天成功添加了letsencrypt https证书。但现在,我的自定义运行状况检查将我的systemstatus设置为红色。

如果我删除了ssl配置(所有属性都带有命名空间"" namespace:aws:elb:listener:443")。健康检查它的工作。

它不是端口问题,我允许暂时公开访问端口。

我忘记了什么?

由于 烫发

我的ebextension配置是这样的:

Resources:
  healthPort: 
    Type: AWS::EC2::SecurityGroupIngress
    Properties:
      GroupId: {"Fn::GetAtt" : ["AWSEBSecurityGroup", "GroupId"]}
      IpProtocol: tcp
      ToPort: 7979
      FromPort: 7979
      SourceSecurityGroupName: { "Fn::GetAtt": ["AWSEBLoadBalancer", "SourceSecurityGroup.GroupName"] }
option_settings:

  - namespace:  aws:elasticbeanstalk:application
    option_name:  Application Healthcheck URL
    value: HTTP:7979/health
option_settings:
  - namespace: aws:elb:listener:80
    option_name: ListenerEnabled
    value: true

  - namespace: aws:elb:listener:80
    option_name: ListenerProtocol
    value: HTTP

  - namespace: aws:elb:listener:80
    option_name: InstancePort
    value: 80

  - namespace: aws:elb:listener:80
    option_name: InstanceProtocol
    value: HTTP

  - namespace: aws:elb:listener:443
    option_name: ListenerEnabled
    value: true

  - namespace: aws:elb:listener:443
    option_name: ListenerProtocol
    value: HTTPS

  - namespace: aws:elb:listener:443
    option_name: InstancePort
    value: 80

  - namespace: aws:elb:listener:443
    option_name: InstanceProtocol
    value: HTTP

  - namespace: aws:elb:listener:443
    option_name: SSLCertificateId
    value: xxx

1 个答案:

答案 0 :(得分:0)

问题是ELB没有连接7979端口的权利。我不知道它为什么会发生,如果我启用ssl但现在它可以工作。