启用私人访问后,无法访问VPC中的EKS API服务器终结点

Nit*_*esh 6 amazon-web-services amazon-vpc kubernetes amazon-eks eks

我已经设置了启用了“私有访问”的EKS cluser,并在同一VPC中设置了一个实例以与EKS通信。问题是,如果我启用了“公共访问”,则可以访问api端点。但是,如果我禁用了公共访问权限并启用了私有访问权限,则无法访问api端点。

启用私有访问后:

kubectl get svc
Unable to connect to the server: dial tcp: lookup randomstring.region.eks.amazonaws.com on 127.0.0.53:53: no such host
Run Code Online (Sandbox Code Playgroud)

启用公共访问后:

kubectl get svc
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   172.20.0.1   <none>        443/TCP   57m
Run Code Online (Sandbox Code Playgroud)

Nit*_*esh 8

我必须为我的 VPC启用enableDnsHostnamesenableDnsSupport

在启用集群的私有访问时,EKS 会创建一个私有托管区域并与同一 VPC 关联。它由 AWS 自己管理,您无法在您的 aws 账户中查看它。因此,要使此私有托管区域正常工作,您的 VPC 必须具有enableDnsHostnamesenableDnsSupport设置为true.

注意:稍等片刻,即可反映更改(约 5 分钟)。