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

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

Hi Michael, thank you for reviewing my patch. yes, I have tried to retain the 
concept of components in this patch. I think existing configuration mechanism 
(specifying just head node and components list) will be handy if user wants to 
deploy a "test" single or multinode cluster without dealing with much of 
specific configurations. 

On your question regarding two-level roles, our thinking is its better not to 
expose the internal implementation details (i.e class and sub-class). Plus, not 
every module need to support roles (for utility classes like bigtop-utils 
etc...). Also, I have included explicit "deploy" class for each module and this 
class will be reponsible for dealing with dependencies between services (during 
installation) when roles are specified.

Also, I will change the class name for bigtop-utils module.

> 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
>    Affects Versions: 0.8.0
>            Reporter: vishnu gajendran
>            Assignee: vishnu gajendran
>              Labels: features
>             Fix For: 1.0.0
>
>         Attachments: BIGTOP-1746.patch
>
>
> 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