代码之家  ›  专栏  ›  技术社区  ›  Amio.io

选项设置的多个值

  •  1
  • Amio.io  · 技术社区  · 8 年前

    我需要将多个安全组添加到我的电子商务环境中。这是我的EB环境模板的一部分:

      Type: 'AWS::ElasticBeanstalk::Environment'
      Properties:
        ...
        OptionSettings:
          - Namespace: 'aws:autoscaling:launchconfiguration'
            OptionName: SecurityGroups
            Value: ...
    

    我试图:

    使用SecurityGroups 2x

    但后者优先于前面的值

          - Namespace: 'aws:autoscaling:launchconfiguration'
            OptionName: SecurityGroups
            Value:
              - !Sub ${EnvironmentPrefix}-ssh
          - Namespace: 'aws:autoscaling:launchconfiguration'
            OptionName: SecurityGroups
            Value:
              - launch-wizard-1
    

    使用数组

    但最终会出现一个错误:

    属性值的值必须是字符串类型

          - Namespace: 'aws:autoscaling:launchconfiguration'
            OptionName: SecurityGroups
            Value:
              - !Sub ${EnvironmentPrefix}-ssh
              - launch-wizard-1
    

    “AWS::ElasticBeanstalk::环境” ?

    1 回复  |  直到 8 年前
        1
  •  3
  •   kichik    8 年前

    根据 documentation 可以将逗号分隔的安全组列表作为值传递。

    您可以提供一个由逗号分隔的值组成的字符串,其中包含 现有Amazon EC2安全组的名称或对 AWS::EC2::在模板中创建的SecurityGroup资源。如果您使用 Amazon VPC与Elastic Beanstalk,让您的实例启动 而不是安全组名称。

    因此:

      Type: 'AWS::ElasticBeanstalk::Environment'
      Properties:
        ...
        OptionSettings:
          - Namespace: 'aws:autoscaling:launchconfiguration'
            OptionName: SecurityGroups
            Value: sg-1,sg-2,sg-3