Description
Currently, service discovery requires 4 pieces of information to interact with Ambari to generate topologies from descriptors:
- discovery address
- discovery cluster
- discovery username
- discovery password alias
At present, there are 2 well-known aliases, which serve to provide defaults if the corresponding details aren't specified in a descriptor:
- ambari.discovery.user - The value of this alias is the username for authenticating with the discovery source
- ambari.discovery.password - The value of this alias is the password corresponding to the discovery user
This issue suggests that Knox could support gateway-site properties to specify defaults for the remaining 2 discovery properties:
- ambari.discovery.address --> gateway.discovery.default.address
- ambari.discovery.cluster --> gateway.discovery.default.cluster
This would make it easier for users who are defining multiple descriptors for the same cluster. The discovery details could be omitted from the descriptors, such that the defaults defined as gateway-site properties would be used.
If these new properties are defined, and the corresponding properties are not specified in a descriptor, the values of these gateway-site properties will be used as defaults.
If either of these gateway-site properties is NOT defined, and is also unspecified in a descriptor, then discovery shall not be attempted.
The Admin UI must also be addressed as part of this, since there is currently some validation to ensure that a sufficient amount of discovery information is specified in a new descriptor (if any is specified at all).