繁体   English   中英

AWS EKS 入口 - 无地址

[英]AWS EKS Ingress - No Address

我有一个使用 AWS EKS 的 kubernetes 应用程序。 带有以下详细信息:

集群:+ Kubernetes 版本:1.15 + 平台版本:eks.1

节点组:+ 实例类型:t3.medium + 2(最小)- 2(最大)- 2(所需)配置

[吊舱] + 2 个活动吊舱

[服务] + 配置类型:ClusterIP + metadata.name:k8s-eks-api-service

[rbac-role.yaml] https://pastebin.com/Ksapy7vK

[alb-ingress-controller.yaml] https://pastebin.com/95CwMtg0

[ingress.yaml] https://pastebin.com/S3gbEzez

When I tried to pull the ingress details. Below are the values (NO ADDRESS)
Host: *
ADDRESS: 

我的目标是知道为什么地址没有价值。 我希望我的应用程序中的其他服务可以使用私有或公共地址。

为了让您的 kubernetes 集群能够获取地址,您需要能够从集群内部管理 route53,对于此任务,我建议使用 externalDns。

在更广泛的意义上,ExternalDNS 允许您通过 DNS 提供者不可知的方式通过 Kubernetes 资源动态控制 DNS 记录。

来源:外部DNS

要在 AWS EKS 中使用 Ingress,您需要部署 LoadBalancerController 的 pod。 这个 pod 跟踪入口的创建,一旦创建了入口,它就会创建一个匹配的 AWS LoadBalancer,它实际上处理将传入流量直接路由到相关的 pod。

此外,请确保在入口中包含以下注释:

 kubernetes.io/ingress.class: alb
 alb.ingress.kubernetes.io/scheme: internet-facing
 alb.ingress.kubernetes.io/target-type: ip

查看更多详细信息: https://runkiss.blogspot.com/2021/03/using-ingress-in-aws-eks.html

这也发生在我身上,在所有设置之后,我无法看到入口地址。 调试此问题的最佳方法是检查入口 controller 的日志。 您可以通过以下方式做到这一点:

  1. 使用以下命令获取 Ingress controller po 名称:kubectl get po -n kube-system
  2. 使用以下命令检查 po 的日志:kubectl logs <po_name> -n kube-system

这将为您指出为什么您没有看到该地址的确切问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM