I have configured linkerd with 2 clusters in GKE (west and east cluster) for multicluster purpose. I used this demo app provided by google https://github.com/GoogleCloudPlatform/microservices-demo
First I did it with Istio and everything worked out fine, but with linkerd its different. As expected the exported service from east to west cluster with get the cluster name appended to the service. eg in west cluster ,you will get currencyservice-east.
The problem I think I am having is that the frontend in the west cluster keeps sending request to currencyservice instead of currencyservice-east.
I didn't have this problem in Istio because Istio used the same service name across clusters. I am not a GO programmer, but I have googled my life to find out where the service name was defined in the frontend source code to change it but I have not succeeded.
another alternative will be for linkerd to maintain the service name while exporting it.
please guys help me.
CodePudding user response:
You can use a TrafficSplit on the source cluster to direct calls to currentservice
to currentservice-east
.