我设法使功能区使用kubeflix和spring-cloud-kubernetes动态发现k8s
集群中的实例
这是当我手动使用Ribbon
在我的微服务之间进行通信时。Zuul
自动将Ribbon
用于其配置中定义的路由。
是否有人设法为Ribbon
启用Zuul
发现?我想我需要为每个路由覆盖LoadBalancer
的实例。任何想法如何做到这一点?
最佳答案
这实际上很容易。您只需要在NIWSServerListClassName
配置中指定k8s
,Ribbon
命名空间和k8s端口名称:
service-name:
ribbon:
NIWSServerListClassName: io.fabric8.kubeflix.ribbon.KubernetesServerList
KubernetesNamespace: uat
PortName: tcp80 #make sure you this matches the port name in the k8s service (kubectl describe svc service-name)
然后,
Zuul
路由可以引用该服务:zuul:
routes:
rm-data-store:
path: /foo/**
retryable: true
service-id: service-name