[wildfly-dev] Inter Host Controller group communication mesh

Ken Wills ken at zaptillion.net
Mon Apr 11 16:43:27 EDT 2016


On Mon, Apr 11, 2016 at 11:57 AM, Brian Stansberry <
brian.stansberry at redhat.com> wrote:

> Just an FYI: I spent a couple days and worked up a POC[1] of creating a
> JGroups-based reliable group communication mesh over the sockets our
> Host Controllers use for intra-domain management communications.
>
>
Nice! I've been thinking about the mechanics of this a bit recently, but I
hadn't gotten to any sort of transport details, this looks interesting.


> Currently those sockets are used to form a tree of connections; master
> HC to slave HCs and then HCs to their servers. Slave HCs don't talk to
> each other. That kind of topology works fine for our current use cases,
> but not for other use cases, where a full communication mesh is more
> appropriate.
>
> 2 use cases led me to explore this:
>
> 1) A longstanding request to have automatic failover of the master HC to
> a backup. There are different ways to do this, but group communication
> based leader election is a possible solution. My preference, really.
>

I'd come to the same conclusion of it being an election. A deterministic
election algorithm, perhaps allowing the configuration to supply some sort
of weighted value to influence the election on each node, perhaps analogous
to how the master browser smb election works (version + weight + etc).


>
> 2) https://issues.jboss.org/browse/WFLY-1066, which has led to various
> design alternatives, one of which is a distributed cache of topology
> information, available via each HC. See [2] for some of that discussion.
>
> I don't know if this kind of communication is a good idea, or if it's
> the right solution to either of these use cases. Lots of things need
> careful thought!! But I figured it was worth some time to experiment.
> And it worked in at least a basic POC way, hence this FYI.
>

Not knowing a lot about jgroups .. for very large domains is the mesh NxN
in size? For thousands of nodes would this become a problem, or would
a mechanism to segment into local groups perhaps, with only certain nodes
participating in the mesh and being eligible for election?

Ken
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/wildfly-dev/attachments/20160411/bd8a53b4/attachment.html 


More information about the wildfly-dev mailing list