You can do this by having a worker on each server register a function
named after the hostname or IP of the primary interface, and then
submit a job with that name.
You can use the admin interface to listen all the queues, so this
provides you with a poor-man catalog.
But I would recommend that you look at other systems to configure your
services. Puppet comes to mind.
Bye.
You might want to check out how others have done similar things:
http://datacharmer.blogspot.com/2009/06/remote-replication-setup-with-gearman.html
http://blogs.tokutek.com/tokuview/using_gearman_for_nightly_build_and_test/
You con have each host register a unique function, and then possibly
another worker that keeps a list of those workers that are registered
so you can query to see what machines are available. Or you can grab
the list from the job server, a few different ways to go about it.
-Eric