NAME
razor-discover - Razor Discovery Agent
SYNOPSIS
razor-discover -d
DESCRIPTION
All razor agents automatically discover closest server after "rediscovery_wait" time has elapsed. "razor-discover" forces immediate rediscovery.
CLOSEST SERVER DISCOVERY PROTOCOL
Razor agents and servers belong to a Razor zone. The default open-source zone is "razor.vipul.net". Servers in a zone are named in order - a.zone, b.zone, c.zone and so on. To discover the closest server, an agent sequentially walks the list of servers from a.zone till it finds a server with a CNAME of "list.terminator". This indicates the server before "list.terminator" is the last server in the zone.
Agents then send out TCP pings to ECHO port of the available servers. The list of servers is sorted on the round trip time of ping packages. The closest server is chosen for all subsequent communications. The list of addresses is written to a file. At some point, when the closest server is not responding, the next closest server is used in its stead.
The next closest server remains the chosen server till rediscovery. This provides seamless recovery from server/network outages, semantically broken servers, and transition from old to new protocols.
All servers in a zone participate in a synchronization protocol to keep their individual copies of the entire Catalogue up-to-date.
WHEN TO RUN
razor-discover is a diagnostic and development tool. As an end-user, you should never have to run it.
AUTHOR
Vipul Ved Prakash, <[email protected]>
SEE ALSO
LICENSE
This is free software, distributed under the ARTISTIC license.