ray-project/ray

Ray should have a proxy to reduce the port number.

asurdo opened this issue · 2 comments

Description

Ray need about 10 port (Configuring Ray — Ray 2.22.0) for basic run, and every worker need a port, that is too much.

Use case

Is's because I am using it on a very big and complicated environment, there is a lot of other service.

  • yarn, k8s and cvm.
  • both docker host and bridge network mode.
    So the port is a kind of resource sometimes, you can't use it arbitrarily.

And I am trying to hide the difference of the platforms, I also need to isolate different business, so I need to make a lot of ray cluster, witch means I need more and more port...

In my opinion, not every agent need using TCP, unix socket is enough.

Hi @asurdo,

We can definitely eliminate some TCP ports by using unix domain socket but for each worker process, it still needs a port since a process from a different node needs to talk to it via grpc.

Hi @asurdo,

We can definitely eliminate some TCP ports by using unix domain socket but for each worker process, it still needs a port since a process from a different node needs to talk to it via grpc.

Hi @jjyao

Adding a proxy to manage all TCP network traffic should solve this problem, but the proxy will consume additional CPU.

However, from another perspective (maybe just in my own usage scenario), compared with traditional RPC frameworks, the tasks running on ray are generally heavier, and the performance consumption of the proxy may not be that important.

So I think adding a proxy is a good solution.