-
Notifications
You must be signed in to change notification settings - Fork 124
Description
In the original design, the catalog server used address:port:dnsname as the key to uniquely identify each service reporting. If an update comes in with the same key as an existing record, it was updated, otherwise a new record was created. To minimize spoofing, the address is obtained from recv, the dnsname comes from a reverse lookup, and port is trusted from the content.
However, as we venture into more complex network environments (containers, vms, VPNs) there is more potential for overlap of network addresses and port numbers. And some records (like the factory and floability) don't have port numbers at all.
To address this, we would like each service to generate a unique identifier, and have the catalog use address:uuid:dnsname when it is provided. The good news is that the catalog already implements this feature here but we also need to update all of our various clients to generate and use a uuid:
- [] TaskVine Manager
- [] TaskVine Factory
- [] Work Queue Manager
- [] Work Queue Factory
- [] Floability
- [] Makeflow
- [] Chirp Server