if we publish the ZK bindings for the hbase instance, then the active master for a full hbase client can be determined there.
The Web UI and JMX ports are the two entries that do matter, so we need to pick them up and bind them to the public entries. Strategies 1. Have each component instance publish their own binding data, and let the caller decide which one is live 2. (somehow) have slider decide which one is live. I'm just prototyping a full yarn-registry, which lets us list components as separate nodes underneath; here's a dump with ephemeral nodes marked with a star after the data size ZK tree for /yarnRegistry /users [9] /stevel [9] /org-apache-slider [9] /testregistryam [530] /components [9] /appmaster [530]* /live [0]* /system [9] For the AM I'm registering the static service definition (stays live even on AM failure), and the same data ephemerally as a component. The /live znode is an empty node that just says "live"; when that goes away the service is not live, even if still registered. ...thinking some more, we may want to optionally allow /live to be a reference to a named component instance. Whatever is live can point to its binding -- CONFIDENTIALITY NOTICE NOTICE: This message is intended for the use of the individual or entity to which it is addressed and may contain information that is confidential, privileged and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any printing, copying, dissemination, distribution, disclosure or forwarding of this communication is strictly prohibited. If you have received this communication in error, please contact the sender immediately and delete it from your system. Thank You.