Replies: 2 comments 7 replies
-
Proposal: System ID as Machine ID + Zenoh CommunicationThis proposal tries to make both the machine ID and coordinator address arguments of the System ID as Machine IDMost operating systems provide a way to get a unique system identifier. By using this identifier as machine ID, we avoid the need to pass it as command-line argument. For example, on many Linux distributions the system ID can be queried through Zenoh CommunicationIn our current architecture of dora, daemons need to register with the dora coordinator at startup. This requires that the daemons can find the coordinator and communicate with it. In our current implementation, we pass the coordinator address as command-line argument to the daemon, so that the daemon can open a normal TCP connection. To avoid this command-line argument, we could use a communication middleware that supports auto-discovery in local networks. This way, the daemons would be able to find the coordinator without knowing its address. The Zenoh middleware implements a scouting protocol based on UDP multicast messages for local networks. So by using zenoh for the initial register message, we will be able to avoid the coordinator address argument for the Zenoh also even supports auto-discovery of zenoh routers within the local network, which then manage the connection to remote networks. So even for dataflows split across multiple networks, we would be able to omit the coordinator address argument for dora daemon as long as there is some zenoh router within each network. |
Beta Was this translation helpful? Give feedback.
-
Proposal: connect daemon to other daemon from IP address By being able to connect daemon to daemon with IP address without abstraction removes the need of a coordinator and is super simple to understand. If IP address is not reachable from any of the daemon, it's pretty easy to debug. Privacy concern can be dealt with environment variables so that they don't need to appear within git. |
Beta Was this translation helpful? Give feedback.
-
In order to multi-machine dataflow, each machine needs to run an instance of the dora daemon. Each daemon instance currently requires the coordinator IP:Port and a unique machine ID as command line arguments. This leads to multiple usability issues:
[Xavier Edit]
Beta Was this translation helpful? Give feedback.
All reactions