我想在 AWS EKS 中创建一个 RESTful Web API 集群,并能够通过单个 IP 访问它们(允许 Kubernetes 对每个 API 的请求进行负载平衡)。我已按照此 link 解释的程序进行操作并设置了一个示例 nginx
部署,如下图所示:
问题是,当我通过 172.31.22.183
访问示例 nginx
部署时,它工作得很好,但是当我尝试使用集群 IP 10.100 时.145.181
它不会以似乎无法访问的方式产生任何响应。
那么该集群 IP 的用途是什么?我如何使用它来实现我的需要?
最佳答案
What's the purpose of that cluster ip then and how can I use it to achieve what I need?
ClusterIP
是集群内部使用的本地IP,您可以使用它来访问应用程序。
虽然我认为您获得的端点 IP 可能是外部的,您可以访问外部的应用程序。
AWS EKS and be able to access them through a single IP (allowing kubernetes to load balance requests to each)
最佳实践是使用入口、API 网关或服务网格。
入口是单点,您的所有请求都将传入其中,它将在集群内部进行负载平衡和转发流量。
将入口视为进入集群内部的负载均衡器单点。
入口:https://kubernetes.io/docs/concepts/services-networking/ingress/
AWS 示例:https://aws.amazon.com/blogs/opensource/network-load-balancer-nginx-ingress-controller-eks/
关于kubernetes - 通过 ClusterIP 访问 pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72725459/