当同一子网用于另一项服务时,AWS VPC 对等不工作
Posted
技术标签:
【中文标题】当同一子网用于另一项服务时,AWS VPC 对等不工作【英文标题】:AWS VPC peering not working when same subnet is used for another service 【发布时间】:2020-08-20 05:57:15 【问题描述】:这是发生了什么:
在 VPC-A 中创建了 ECS fargate 集群 A 和服务/任务(示例)。 在另一个 VPC B 中创建了 MSK Kafka 集群(示例)。 创建的对等连接和路由表也更新了。到目前为止一切正常,但是,
现在,我在 VPC-A 中创建了另一个 ECS fargate 集群 B 和服务/任务。 但应用程序似乎无法连接到 MSK kafka 集群,这与集群 A 的工作方式相同(仍然有效!)集群服务 B 与集群服务 A 具有相同的安全组。
应用程序的日志是这样写的:
2020-05-05 15:40:11[2020-05-05 13:40:11,737] [1] [ERROR] Unable connect to "example-1.dummy-kafka-stage.ssss.c2.kafka.eu-central-1.amazonaws.com:9092": [Errno 110] Connect call failed ('172.31.30.5', 9092)
[2020-05-05 13:40:11,737] [1] [ERROR] Unable connect to "example-1.dummy-kafka-stage.ssss.c2.kafka.eu-central-1.amazonaws.com:9092": [Errno 110] Connect call failed ('172.31.30.5', 9092)
VPC 对等已激活,下图是其在 VPC 对等选项卡中的路由表:
这是 VPC 子网路由表,也已配置(下图中的一个此类子网示例):
你知道会发生什么吗?
【问题讨论】:
MSK 安全组的入站白名单是如何完成的?是通过将 VPC A 安全 grp 或整个 VPC/子网范围列入白名单来完成的吗? 【参考方案1】:您是否将两个 VPC 路由表都添加了?
两个子网都需要了解如何相互路由
【讨论】:
抱歉,没听懂?我想是的,好像那不一样,那么它为什么已经为一项服务工作了呢? 所以要确认 Fargate 集群,同样的子网?或者至少子网使用相同的路由表? 我还放了对等连接路由表的截图。 Fargate 集群服务使用相同的子网,当然还有相同的 VPC。 可能值得启用 docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html 以查看它是否离开实例,如果是,拒绝在哪一侧以上是关于当同一子网用于另一项服务时,AWS VPC 对等不工作的主要内容,如果未能解决你的问题,请参考以下文章