在kubernetes中使用现有的微服务架构



我有一个使用Netflix Eureka和zuul服务的现有微服务架构,

我已经部署了一个在发现服务器上成功注册的pod,但是当我击中API时,它会超时,我能想到的是,在发现服务器上注册容器IP时,因为它是不可访问的。

是否有办法映射正确的地址或重定向调用到适当的URL寻找一个简单的方法,因为这需要在多个服务上完成

我认为你应该用Kubernetes的方式重新考虑你的设计!你的Eureka(服务发现),Zuul服务器(API网关/负载均衡器)实际上是Kubernetes平台中不需要的额外服务。

对于Service发现和负载平衡,可以使用Services在Kubernetes。来自Kubernetes文档:

一种抽象的方式,将运行在一组pod上的应用程序公开为网络服务。使用Kubernetes,你不需要修改你的应用程序使用不熟悉的服务发现机制。Kubernetes为pod提供了自己的IP地址和一组pod的单一DNS名称,并可以在它们之间进行负载平衡。

对于API网关,您可以考虑Ingress

在Kubernetes。Kubernetes的入口控制器有不同的实现。我正在使用大使API网关实现。 https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/