感谢您提前的时间。我是AWS的新手,并尝试设置面向应用程序处理HTTP / HTTPS请求的云。
我有一个域名(example.com)附加到Elastic Load Balancer(ELB),我的要求就是将 ELB连接到AutoScaling组(ASG) 最小 - 最大2-5 EC2。 我希望将ASG创建的EC2放置在私有子网中。
我正在按照here提供的解决方案,但正如我在步骤5中所理解的那样,它是用于将ELB连接到现有的EC2实例。但我的要求是将其附加到ASG,因此无法连接到特定的EC2实例。
我现在只关注两个AZ,并在AZ中创建了一个公共和私有子网。创建ELB并将其附加到两个公共子网后,我继续进行Launch-Configuration& ASG。在设置LC和ASG时,我会要求澄清以下选择的含义。
在为ASG创建启动配置时,在其中一个步骤(IP地址类型)中,我有三个选项,即:
(1)如果在默认VPC / SubNet
中创建,则将公共IP提供给新实例(2)新实例始终是公共IP
(3)新实例没有公共IP。
根据我的要求,应该选择上述哪一项?
其他问题
在创建ASG时选择子网时,是否应选择公共和私有子网或仅公共SN 或仅限私有SN ?我的猜测只是私有子网,因为我想将EC2置于私有SN中。
如果ASG创建的EC2将部署在私有SN中,那么公共子网中还应该有什么?
再次感谢您的时间和指导。
6月13日更新
对于我上面发布的问题,我选择了以下选项:
为ASG创建启动配置时,IP地址类型:新实例没有公共IP。
在创建ASG时选择子网:仅限私有SN
我在公有子网中放置了NAT网关并更新了私有子网的路由表,以包含0.0.0.0/0到NAT的路由
事情正在发挥作用!!
答案 0 :(得分:0)
您可以找到附加到自动扩展组here的AWS文档。您将ELB附加到ASG,或者如果它是应用程序负载均衡器,则将ALB的目标组附加到ASG:
将负载均衡器附加到组
在https://console.aws.amazon.com/ec2/打开Amazon EC2控制台。
在导航窗格的 Auto Scaling 下,选择 Auto Scaling 组强>
选择您的论坛。
在详细信息标签上,选择修改。
执行以下操作之一:
[经典负载均衡器]对于负载均衡器,选择您的负载 平衡器。
[目标群体]对于目标群体,请选择目标群体。
选择保存。
如果您的实例将在ELB后面,则不需要公共IP地址。您还应该在私有子网中启动它们。您的ELB将位于公共子网中,并将通信中继到这些私有子网中的实例。还将为ELB分配一个DNS名称alias to a custom DNS name of your own。
从上面的文档中,您还可以使用CLI进行附加和分离:
附加经典负载均衡器
使用以下attach-load-balancers命令附加 指定的Auto Scaling组负载均衡器:
aws autoscaling attach-load-balancers --auto-scaling-group-name my-asg --load-balancer-names my-lb
附加到目标组
使用以下attach-load-balancer-target-groups命令进行附加 指定的目标组到Auto Scaling组:
aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-name my-asg --target-group-arns my-targetgroup-arn
分离经典负载均衡器
使用以下detach-load-balancers命令分离负载 如果您不再需要,可以使用Auto Scaling组中的平衡器:
aws autoscaling detach-load-balancers --auto-scaling-group-name my-asg --load-balancer-names my-lb
分离目标组
使用以下detach-load-balancer-target-groups命令进行分离 如果您不再需要Auto Scaling组中的目标组:
aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-name my-asg --target-group-arns my-targetgroup-arn