[
https://issues.apache.org/jira/browse/AMBARI-6935?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14112897#comment-14112897
]
Jaimin D Jetly commented on AMBARI-6935:
----------------------------------------
[~screeley]
The reason for creating this task was to get the service dependency information
from the stack rather than maintaining the hard-coded map in the ambari-web
code that is mentioned in the above comment. Infact the recently committed
linked ticket AMBARI-7041 removes that hard-coded map from the web code
In the HDP stack, HDFS is the required service for other services.
Currently GLUSTERFS stack is extended from HDP stack definition
[code|https://git-wip-us.apache.org/repos/asf/ambari/repo?p=ambari.git;a=blob;f=ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/metainfo.xml;h=b7d8766dd9bf3707154ede4b68ce490acbffc4ea;hb=HEAD].
As a result of GLUSTERFS 2.x stacks being the child stack of HDP-2.0.6, API
http://localhost:8080/api/v1/stacks/HDP/versions/2.1.GlusterFS/services?fields=StackServices
returns services (YARN, Flume etc) with required_services attribute having
value HDFS.
*POSSIBLE SOLUTION:*
Redefine in GLUSTERFS stack each service's metainfo.xml that GLUSTERFS's parent
stack (HDP-2.0.6 or HDP-1.3.2) supports and override required_services
attribute in each service's metainfo.xml
> Stacks API should expose service level dependencies
> ---------------------------------------------------
>
> Key: AMBARI-6935
> URL: https://issues.apache.org/jira/browse/AMBARI-6935
> Project: Ambari
> Issue Type: Bug
> Reporter: Andrew Onischuk
> Assignee: Andrew Onischuk
> Priority: Blocker
> Fix For: 1.7.0
>
>
> Currently stack API exposes component level dependencies which does not roll
> up to service level dependency is required for restricting user to install a
> service that cannot work in the absence of a dependent service.
> Currently there is a hard-coded map in the ambari-web code for service
> dependency which restricts this validation functionality to only known
> services of HDP stack.
> service dependency map:
>
>
>
> HDP-1: {
> HDFS: ['MAPREDUCE', ''HBASE', SQOOP'],
> MAPREDUCE: ['PIG', 'OOZIE', 'HIVE'],
> ZOOKEEPER: ['HBASE', 'HIVE', 'WEBHCAT'],
> HIVE: ['HCATALOG','WEBHCAT']
> },
> HDP-2: {
> ZOOKEEPER: ['HDFS', 'HBASE', 'HIVE', 'WEBHCAT', 'STORM']
> HDFS: ['YARN', 'HBASE', 'FLUME', 'SQOOP'],
> YARN: [ 'MAPREDUCE2', 'PIG', 'OOZIE', 'HIVE', 'TEZ'],
> TEZ: ['YARN', 'HIVE'],
> OOZIE: ['FALCON'],
> HIVE: ['HCATALOG','WEBHCAT']
> }
>
--
This message was sent by Atlassian JIRA
(v6.2#6252)