【问题标题】:Setting up a non-default VPC with a public and a private subnet and without using the "Create VPC" wizard在不使用“创建 VPC”向导的情况下设置具有公共子网和私有子网的非默认 VPC
【发布时间】:2016-12-26 00:35:56
【问题描述】:

我在 AWS 管理控制台的 VPC 服务主页上使用“创建 VPC”而不是“创建 VPC 向导”命令按钮设置了一个非默认 VPC - 这是因为我最终将使用 CloudFormation 自动执行该过程。我为公共子网设置了一个 Internet 网关,并为私有子网设置了一个 NAT 网关。然后,我为每个子网创建了一个 Amazon Linux 实例。

我能够在公共子网上 ping www.columbia.edu,但我在私有子网上的实例中执行“sudo yum update”命令 - 该命令的执行返回了一条消息,指出找不到 repo。

出了什么问题?

【问题讨论】:

    标签: amazon-web-services amazon-vpc routetable private-subnet


    【解决方案1】:
    1. 互联网网关不是问题。它已附加到正确的 VPC,其状态为 { State: attach, Attachment state: available } 默认情况下,Internet 网关将指向创建 Internet 网关时 VPC 的公共子网。

    公共子网的自定义路由表又名 { Main: No } 在“路由”选项卡的最后一行包含默认路由 0.0.0.0/0 igw-**** 其中 igw-**** 是Internet 网关的 ID。在“子网关联”选项卡中,公共子网与自定义路由表显式关联。

    此时,通过从公共子网上的实例 ping www.columbia.edu 进行验证应该会成功。

    1. NAT 网关需要指向正确的 VPC,您需要为其分配一个 EIP(弹性 IP 地址),并且您需要指定其位置为 Public 子网时创建。如果您错误配置了 NAT 网关,您可能别无选择,只能删除错误配置的 NAT 网关,创建一个具有正确配置的新 NAT 网关并重新启动您的公共和实例,以便您的实例可以调用正确的 NAT 网关。

    主路由表 { Main: yes } 在“路由”选项卡的最后一行包含默认路由 0.0.0.0/0 nat-**** 其中 nat-**** 是 NAT 的 ID网关。再来一次:NAT 网关的私有 IP 地址必须是 Public 子网的私有地址之一。

    此时,在私有子网上的实例上运行“sudo yum update” - 该命令应该会成功。

    1. 如果您要添加更多公共子网,请确保将每个新添加的公共子网与 Internet 网关相关联 - 我认为 Internet 网关会自动执行此操作,但验证并没有什么坏处。

    2. 如果您要添加更多私有子网,请确保为每个新添加的私有子网分配一个全新的 NAT 网关。请记住,如果 AZ(可用区)出现故障,则为 AZ 提供服务的 NAT 网关也会出现故障。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-27
      • 1970-01-01
      • 2016-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-02
      相关资源
      最近更新 更多