amazon-web-services - 无法从 ecs-agent 访问 AWS ECS VPC 终端节点
问题描述
使用 ECS 和 ECR 的 AWS 端点部署 ECS 集群时。ecs-agent 无法访问https://ecs.ap-southeast-1.amazonaws.com。对于这个环境,我没有互联网网关、nat 网关或任何代理设置。
为了调试问题,我正在登录 ECS 主机。对https://vpce ****/ecs.ap-southeast-1.amazonaws.com的 curl 命令 有效,因为它直接解析为 ECS 端点的网络接口。
但是,通用网址https://ecs.ap-southeast-1.amazonaws.com无法解析任何内容。我已验证为此端点启用了私有 DNS。
以下是我对上述情况的调查结果。
路由正确且端点设置正确,因为我能够使用 vpce 端点进行解析
在端点上启用了私有 DNS 选项并在 vpc 上启用了 dns 解析)但我没有在我的路由 53 中看到为 amazonaws.com 创建的托管区域。这是由 AWS 创建并显示给用户帐户或在内部管理的吗?
请让我知道有关如何调试这种情况的一些指示。
解决方案
问题出在我的 VPC 使用自定义 DHCP 选项集。这意味着我的 VPC 的主 DNS 指向未配置转发规则来解析私有端点的本地 DNS 服务器。这种情况的解决方案是在路由 53 中创建一个入站解析器,并在您的本地 DNS 服务器上设置一个条件转发规则,以将这些请求转发到入站解析器,然后该解析器应该能够获取私有 ENI。
推荐阅读
- javascript - 如何使用打字稿修改对象数组(原始形式为新形式)
- ios - 在 SwiftUI 中创建项目后,我们可以将根视图控制器更改为 Storybord 吗?
- haskell - 派生 MonadThrow、MonadCatch、MonadBaseControl、MonadUnliftIO 等是否安全?
- c# - 多列分组和求和
- java - 无法读取名称为 [xx] 在命名空间 ['default'] 中的 configmap
- graphql - 为什么我的查询没有返回枚举数组
- apache-spark - 找不到缺课的罐子
- sql - SR0004 - 没有用作 IN 谓词测试表达式的索引的列可能会降低性能
- sql - 将硬编码和选定的值插入表中
- windows - WebRTC 示例在本地运行时在 Chrome 和 Firefox 上失败