我设法让功能区使用kubeflix和spring-cloud-kubernetes
动态发现k8s
群集中的实例
这是我手动使用Ribbon
在我的微服务之间进行通信的时候。
Zuul
会自动将Ribbon
用于其配置中定义的路由。
是否有人设法为Ribbon
启用Zuul
发现?我想我需要为每条路线覆盖LoadBalancer
的实例。任何想法如何做到这一点?
答案 0 :(得分:1)
实际上这很容易。您只需要在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