我已经设置了启用“私有访问”的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
启用公共访问权限后:
kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 172.20.0.1 <none> 443/TCP 57m
答案 0 :(得分:2)
我必须为我的VPC启用enableDnsHostnames
和enableDnsSupport
。
启用集群的私有访问后,EKS会创建一个私有托管区域并与同一VPC关联。它由AWS本身管理,您无法在AWS账户中查看它。因此,此私有托管区域要正常工作,您的VPC必须将enableDnsHostnames
和enableDnsSupport
设置为true
。
注意:请稍等片刻,以反映更改(大约5分钟)。