Looks great.
These can be broken out as separate child JIRAs.

Thanks!

--larry

On Wed, Aug 30, 2017 at 6:31 PM, Philip Zampino <[email protected]> wrote:

> I have in mind the following sub-tasks associated with KNOX-1006
> <https://issues.apache.org/jira/browse/KNOX-1006> (Service Discovey and
> Topology Generation),
>
> for which I’m going to create JIRA issues.
>
>
>
> I believe many of them can be worked on fairly independently, but there are
> some obvious dependencies.
>
>
>
> *Support externalization of provider config from topology descriptors (no
> dependency)*
>
>    - Define external config content format (the same as today, but a
> separate document with a <gateway/> root)
>
>    - Define external config reference format in topology.xml
>
>    - Modify code to resolve external config references, and process them
> the same as the current in-line <gateway/> content
>
>    - Includes determining how externalized provider config changes are
> propagated to deployed topologies.
>
>
>
> *Knox config remote discovery (no dependency)*
>
>    - Define ZooKeeper structure for remote config (simple desc,
> externalized provider) discovery
>
>    - Determine the best way to interact with ZooKeeper (REST, or some other
> client binding)
>
>    - Simple descriptor discovery
>
>    - External provider config discovery
>
>
>
> *Implement the heart of the service discovery and topology generation
> framework (no initial dependency)*
>
>    - Define simple descriptor format (YAML, JSON, properties, etc...)
>
>    - Local simple descriptor discovery (re-use existing
> FileAlterationMonitor?)
>
>    - Ambari service discovery (REST API interactions and model
> construction)
>
>      - Configuration
>
>        - How to plug-in discovery implementations (service loader?)
>
>        - How to configure authentication (credentials/trust) with the
> service registries
>
>    - Topology assembly from simple descriptor and discovery details
>
>    - Topology deployment (something more than copy to the conf/topologies
> directory?)
>
>
>
> *ZooKeeper Monitor for Knox config changes (affecting existing deployed
> topologies)*
>
> *   - *Related to* Knox config remote discovery*
>
>    - Simple descriptor changes
>
>      - Trigger re-generation/deployment of updated topology descriptor
>
>      - local (re-use existing FileAlterationMonitor?)
>
>      - remote
>
>    - Externalized provider config changes
>
>      - Trigger update of deployed topologies (runtime) that reference the
> modified provider config
>
>      - local (re-use existing FileAlterationMonitor?)
>
>      - remote
>
> *Monitor for Ambari cluster topology changes (i.e., service URL changes)*
>
>    - Includes Knox dynamic response to such changes
>
>
>
> *ZooKeeper service discovery  (depends on discovery framework)*
>
>
>
> *Monitor for ZooKeeper cluster topology changes (i.e., service URL
> changes)*
>
>    - Includes Knox dynamic response to such changes
>

Reply via email to