【问题标题】:How to pick a subnet for an Elastic Beanstalk Elastic Load Balancer via Cloudformation?如何通过 Cloudformation 为 Elastic Beanstalk 弹性负载均衡器选择子网?
【发布时间】:2019-07-30 01:21:47
【问题描述】:

我有一个包含私有子网和公共子网的 VPC,以及一个在私有子网中运行其实例的 Elasticbeanstalk 环境。 Elasticbeanstalk 环境还有一个 Classic Elastic Load Balancer,它需要位于公共子网中。不幸的是,EB 一直把它放在实例中。

我已经使用环境中的 elb 选项调用了负载均衡器。 cloudformation 的相关部分如下所示:

"accountapienv": {
  "Type": "AWS::ElasticBeanstalk::Environment", 
  "Properties": {
    "Tier": { "Type": "Standard", Name": "WebServer" }
    "OptionSettings": [
      {
        "ResourceName": "AWSEBAutoScalingGroup", 
        "Namespace": "aws:autoscaling:asg", 
        "OptionName": "MinSize", 
        "Value": "2"
      }, 
      {
        "Namespace": "aws:ec2:vpc", 
        "OptionName": "Subnets", 
        "Value": { "Fn::Join": [",", [ {"Ref": "privateuseast1b"}, {"Ref": "privateuseast1c" } ] ] }
      }, 
      {
        "OptionName": "CrossZone", 
        "Namespace": "aws:elb:loadbalancer", 
        "Value": true
      }, 
      {
        "OptionName": "ListenerProtocol", 
        "Namespace": "aws:elb:listener:443", 
        "Value": "HTTPS"
      }, 

如果我直接将平衡器作为"Type": "AWS::ElasticLoadBalancing::LoadBalancer" 对象调用,将会有一个subnets 选项,但是我很难将它指向一个Elastic Beanstalk 环境实例池。

我不愿意移动我的实例。

那么我怎样才能让我的负载均衡器进入公共子网呢?

【问题讨论】:

    标签: amazon-web-services amazon-cloudformation amazon-elastic-beanstalk amazon-elb


    【解决方案1】:

    找到了!它是:

    {
         "Namespace": "aws:ec2:vpc", 
         "OptionName": "ELBSubnets", 
         "Value": ...
    }
    

    虽然 为什么 AWS 将此视为 VPC 选项,但我不知道。

    【讨论】:

      猜你喜欢
      • 2013-08-10
      • 2011-12-22
      • 2023-04-03
      • 2019-04-21
      • 2017-02-14
      • 1970-01-01
      • 2019-01-24
      • 2022-08-10
      • 2020-11-21
      相关资源
      最近更新 更多