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

vishnu gajendran commented on BIGTOP-1746:
------------------------------------------

Thanks Richard for your comment. The model you are proposing looks more 
extensible and generic. Currently, dependencies between modules (like hbase 
depends on hdfs) is explicitly handled in bigtop cluster.pp file (or) as 
Michael wiesner commented on this issue above, we can handle these dependencies 
inside respective puppet modules. But, what you are proposing is that user 
should be able to explicitly define the dependencies (topology) between 
components. I feel this model will be very generic and difficult to handle. 
Also, currently, bigtop uses puppet in standalone mode. So, we cannot handle 
dependencies across nodes which is a limitation in scenarios like HA (for 
example, you need to ensure that all journal nodes are up and running before 
starting the namenode service). Please let me know your comments.

> Introduce the concept of roles in bigtop cluster deployment
> -----------------------------------------------------------
>
>                 Key: BIGTOP-1746
>                 URL: https://issues.apache.org/jira/browse/BIGTOP-1746
>             Project: Bigtop
>          Issue Type: New Feature
>          Components: deployment
>            Reporter: vishnu gajendran
>              Labels: features
>             Fix For: 0.9.0
>
>
> Currently, during cluster deployment, puppet categorizes nodes as head_node, 
> worker_nodes, gateway_nodes, standy_node based on user specified info. This 
> functionality gives user control over picking up a particular node as 
> head_node, standy_node, gateway_node and rest others as worker_nodes. But, I 
> woulld like to have more fine-grained control on which deamons should run on 
> which node. For example, I do not want to run namenode, datanode on the same 
> node. This functionality can be introduced with the concept of roles. Each 
> node can be assigned a set of role. For example, Node A can be assigned 
> ["namenode", "resourcemanager"] roles. Node B can be assigned ["datanode", 
> "nodemanager"] and Node C can be assigned ["nodemanager", "hadoop-client"]. 
> Now, each node will only run the specified daemons. Prerequisite for this 
> kind of deployment is that each node should be given the necessary 
> configurations that it needs to know. For example, each datanode should know 
> which is the namenode etc... This functionality will allow users to customize 
> the cluster deployment according to their needs. 



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

Reply via email to