在部署 Elastic Beanstalk 应用程序时,如何为我的负载均衡器使用自己的安全组?

1 分钟阅读
0

我想为我的 AWS Elastic Beanstalk 应用程序创建一个可扩展、负载均衡的环境。我还想为我的负载均衡器指定自己的安全组。

简短描述

Elastic Beanstalk 会为您的负载均衡器创建默认安全组。要将现有安全组(ManagedSecurityGroup)附加到您的负载均衡器,请覆盖默认行为。将更多的配置文件添加到 .ebextensions/ 目录中,这样 Elastic Beanstalk 就不会创建默认安全组。该目录位于您的应用程序部署包中。

**重要事项:**以下步骤仅适用于应用程序负载均衡器和经典负载均衡器。网络负载均衡器没有关联的安全组

解决方法

使用 .ebextensions 指示 Elastions Beanstalk 服务将现有安全组附加到您的负载均衡器。然后,移除 Elastic Beanstalk 为您创建的默认安全组。

1.    确认有现有安全组可供 Elastic Beanstalk 使用。或者,在您的 Elastic Beanstalk 环境中为负载均衡器创建一个新的安全组

2.    记下您的安全组的 ID。例如:sg-123456

3.    在您的本地应用程序代码目录中创建一个 .ebextensions/ 目录。

4.    在 .ebextensions/ 目录中,创建一个名为 elbsg.config 的文件。例如:

~/workspace/my-app/├── .ebextensions  
│   ├── elbsg.config  
├── helloworld

**注意:**有关前两个步骤的更多信息,请参阅使用配置文件(.ebextensions)进行高级环境自定义

5.    根据您的 Elastic Beanstalk 环境的负载均衡器类型更新 elbsg.config 文件。

要使用经典负载均衡器创建新环境或更新现有环境,请使用 SecurityGroups 设置覆盖默认安全组。例如:

option\_settings: aws:elb:loadbalancer:  
  ManagedSecurityGroup: "sg-123456"  
  SecurityGroups: "sg-123456"

要使用应用程序负载均衡器创建新环境或更新现有环境,请使用 SecurityGroups 设置覆盖默认安全组。例如:

option\_settings: aws:elbv2:loadbalancer:  
  ManagedSecurityGroup: "sg-123456"  
  SecurityGroups: "sg-123456"

**注意:**在前面的示例中,将 sg-123456 替换为您的安全组和托管安全组 ID。前面的 .ebextensions 采用 YAML 格式。验证 YAML 格式。

6.    将您的代码和新的 .ebextensions/ 目录作为新的应用程序版本一起部署到您的 Elastic Beanstalk 环境中。

相关信息

配置 Elastic Beanstalk 环境

aws:elb:loadbalancer

aws:elbv2:loadbalancer

AWS 官方
AWS 官方已更新 7 个月前