我的一般问题在标题中。我觉得我误解了 Pod 连接到 VPC 的方式。我假设这会使 Pod 在 VPC 上可路由,但似乎并非如此。
流量是否仍需要流经 eks 节点?
这是我当前的 vpc 配置:
中心 VPC -- 对等 -- 生产 VPC
我的 vpn 服务器位于 Hub VPC 中,而 eks 在 Prod VPC 中运行。
我可以通过 vpn ssh 进入 EKS 节点,因此 vpc 之间和 vpn 上的路由正常。
我无法从 vpn 服务器 ping 通 pod。
我可以从 eks 节点 ping 该 pod。
我可以从 Prod VPC 中启动的新实例 ping 该 pod。
我已经通过控制台启用了 aws vpc-cni 插件。
我有启用外部 SNAT通过
kubectl set env daemonset -n kube-system aws-node AWS_VPC_K8S_CNI_EXTERNALSNAT=true
我没有重新启动任何节点,因为文档似乎确实需要这样做。
我实际上认为它默认使用 vpc-cni 插件。
我正在运行 k8s1.21
和 vpc-cni1.9.3
答案1
这实际上完全符合我的预期,我可以通过 vpn 连接直接访问 pod。结果发现这是一条安全组规则阻止了对我试图用于连接 pod 的端口的访问。