Hey guys,
We need to deploy akka to a particularly tricky environment. What I would like to do is provide our customers with two installers, a driver installer (that contains the bulk of our software, including an akka job-ordering component), and a worker installer (includes an akka listen-and-generate-results component). Ahead of time we don't know much about the network we're deploying to, which means that when we give them the deliverable we don't have any IP addresses to use as seed nodes.
This means I would really like something along the lines of:
val cluster = Cluster(context.system, password = privateProps.get("password"), workgroupName = localProps.get("workgroupName"))
With the workgroupName providing a auto discovery (any actor created with the same workgroup name would be on that cluster), and a password providing some amount of authentication. I could then prompt the user for the password and workgroup names at installation time, saving them as appropriate.
It seems that AKKA does not support autodiscovery, but whats annoying to me is that I cant find any dialog at all on it outside of
an errant remark on a pull request, does anybody else want this feature? Has it been discussed somewhere?
I was thinking about using JGroups as an initial strategy to collect the seed node and worker node IP's for akka's configuration, then starting akka. Does this sound sane?
I should mention that we're also fumbling with JPPF in an attempt to get the same thing to happen. Progress is slow on that front, and I'd really like to be able to show off a nifty piece of scala that does almost the same thing with 10x less code, but I need some way of discovering workers & drivers without knowing their IP addresses.
thanks for any help!
-Geoff