[ 
https://issues.apache.org/jira/browse/AMBARI-13364?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14982971#comment-14982971
 ] 

Alejandro Fernandez commented on AMBARI-13364:
----------------------------------------------

[~tctruong], I think this is a good start and you've clearly outlined the 
problems/hardcoded values in common-services that are currently being done for 
HDP stack and hdp-select.
I agree we need the ability to do things like

* Determine which version of the stack first supported RU.
* Determine versions in the stack that provided different functionality, e.g., 
for Knox, HDP 2.3 and 2.3.2 have slightly different behavior, as well as Storm 
in HDP 2.2 and 2.3, even though both support RU.
Due to this change, we may need something slightly more flexible that config 
values, but rather keep the logic in common-services general, and then delegate 
to each stack for specific functionality for that component.
* Definitely abstract distro_select. The method get_stack_to_component isn't 
ideal, since the cluster knows already which stack it is on and if a customer 
adds a new stack they shouldn't have to keep modifying common-services. 
Instead, the scripts in common-services should simply have a function like 
"get_distro_component_name(self)" that behaves like an abstract method, and is 
then overriden in a subclass of that service inside the stack.
* Abstract the location where tarballs are copied to, in copy_tarball.py. The 
source and destination values should be provided by the stack.

I'd like to work with you and Jayush to submit a proposal or proof of concept 
on how to do this, perhaps by meeting over a weekend (we can Skype with Jayush).
The good news is that we can do this gradually, with one service at a time, 
perhaps ZK since it shared by all stacks and fairly easy.

Thanks,
Alejandro

>  Parameterize stack information used by common services
> -------------------------------------------------------
>
>                 Key: AMBARI-13364
>                 URL: https://issues.apache.org/jira/browse/AMBARI-13364
>             Project: Ambari
>          Issue Type: New Feature
>          Components: ambari-server
>            Reporter: Tuong Truong
>            Assignee: Juanjo Marron
>         Attachments: AMBARI-13364 Parameterize stack information used by 
> common services.pdf, AMBARI-13364.patch
>
>
> This feature will add a basic framework to remove hardcoded stack information 
> out of the common services and use parameter to get access to stack 
> information.  Currently, the common services hardcoded much information 
> specific to Hortonworks' HDP stack including name (HDP), specific versions 
> (2.0, 2.1, 2.2), and install location.   This feature will propose a way of 
> configuration these information and parameterize them into the services for 
> reference as require. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to