Amazon AWS NAT 网关不工作,EC2 未在 ECS 集群中注册

Amazon AWS NAT Gatway not working, EC2 doesn't register in ECS Cluster

我确信我的 EC2 实例和集群配置正确,并且由于网络配置的原因它们不会注册。

我正在从一个自动缩放组构建 EC2 实例,如果我 create/associate 一个弹性 IP 给他们,他们 注册,但是我无法让他们进入 NAT,因为它们会自动缩放,所以我需要它们使用 NAT 将自己注册到集群中。

我在网络上有 1 个 VPC 10.0.0.0/0

我在 3 个区域中有 3 个子网,范围为 10.0.0.0/2410.0.1.0/2410.0.2.0/24

我想使用 Amazon 的 NAT Gateway,不要与 NAT Instance 混淆,后者是执行此功能的 AMI。

我一直在关注这个指南@ http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html

(目前)我有一条路由 table(所有 3 个子网都分配给了它)如下...

10.0.0.0/16 | local
0.0.0.0/0   | nat-******

NAT 网关位于 10.0.2.19

安全组如下

Inbound
ALL TRAFFIC | ALL PROTOCOLS | ALL PORT RANGE |SOURCE: 0.0.0.0/0
Outbound
ALL TRAFFIC | ALL PROTOCOLS | ALL PORT RANGE |DESTINATION: 0.0.0.0/0

网络 ACL 是

Inbound
Rule # | Type | Protocol | Port Range | Source | Allow / Deny
100 | ALL Traffic | ALL | ALL | 0.0.0.0/0 | ALLOW
* | ALL Traffic | ALL | ALL | 0.0.0.0/0 | DENY
Outbound
Rule # | Type | Protocol | Port Range | Destination | Allow / Deny
100 | ALL Traffic | ALL | ALL | 0.0.0.0/0 | ALLOW
* | ALL Traffic | ALL | ALL | 0.0.0.0/0 | DENY

这表明一切都是允许的?

我已将一个 IP 附加到一个实例,然后通过 VPC 连接到另一个实例并尝试 ping NAT 网关,但不成功,但我不明白为什么?这里的一切都设置的很简单,不太明白?

非常感谢帮助:)

您将所有 3 个子网设为私有。 NAT 网关必须在 public 子网中,其路由 table 应该有一个条目 0.0.0.0/0 应该路由到 internet gateway.

如果 0.0.0.0 路由到自身,您希望 NAT 网关如何路由互联网流量?

你如何解决这个问题?在 public 子网中创建 NAT 网关,或确保 NAT 网关所在子网 (10.0.2.0/24) 的路由 table 具有正确的互联网流量路由。

您需要有 2 个路由 table。一个用于 NAT 网关所在的子网。另一个路由 table 用于将互联网流量发送到 NAT 网关的私有子网。