Propagating state change to multiple peers
gustavo.niemeyer at canonical.com
Wed Jul 13 20:17:09 UTC 2011
> relation-changed hook. This works fine when its a 1-to-1 relation. But
> when I begin adding more new swift storage nodes, the rings need to be
> balanced for each new member and new configuration propagated to *all* nodes
> relating to swift-proxy, not only the new node. It seems ensemble needs to
> have some notion of global state/relation changes that fire corresponding
> hooks on the central server and all its peers.
I'm not entirely sure I see the need you have, so please correct me if
I'm on the wrong track.
I believe you're looking for a concept we conveniently named as "peer
relations". If you declare a relation of type "peer" (rather than
requires/provides), all of the service units deployed will
automatically join a relation which is made with the ring itself, so
"relation-list" will get you the precise number of peers participating
in the relation, and you get relation-get on any of them.
Does that solve the issue you're finding?
-- I never filed a patent.
More information about the Ensemble