如何使用 CLI 为 Elastic Beanstalk 配置 VPC

How to configure VPC for Elastic Beanstalk using CLI

我可以使用此命令和 eb-cli:

创建具有 VPCElastic Beanstalk 环境
eb create --vpc

这要求我配置几个选项:

Enter an RDS DB username (default is "ebroot"): ...
Enter an RDS DB master password: ...
Retype password to confirm: ...
Enter the VPC ID: ...
Do you want to associate a public IP address? (Y/n): ...
Enter a comma-separated list of Amazon EC2 subnets: ...
Enter a comma-separated list of Amazon ELB subnets: ...
Do you want the load balancer to be public? (Select no for internal) (Y/n): ...
Enter a comma-separated list of Amazon VPC security groups: ...
Creating application version archive ...

我已经创建了一个带有子网的 VPC,并在这个线程 and 之后向它添加了一个 RDS 实例(谢谢@Marcin!)。但是,有几件事我很困惑:

  1. 什么是 “您要关联 public IP 地址吗?”
  2. 我记得为我的 VPC 创建了子网,但它要我为 “EC2 子网”“ELB 子网”添加什么?我应该从我的 VPC 添加那些吗?
  3. 对于“您希望负载平衡器是public吗?”,这到底是什么意思?我假设 public 意味着它在互联网上是 public,而 private 意味着我只能在 VPC 中访问它?
  4. 对于“输入以逗号分隔的 Amazon VPC 安全组列表”,我需要在此处添加任何内容吗?

我知道这些都是开放式的,但希望这对某人有所帮助!

基于聊天讨论和评论。

  1. 什么是“您要关联 public IP 地址?”

对于单个实例 EB env,EB 应该位于具有 public IP 的 public 子网中。

  1. 我记得为我的 VPC 创建了子网,但它要我为“EC2 子网”和“ELB 子网”添加什么?我应该从我的 VPC 添加那些吗?

对于负载均衡的 EB env,您的负载均衡器应该在 public 个子网中,而实例可以是私有的。

  1. 对于“您希望负载平衡器是 public 吗?”,这到底是什么意思?我假设 public 意味着它在互联网上是 public,而 private 意味着我只能在 VPC 中访问它?

负载均衡器必须在 public 个子网中。否则,您将无法从互联网连接到您的网站。

  1. 对于“输入以逗号分隔的 Amazon VPC 安全组列表”,我需要在此处添加任何内容吗?

您可以使用默认值,但以后可能需要根据需要进行调整。