OrleansContrib / Orleans.Clustering.Kubernetes

Orleans Membership provider for Kubernetes
MIT License
188 stars 47 forks source link

Complete example of deployment please? #38

Closed lovettchris closed 4 years ago

lovettchris commented 4 years ago

My silo is up and running on Kubernetes:

> kubectl get services
NAME                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                          AGE
contact-trace-silo   NodePort    10.98.120.212   <none>        2777:30403/TCP,30000:31986/TCP   26m

But my client deployed to another pod can't seem to connect to it:

...
Found 1 knownGateways from Gateway listProvider [gwy.tcp://127.0.0.1:30000/324611186]
...
Connection attempt to endpoint S127.0.0.1:30000:0 failed with exception Orleans.Networking.Shared.SocketConnectionException: Unable to connect to 127.0.0.1:30000. Error: ConnectionRefused

The thing that confuses me is that it should not be using localhost, it should be using the pod ip address 10.98.120.212, since each pod has it's own address. And the ports get mapped differently also? Shouldn't the KubeMembershipTable be taking care of this?

The following contains a simple repro: tutorial.zip

lovettchris commented 4 years ago

Oh, never mind I was missing the "KubeGatewayHost" concept.