The service registry model is designed to support dynamically deployed Slider applications, and statically deployed versions of the same application -provided the latter also registers itself, its public network services, and any configurations and files that it wishes clients to be able to retrieve.
The architecture and implementation of this registry is not defined here -instead the view of it seen by clients.
A ‘service registry’ exists in the YARN cluster into which services can be registered.
There is no restriction on the number of services that can be registered in the registry, the type of service that may register, or even on how many registered services an application running in the YARN cluster may register.
Services are registered by their type, owner and name. As an example, Alice's slider-managed HBase cluster ingress
would have a type org.apache.hbase
, owner alice
and name ingress
.
In the case of Slider-managed services, there is a separate slider instance registration which publishes information about slider itself. In the example above, this would be (org.apache.slider
,alice
,ingress
).
Services can publish information about themselves, with common entries being:
Services may also publish.
Services can be listed and examined.
Service-published configuration key-value pairs can be retrieved by clients
Service-published documents (and packages of such documents) can be retrieved by clients.
There's no requirement for service instances to support any standard protocols;
Some protocols are defined which they MAY implement. For example, the protocol to enumerate and retrieve configuration documents is designed to be implemented by any service that wishes to publish such content.
In a secure cluster, the registry data may be restricted, along with any service protocols offered by the registered services.