|
From: Fred O. <fko...@gm...> - 2010-07-30 21:48:37
|
Bryan, Services (started by per-instance configuration) can register with the lookup service with their physical ID, and include the logical ID of their group (quorum), if any, in their service entries, allowing them to be discovered by logical ID. I can imagine a new stateless service whose sole function is binding logical IDs to unbound physical services, taking into account hardware configuration, rack/network awareness, etc. Now that we have groups of physical services mapped to logical services, there is still the need for leader election. I'm willing to accept using zookeeper for that limited purpose, though I think I'd prefer some embedded paxos implementation if I had one on hand. Leaders can identify themselves with service entries in their registrations, allowing service leaders to be easily discovered. (Timing and failure scenarios would have to be considered carefully. If the idea of registering as a service leader doesn't work, then clients can always ask a service who its leader is.) It is important to me that clients need not consult zookeeper directly, limiting the number of processes being coordinated to the smallest possible number, decreasing complexity. Once service leaders have been established, each leader can communicate directly with its group members to complete initialization, identify and share the most recent updates if needed, etc. I think that using zookeeper as an information conduit when service to service communication still drives up the complexity unnecessarily. Fred On Mon, Jul 26, 2010 at 6:21 PM, Bryan Thompson <br...@sy...> wrote: > Fred, > > Can you provide some examples for the HA enabled per-instance configuration? I would like the instance based configuration to be compatible with the rules-based approach. In addition, the services will need to publish certain metadata about the logical service instances into zookeeper for the HA quorums. I've attach a current copy of the HA/zookeeper integration document which specifies the zookeeper paths that are used by the quorum. Everything is organized under the zpath of the logical service. Take a look and then let's see if we can bring this down to some concrete points for both mechanisms to operate. |